public static void Release(List <EPTimeCardRow> timeCards) { TimeCardMaint timeCardMaint = PXGraph.CreateInstance <TimeCardMaint>(); for (int i = 0; i < timeCards.Count; i++) { timeCardMaint.Clear(); timeCardMaint.Document.Current = timeCardMaint.Document.Search <EPTimeCard.timeCardCD>(timeCards[i].TimeCardCD); if (timeCardMaint.Document.Current == null) { PXProcessing <EPTimeCardRow> .SetError(i, Messages.TimecardCannotBeReleased_NoRights); } else { try { timeCardMaint.release.Press(); PXProcessing <EPTimeCardRow> .SetInfo(i, ActionsMessages.RecordProcessed); } catch (Exception e) { PXProcessing <EPTimeCardRow> .SetError(i, e is PXOuterException?e.Message + "\r\n" + String.Join("\r\n", ((PXOuterException)e).InnerMessages) : e.Message); } } } }
public override void Persist() { var groups = Activity.Cache.Updated.Cast <EPActivityApprove>() .Where(a => a.IsReject == true && a.TimeCardCD != null) .GroupBy(a => a.TimeCardCD) .ToList(); using (var ts = new PXTransactionScope()) { if (groups.Count > 0) { TimeCardMaint maint = PXGraph.CreateInstance <TimeCardMaint>(); foreach (var group in groups) { maint.Clear(); maint.Document.Current = maint.Document.Search <EPTimeCard.timeCardCD>(group.Key); maint.Actions["Reject"].Press(); maint.Persist(); } } base.Persist(); ts.Complete(); } }
public virtual IEnumerable transactions() { PXSelectBase <PMTran> select = new PXSelectJoin <PMTran, LeftJoin <Account, On <Account.accountID, Equal <PMTran.offsetAccountID> >, LeftJoin <PMRegister, On <PMTran.tranType, Equal <PMRegister.module>, And <PMTran.refNbr, Equal <PMRegister.refNbr> > >, LeftJoin <ARTran, On <ARTran.tranType, Equal <PMTran.aRTranType>, And <ARTran.refNbr, Equal <PMTran.aRRefNbr>, And <ARTran.lineNbr, Equal <PMTran.refLineNbr> > > > > > >, Where <PMTran.projectID, Equal <Current <TranFilter.projectID> > > >(this); TranFilter filter = this.Filter.Current; if (filter != null) { if (filter.AccountGroupID != null) { select.WhereAnd <Where <PMTran.accountGroupID, Equal <Current <TranFilter.accountGroupID> >, Or <Account.accountGroupID, Equal <Current <TranFilter.accountGroupID> > > > >(); } if (filter.ProjectTaskID != null) { select.WhereAnd <Where <PMTran.taskID, Equal <Current <TranFilter.projectTaskID> > > >(); } if (filter.CostCode != null) { select.WhereAnd <Where <PMTran.costCodeID, Equal <Current <TranFilter.costCode> > > >(); } if (filter.InventoryID != null) { select.WhereAnd <Where <PMTran.inventoryID, Equal <Current <TranFilter.inventoryID> > > >(); } if (filter.ResourceID != null) { select.WhereAnd <Where <PMTran.resourceID, Equal <Current <TranFilter.resourceID> > > >(); } if (filter.OnlyAllocation == true) { select.WhereAnd <Where <PMRegister.isAllocation, Equal <True> > >(); } if (filter.DateFrom != null && filter.DateTo != null) { if (filter.DateFrom == filter.DateTo) { select.WhereAnd <Where <PMTran.date, Equal <Current <TranFilter.dateFrom> > > >(); } else { select.WhereAnd <Where <PMTran.date, Between <Current <TranFilter.dateFrom>, Current <TranFilter.dateTo> > > >(); } } else if (filter.DateFrom != null) { select.WhereAnd <Where <PMTran.date, GreaterEqual <Current <TranFilter.dateFrom> > > >(); } else if (filter.DateTo != null) { select.WhereAnd <Where <PMTran.date, LessEqual <Current <TranFilter.dateTo> > > >(); } } return(TimeCardMaint.QSelect(this, select.View.BqlSelect)); }
public virtual IEnumerable editDetail(PXAdapter adapter) { if (Records.Current != null && Records.Current.RefNoteID != null) { bool navigate = true; EntityHelper helper = new EntityHelper(this); Note note = helper.SelectNote(Records.Current.RefNoteID); if (note != null && note.EntityType == typeof(EPExpenseClaim).FullName) { EPExpenseClaim claim = PXSelect <EPExpenseClaim, Where <EPExpenseClaim.noteID, Equal <Required <EPExpenseClaim.noteID> > > > .Select(this, note.NoteID); if (claim != null) { ExpenseClaimEntry graph = PXGraph.CreateInstance <ExpenseClaimEntry>(); EPExpenseClaim target = graph.ExpenseClaim.Search <EPExpenseClaim.refNbr>(claim.RefNbr); if (target == null) { navigate = false; } } else { using (new PXReadBranchRestrictedScope()) { claim = PXSelect <EPExpenseClaim, Where <EPExpenseClaim.noteID, Equal <Required <EPExpenseClaim.noteID> > > > .Select(this, note.NoteID); if (claim != null) { throw new PXException(Messages.YouAreNotAlowedToViewTheDetails); } } } } if (note != null && note.EntityType == typeof(EPTimeCard).FullName) { EPTimeCard timecard = PXSelect <EPTimeCard, Where <EPTimeCard.noteID, Equal <Required <EPTimeCard.noteID> > > > .Select(this, note.NoteID); if (timecard != null) { TimeCardMaint graph = PXGraph.CreateInstance <TimeCardMaint>(); EPTimeCard target = graph.Document.Search <EPTimeCard.timeCardCD>(timecard.TimeCardCD); if (target == null) { navigate = false; } } } if (navigate) { helper.NavigateToRow(Records.Current.RefNoteID.Value, PXRedirectHelper.WindowMode.InlineWindow); } } return(adapter.Get()); }
protected override void OnLoad(EventArgs e) { base.OnLoad(e); TimeCardMaint graph = this.ds.DataGraph as TimeCardMaint; if (graph != null) { graph.CheckAllowedUser(); } }
public static void Release(List <EPTimeCardRow> timeCards) { TimeCardMaint timeCardMaint = PXGraph.CreateInstance <TimeCardMaint>(); foreach (EPTimeCardRow item in timeCards) { timeCardMaint.Clear(); timeCardMaint.Document.Current = timeCardMaint.Document.Search <EPTimeCard.timeCardCD>(item.TimeCardCD); timeCardMaint.release.Press(); } }
protected virtual void Create() { using (new PXPreserveScope()) { TimeCardMaint graph = (TimeCardMaint)CreateInstance(typeof(TimeCardMaint)); graph.Clear(PXClearOption.ClearAll); graph.Document.Insert(); if (Filter.Current.EmployeeID != null && Filter.Current.EmployeeID != graph.Document.Current.EmployeeID) { graph.Document.Current.EmployeeID = Filter.Current.EmployeeID; graph.Document.Update(graph.Document.Current); } PXRedirectHelper.TryRedirect(graph, PXRedirectHelper.WindowMode.InlineWindow); } }
public virtual IEnumerable ViewDetails(PXAdapter adapter) { var row = FilteredItems.Current; if (row != null) { TimeCardMaint graph = PXGraph.CreateInstance <TimeCardMaint>(); graph.Document.Current = graph.Document.Search <EPTimeCard.timeCardCD>(row.TimeCardCD); throw new PXRedirectRequiredException(graph, true, Messages.ViewDetails) { Mode = PXBaseRedirectException.WindowMode.NewWindow }; } return(adapter.Get()); }
protected void Delete() { EPTimeCard row = PXSelect <EPTimeCard, Where <EPTimeCard.timeCardCD, Equal <Current <TimecardWithTotals.timeCardCD> > > > .Select(this); if (row == null) { return; } using (new PXPreserveScope()) { TimeCardMaint graph = (TimeCardMaint)CreateInstance(typeof(TimeCardMaint)); graph.Clear(PXClearOption.ClearAll); graph.Document.Current = row; graph.Delete.Press(); } }
public virtual IEnumerable transactions() { TranFilter filter = this.Filter.Current; if (filter != null && ( filter.ProjectID != null || filter.AccountID != null || filter.AccountGroupID != null || filter.ARRefNbr != null || filter.TranID != null)) { var parameters = new List <object>(); PXSelectBase <PMTran> select = new PXSelectJoin <PMTran, LeftJoin <Account, On <Account.accountID, Equal <PMTran.offsetAccountID> >, LeftJoin <PMRegister, On <PMTran.tranType, Equal <PMRegister.module>, And <PMTran.refNbr, Equal <PMRegister.refNbr> > > > >, Where <True, Equal <True> > >(this); if (filter.ARRefNbr != null) { //nbrs of batches originated from invoice var refNbrs = PXSelectJoin <ARInvoice, InnerJoin <PMRegister, On <PMRegister.origNoteID, Equal <ARInvoice.noteID> > >, Where <ARRegister.docType, Equal <Current <TranFilter.aRDocType> >, And <ARRegister.refNbr, Equal <Current <TranFilter.aRRefNbr> > > > > .Select(this) .Select(r => ((PMRegister)(PXResult <ARInvoice, PMRegister>)r).RefNbr).ToArray(); if (refNbrs.Any()) { parameters.Add(refNbrs); select.WhereAnd <Where2 <Where <PMTran.aRTranType, Equal <Current <TranFilter.aRDocType> >, And <PMTran.aRRefNbr, Equal <Current <TranFilter.aRRefNbr> > > >, Or <Where <PMTran.refNbr, In <Required <PMTran.refNbr> > > > > >(); } else { select.WhereAnd <Where <PMTran.aRTranType, Equal <Current <TranFilter.aRDocType> >, And <PMTran.aRRefNbr, Equal <Current <TranFilter.aRRefNbr> > > > >(); } } if (filter.TranID != null) { select.WhereAnd <Where <PMTran.tranID, Equal <Current <TranFilter.tranID> > > >(); } if (filter.ProjectID != null) { select.WhereAnd <Where <PMTran.projectID, Equal <Current <TranFilter.projectID> > > >(); } if (filter.AccountGroupID != null) { select.WhereAnd <Where <PMTran.accountGroupID, Equal <Current <TranFilter.accountGroupID> >, Or <Account.accountGroupID, Equal <Current <TranFilter.accountGroupID> > > > >(); } if (filter.AccountID != null) { select.WhereAnd <Where <PMTran.accountID, Equal <Current <TranFilter.accountID> >, Or <Account.accountID, Equal <Current <TranFilter.accountID> > > > >(); } if (filter.ProjectTaskID != null) { select.WhereAnd <Where <PMTran.taskID, Equal <Current <TranFilter.projectTaskID> > > >(); } if (filter.CostCode != null) { select.WhereAnd <Where <PMTran.costCodeID, Equal <Current <TranFilter.costCode> > > >(); } if (filter.InventoryID != null) { select.WhereAnd <Where <PMTran.inventoryID, Equal <Current <TranFilter.inventoryID> > > >(); } if (filter.ResourceID != null) { select.WhereAnd <Where <PMTran.resourceID, Equal <Current <TranFilter.resourceID> > > >(); } if (filter.OnlyAllocation == true) { select.WhereAnd <Where <PMRegister.isAllocation, Equal <True> > >(); } if (filter.IncludeUnreleased.GetValueOrDefault() == false) { select.WhereAnd <Where <PMRegister.released, Equal <True> > >(); } if (filter.DateFrom != null && filter.DateTo != null) { if (filter.DateFrom == filter.DateTo) { select.WhereAnd <Where <PMTran.date, Equal <Current <TranFilter.dateFrom> > > >(); } else { select.WhereAnd <Where <PMTran.date, Between <Current <TranFilter.dateFrom>, Current <TranFilter.dateTo> > > >(); } } else if (filter.DateFrom != null) { select.WhereAnd <Where <PMTran.date, GreaterEqual <Current <TranFilter.dateFrom> > > >(); } else if (filter.DateTo != null) { select.WhereAnd <Where <PMTran.date, LessEqual <Current <TranFilter.dateTo> > > >(); } return(TimeCardMaint.QSelect(this, select.View.BqlSelect, parameters.ToArray())); } return(Enumerable.Empty <PMTran>()); }