Ejemplo n.º 1
0
            public override void SubstituteKeyFieldUpdating(PXCache sender, PXFieldUpdatingEventArgs e)
            {
                BAccountR baccount = null;

                if (e.NewValue != null)
                {
                    baccount = PXSelect <BAccountR,
                                         Where <BAccountR.acctCD, Equal <Required <BAccountR.acctCD> > > > .
                               SelectWindowed(sender.Graph, 0, 1, e.NewValue);
                }
                if (baccount != null)
                {
                    e.NewValue = baccount.BAccountID;
                    e.Cancel   = true;
                }
                else if (e.NewValue != null)
                {
                    throw new PXSetPropertyException(PXMessages.LocalizeFormat(ErrorMessages.ValueDoesntExist, _FieldName, e.NewValue));
                }
            }
Ejemplo n.º 2
0
        public virtual IEnumerable Open1099PaymentsReport(PXAdapter adapter)
        {
            if (Year_Header.Current != null)
            {
                Organization org = OrganizationMaint.FindOrganizationByID(this, Year_Header.Current.OrganizationID);

                BAccountR orgBAccount =
                    SelectFrom <BAccountR>
                    .Where <BAccountR.bAccountID.IsEqual <Organization.bAccountID.FromCurrent> >
                    .View.SelectSingleBound(this, new object[] { org });

                Dictionary <string, string> parameters = new Dictionary <string, string>
                {
                    ["OrgBAccountID"] = orgBAccount?.AcctCD,
                    ["FinYear"]       = Year_Header.Current.FinYear
                };
                throw new PXReportRequiredException(parameters, "AP656500", "Open 1099 Payments");
            }
            return(adapter.Get());
        }
Ejemplo n.º 3
0
        public static SelectedBAccountR FromBAccountR(BAccountR bAccountR)
        {
            SelectedBAccountR result = new SelectedBAccountR();

            result.BAccountID        = bAccountR.BAccountID;
            result.AcctCD            = bAccountR.AcctCD;
            result.AcctName          = bAccountR.AcctName;
            result.Type              = bAccountR.Type;
            result.AcctReferenceNbr  = bAccountR.AcctReferenceNbr;
            result.ParentBAccountID  = bAccountR.ParentBAccountID;
            result.Status            = bAccountR.Status;
            result.DefAddressID      = bAccountR.DefAddressID;
            result.DefContactID      = bAccountR.DefContactID;
            result.BaseContactID     = bAccountR.BaseContactID;
            result.DefLocationID     = bAccountR.DefLocationID;
            result.TaxZoneID         = bAccountR.TaxZoneID;
            result.TaxRegistrationID = bAccountR.TaxRegistrationID;
            result.WorkgroupID       = bAccountR.WorkgroupID;
            result.OwnerID           = bAccountR.OwnerID;
            return(result);
        }
Ejemplo n.º 4
0
        public override object Evaluate(PXCache cache, object item, Dictionary <Type, object> pars)
        {
            string         classID = (string)pars[typeof(ClassID)];
            CRContactClass cls     = PXSelect <CRContactClass, Where <CRContactClass.classID, Equal <Required <CRContactClass.classID> > > > .Select(cache.Graph, classID);

            if (cls == null)
            {
                return(null);
            }

            var rec = (PXResult <Users, Contact, BAccountR>)
                      PXSelectJoin <Users,
                                    InnerJoin <Contact, On <Contact.userID, Equal <Users.pKID> >,
                                               InnerJoin <BAccountR, On <Contact.contactID, Equal <BAccountR.defContactID>, And <Contact.bAccountID, Equal <BAccountR.parentBAccountID> > > > >,
                                    Where <Users.pKID, Equal <Current <AccessInfo.userID> > > > .SelectSingleBound(cache.Graph, null, null);

            BAccountR bAccount = rec;

            return(bAccount != null && !string.IsNullOrEmpty(bAccount.AcctCD) && cls.OwnerIsCreatedUser == true
                                ? bAccount.AcctCD
                                : null);
        }
Ejemplo n.º 5
0
        public override void FieldSelecting(PXCache sender, PXFieldSelectingEventArgs e)
        {
            object value = e.ReturnValue;

            e.ReturnValue = null;
            base.FieldSelecting(sender, e);

            BAccountR baccount = PXSelect <BAccountR, Where <BAccountR.bAccountID, Equal <Required <BAccountR.bAccountID> > > >
                                 .SelectWindowed(sender.Graph, 0, 1, value);

            if (baccount != null)
            {
                e.ReturnValue = baccount.AcctCD;
            }
            else
            {
                if (e.Row != null)
                {
                    e.ReturnValue = null;
                }
            }
        }
Ejemplo n.º 6
0
        public IEnumerable GetRecords()
        {
            PXCache sourceCache   = _Graph.Caches[SourceEntityID.DeclaringType];
            var     currentEntity = PXView.Currents?.FirstOrDefault() ?? sourceCache.Current;

            if (currentEntity == null)
            {
                yield break;
            }

            int?currentID = (int?)sourceCache.GetValue(currentEntity, SourceEntityID.Name);

            foreach (PXResult rec in View.SelectMulti(currentID))
            {
                CRGrams          gram             = rec.GetItem <CRGrams>();
                CRDuplicateGrams duplicateGram    = rec.GetItem <CRDuplicateGrams>();
                BAccountR        duplicateAccount = rec.GetItem <BAccountR>();
                CRLead           duplicateLead    = rec.GetItem <CRLead>();

                var dupRecord = new CRDuplicateRecord()
                {
                    ContactID          = gram.EntityID,
                    ValidationType     = gram.ValidationType,
                    DuplicateContactID = duplicateGram.EntityID,
                    Score = gram.Score,
                    DuplicateContactType  = ContactTypesAttribute.BAccountProperty,
                    DuplicateBAccountID   = duplicateAccount?.BAccountID,
                    DuplicateRefContactID = duplicateLead?.RefContactID,
                };

                CRDuplicateRecord cached = (CRDuplicateRecord)_Graph.Caches[typeof(CRDuplicateRecord)].Locate(dupRecord);

                if (cached?.Selected == true || duplicateAccount.DefContactID == currentID)
                {
                    yield return(duplicateAccount);
                }
            }
        }
