public static string CreateDocumentPlaceHolder(string partNumber, string assetType, string contentType,
string docType, string description)
{
string refId = null;
var asset = new AssetIdentificationBean();
DocumentDAO dao = DataManager.getDocumentDAO();
try
{
dao.StartTransaction();
//Lookup Part Number for document
string rootPartNumber = partNumber.Split('#')[0];
Document document = GetDocument(rootPartNumber,
(int)Enum.Parse(typeof(dbDocument.DocumentType), docType));
if (document == null)
{
document = new Document();
document.uuid = Guid.NewGuid().ToString();
document.name = rootPartNumber;
document.Item = ""; //Content
document.DocumentContent = Encoding.UTF8.GetBytes(document.Item);
document.ContentType = contentType ?? "";
document.Description = (description.Length > 255?description.Substring(0, 254):description) ?? "";
document.DocumentType =
(dbDocument.DocumentType)Enum.Parse(typeof(dbDocument.DocumentType), docType);
SaveDocument(document);
}
//Add reference id to asset lookup
asset = new AssetIdentificationBean();
asset.uuid = Guid.Parse(document.uuid);
asset.assetType = assetType;
asset.assetNumber = partNumber;
asset.DataState = BASEBean.eDataState.DS_ADD;
asset.save();
refId = asset.uuid.ToString();
dao.CommitTransaction();
LogManager.Trace("A placeholder document for \"{0}\" has been created.", partNumber);
}
catch (Exception e)
{
dao.RollbackTransaction();
LogManager.Error(e, "An Error occurred creating a document for \"{0}\"", partNumber);
}
finally
{
dao.EndTransaction();
}
return(refId);
}