private UnitOfMeasureDocument GetUOMDocument(Sage.Integration.Northwind.Application.Entities.Product.DataSets.Product.ProductsRow productRow, Token lastToken, NorthwindConfig config)
{
#region Declarations
UnitOfMeasureDocument uomDoc;
string identity;
#endregion
identity = productRow.ProductID.ToString();
// create Account Doc
uomDoc = new UnitOfMeasureDocument();
uomDoc.Id = identity;
if (lastToken.InitRequest)
uomDoc.LogState = LogState.Created;
else if (productRow.IsCreateIDNull() || productRow.IsModifyIDNull()
|| productRow.IsCreateUserNull() || productRow.IsModifyUserNull())
uomDoc.LogState = LogState.Created;
else if ((productRow.CreateID > lastToken.SequenceNumber)
&& (productRow.CreateUser != config.CrmUser))
uomDoc.LogState = LogState.Created;
else if ((productRow.CreateID == lastToken.SequenceNumber)
&& (productRow.CreateUser != config.CrmUser)
&& (identity.CompareTo(lastToken.Id.Id) > 0))
uomDoc.LogState = LogState.Created;
else if ((productRow.ModifyID >= lastToken.SequenceNumber) && (productRow.ModifyUser != config.CrmUser))
uomDoc.LogState = LogState.Updated;
uomDoc.active.Value = Constants.DefaultValues.Active;
uomDoc.name.Value = productRow.IsQuantityPerUnitNull() ? null : productRow.QuantityPerUnit.ToString(); ;
uomDoc.units.Value = 1;
uomDoc.defaultvalue.Value = true;
uomDoc.familyid.Value = identity;
return uomDoc;
}