protected bool ContactWasUpdated(PXCache cache, Contact contact) { var original = cache.GetOriginal(contact) as Contact; if (original == null || contact.FirstName != original.FirstName || contact.LastName != original.LastName || contact.FullName != original.FullName || contact.Salutation != original.Salutation || contact.EMail != original.EMail || contact.WebSite != original.WebSite || contact.Phone1Type != original.Phone1Type || contact.Phone1 != original.Phone1 || contact.Phone2Type != original.Phone2Type || contact.Phone2 != original.Phone2 || contact.Phone3Type != original.Phone3Type || contact.Phone3 != original.Phone3 || contact.FaxType != original.FaxType || contact.Fax != original.Fax || contact.ConsentAgreement != original.ConsentAgreement || contact.ConsentDate != original.ConsentDate || contact.ConsentExpirationDate != original.ConsentExpirationDate) { return(true); } return(false); }
public virtual void RowPersisting(PXCache sender, PXRowPersistingEventArgs e) { if (BranchSourceType != null && (sender.Graph.IsImport || sender.Graph.IsContractBasedAPI || sender.Graph.UnattendedMode) && (e.Operation & PXDBOperation.Command).IsIn(PXDBOperation.Insert, PXDBOperation.Update)) { ValidatePeriodAndSources(sender, sender.GetOriginal(e.Row), e.Row, !sender.Graph.UnattendedMode || sender.Graph.IsContractBasedAPI); } }
private void DeleteAutomaticallyGeneratedLienWaiversIfRequired(PXCache cache, APRegister document) { var originalDocument = cache.GetOriginal(document) as APRegister; if (originalDocument?.Hold == false && document.Hold == true) { var paymentEntryExtension = Base.GetExtension <PX.Objects.CN.Compliance.AP.GraphExtensions.ApPaymentEntryExt>(); var lienWaiverTypeId = Base.Select <ComplianceAttributeType>() .Single(type => type.Type == ComplianceDocumentType.LienWaiver).ComplianceAttributeTypeID; var lienWaivers = paymentEntryExtension.ComplianceDocuments.SelectMain() .Where(cd => cd.DocumentType == lienWaiverTypeId && cd.IsCreatedAutomatically == true); paymentEntryExtension.ComplianceDocuments.Cache.DeleteAll(lienWaivers); } }
private bool IsAnyFieldUpdated(PXCache cache, object newRow) { var original = cache.GetOriginal(newRow); foreach (var fieldType in cache.BqlFields) { var fieldName = cache.GetField(fieldType); var oldValue = cache.GetValue(original, fieldName)?.ToString(); var newValue = cache.GetValue(newRow, fieldName)?.ToString(); if (fieldName != _FieldName && oldValue != newValue) { return(true); } } return(false); }
protected bool AddressWasUpdated(PXCache cache, Address address) { var original = cache.GetOriginal(address) as Address; if (original == null || address.AddressLine1 != original.AddressLine1 || address.AddressLine2 != original.AddressLine2 || address.City != original.City || address.State != original.State || address.PostalCode != original.PostalCode || address.CountryID != original.CountryID) { return(true); } return(false); }
private void StopPaymentIfOutstandingLienWaiversExist(PXCache cache, APRegister document) { var originalDocument = cache.GetOriginal(document) as APRegister; if (originalDocument?.Status != document.Status && document.Hold == false && PXContext.GetScreenID() == Constants.ScreenIds.ChecksAndPayments) { if (originalDocument?.Status == APDocStatus.Hold) { lienWaiverProcessingValidationService.ValidateLienWaiversOnManualStatusChange(document, LienWaiverSetup.Current?.ShouldStopPayments); } else { lienWaiverProcessingValidationService.ValidateLienWaivers(document, LienWaiverSetup.Current?.ShouldStopPayments); } } }