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); }