Ejemplo n.º 7
0
        public virtual IEnumerable cATranListRecords()
        {
            CAEnqFilter filter = Filter.Current;

            List <PXResult <CATranExt, BAccountR> > result = new List <PXResult <CATranExt, BAccountR> >();

            if (filter != null && filter.ShowSummary == true)
            {
                long?id        = 0;
                int  startRow  = 0;
                int  totalRows = 0;
                foreach (CADailySummary daily in CATranListSummarized.View.Select(null, null, new object[PXView.SortColumns.Length], PXView.SortColumns, PXView.Descendings, PXView.Filters, ref startRow, 0, ref totalRows))
                {
                    CATranExt tran = new CATranExt();
                    id++;
                    tran.TranID        = id;
                    tran.CashAccountID = daily.CashAccountID;
                    tran.TranDate      = daily.TranDate;

                    tran.CuryDebitAmt  = daily.AmtReleasedClearedDr + daily.AmtReleasedUnclearedDr;
                    tran.CuryCreditAmt = daily.AmtReleasedClearedCr + daily.AmtReleasedUnclearedCr;

                    if (Filter.Current.IncludeUnreleased == true)
                    {
                        tran.CuryDebitAmt  += daily.AmtUnreleasedClearedDr + daily.AmtUnreleasedUnclearedDr;
                        tran.CuryCreditAmt += daily.AmtUnreleasedClearedCr + daily.AmtUnreleasedUnclearedCr;
                    }
                    tran.DayDesc = TM.EPCalendarFilter.CalendarTypeAttribute.GetDayName(((DateTime)tran.TranDate).DayOfWeek);
                    result.Add(new PXResult <CATranExt, BAccountR>(tran, new BAccountR()));
                }
            }
            else
            {
                Dictionary <long, CAMessage> listMessages = PXLongOperation.GetCustomInfo(this.UID) as Dictionary <long, CAMessage>;
                PXSelectBase <CATranExt>     cmd          = new PXSelectJoin <CATranExt, LeftJoin <ARPayment, On <ARPayment.docType, Equal <CATranExt.origTranType>,
                                                                                                                  And <ARPayment.refNbr, Equal <CATran.origRefNbr> > >,
                                                                                                   LeftJoin <BAccountR, On <BAccountR.bAccountID, Equal <CATranExt.referenceID> > > >,
                                                                              Where2 <Where <Current <CAEnqFilter.includeUnreleased>, Equal <boolTrue>,
                                                                                             Or <CATran.released, Equal <boolTrue> > >,
                                                                                      And <CATranExt.cashAccountID, Equal <Current <CAEnqFilter.accountID> >,
                                                                                           And <CATranExt.tranDate, Between <Current <CAEnqFilter.startDate>, Current <CAEnqFilter.endDate> > > > >,
                                                                              OrderBy <Asc <CATranExt.tranDate, Asc <CATranExt.extRefNbr, Asc <CATranExt.tranID> > > > >(this);
                int startRow  = 0;
                int totalRows = 0;
                foreach (PXResult <CATranExt, ARPayment, BAccountR> iRes in cmd.View.Select(null, null, new object[PXView.SortColumns.Length], PXView.SortColumns, PXView.Descendings, PXView.Filters, ref startRow, 0, ref totalRows))
                {
                    CATranExt tran     = iRes;
                    ARPayment payment  = iRes;
                    BAccountR baccount = iRes;
                    tran.DayDesc     = TM.EPCalendarFilter.CalendarTypeAttribute.GetDayName(((DateTime)tran.TranDate).DayOfWeek);
                    tran.DepositNbr  = payment.DepositNbr;
                    tran.DepositType = payment.DepositType;
                    if (listMessages != null)
                    {
                        CAMessage message;
                        if (listMessages.TryGetValue(tran.TranID.Value, out message))
                        {
                            if (message != null && message.Key == tran.TranID)
                            {
                                CATranListRecords.Cache.RaiseExceptionHandling <CATran.origRefNbr>(tran, tran.OrigRefNbr, new PXSetPropertyException(message.Message, message.ErrorLevel));
                            }
                        }
                    }
                    result.Add(new PXResult <CATranExt, BAccountR>(tran, baccount));
                }
            }

            decimal curBalance = 0;

            if (filter != null && filter.BegBal != null)
            {
                curBalance = (decimal)filter.BegBal;
            }
            PXView.ReverseOrder = false;
            foreach (PXResult <CATranExt, BAccountR> it in PXView.Sort(result))
            {
                CATran tran = it;
                tran.BegBal = curBalance;
                tran.EndBal = tran.BegBal + tran.CuryDebitAmt - tran.CuryCreditAmt;
                curBalance  = (decimal)tran.EndBal;
                CATranListRecords.Cache.Hold(tran);
            }
            return(result);
        }
Ejemplo n.º 8
0
        public static bool CheckBAType(PXGraph graph, int?bAcctID)
        {
            BAccountR baccountR = SelectFrom <BAccountR> .Where <BAccountR.bAccountID.IsEqual <P.AsInt> > .View.ReadOnly.SelectSingleBound(graph, (object[])null, (object)bAcctID);

            return(baccountR.Type.Equals("VE") || baccountR.Type.Equals("VC"));
        }