Introducing Acumatica Cloud ERP: 2026R2
Technical discussions focused on Customizations for developers. See Low Code | No Code Forum for non-technical discussions
Recently active
@Dmitrii Naumov - I wasn’t sure where to report this to. 24.204.0004Using the built in customization interface I asked it to create an override of the SOInvoiceEntry.InvoiceOrder method and it produced this:public delegate void InvoiceOrderDelegate(InvoiceOrderDelegateArgs args);[PXOverride]public void InvoiceOrder(InvoiceOrderArgs args, InvoiceOrderDelegate baseMethod){ baseMethod(args);}But should have produced this:public delegate void InvoiceOrderDelegate(InvoiceOrderArgs args);[PXOverride]public void InvoiceOrder(InvoiceOrderArgs args, InvoiceOrderDelegate baseMethod){ baseMethod(args);}It inserted the word “Delegate” into the name of the data type of the delegate’s parameter declaration.
I created a custom processing screen. At the end of the processing, I want to create a results report. public static void DoIt(List<UploadFileRevision> lineList, RecordsToProcessFilter currentFilter, bool isMassProcess = false) {DO ALL MY PROCESSING HEREAt the very end: if (results.GetRowCount() > 0) { throw new PXReportRequiredException(results, "IC604010", PXBaseRedirectException.WindowMode.NewWindow); }}If I have the PXReportRequiredException, the processing screen does not show the processing popup. It also does not refresh the grid of items that are available to be processed (remove the items that were processed). The report opens in a new window and it looks great.If I comment out the report redirect, the screen works perfectly. Is there a way to create my results report and not break the standard processing screen? I don’t absolutely have to have the report, but it is a nice feature.I am wondering if I can
We have a custom field that we’ve added to a page and the client wants to make it required, but only require it based on the company they are in. So it would not be required if they are in Company A, Company B, or Company C but it would be required if they are in Company D. Is there an easy way to accomplish something like this?
I’m looking for the ability to create a bunch of DACs that all have the same fields without retyping the fields each time. So, for example I might have 3 different DACs that I want to bind to 3 different database tables. But the actual fields should be identical. Is there any easy way of doing this? My thought was to use DAC inheritance, where I’d have an abstract base class DAC A and then all my children DACs would automatically get the fields from DAC A added but still actually reference the different database tables behind the scenes. To be clear there wouldn’t actually be a database table for DAC A.If this isn’t possible not a big deal, it just means more copying and pasting for me.
Hi I want to create same screen as Scan and Count Base screen.I will ScanPI Ref Nbr. Lot serial NbrI will not scan Warehouse and Location.I am trying to customize existing base screen. But After scanning PI ref nbr. i am not able to bring Lot serial Nbr. I have attached the Code of Maint and aspx code file.
Hi, I have a requirement as follows and need to know how this can be catered via customizing the action.When I click on “Generate Orders for Subassemblies” for a parent item such as given below with a qty to produce of 10.00 When the button is pressed the child items also need to be set to a qty to produce of 10.00, currently the system sets it to 1.00 as shown belowHow can I also copy over the qty to produce as well over to the child items once the button is pressed?
Can I set CMType to visible when selecting a specific option from the DocType field? for example i will choose credit memo on doctypeCM Type will be set to visible Is it possible
I am trying to restrict the Attributes that show in the Attributes tab on the Project Entry screen.The Answers view on this graph is not a standard PXSelect. The first two lines are from the original graph.I’ve tried using public virtual IEnumerable answers() and public virtual IEnumerable projectAnswers()but neither of those fire my view override. I have a breakpoint on PXView currentView = Base.Answers.View; but it is never reached. //[PXViewName(Messages.ProjectAnswers)]//public TemplateAttributeList<PMProject> Answers;public virtual IEnumerable answers(){ PXView currentView = Base.Answers.View; //var view = new PXView(Base, false, myDetails.View.BqlSelect); //var startRow = PXView.StartRow; var startRow = 0; int totalRows = 0; foreach (object row in currentView.Select(PXView.Currents, PXView.Parameters, PXView.Searches, PXView.SortColumns, PXView.Descendings, PXView.Filters, ref startRow, PXView.MaximumRows, ref totalRows)) { CSAttributeGroup a
Hi I have added a user defined warehouse selector as below in the Material Wizard 1 screen in Acumatica.[PXInt][PXSelector( typeof(Search<INSite.siteID>), typeof(INSite.siteCD), typeof(INSite.descr), SubstituteKey = typeof(INSite.siteCD))][PXUIField(DisplayName="Warehouse")] The records should be filtered based on the selected warehouse, but no filtering occurs. I have implemented the filtering logic below.using System;using PX.Data;using System.Collections.Generic;using PX.Objects.CS;using System.Collections;using System.Linq;using PX.Objects.IN;using PX.Objects.AM.Attributes;using PX.Objects;using PX.Objects.AM;namespace PX.Objects.AM{ public class MatlWizard1_Extension : PXGraphExtension<PX.Objects.AM.MatlWizard1> {#region View Extensions public override void Initialize() { base.Initialize(); // Modify the existing processing delegate Base.OpenOrders.SetProcessDelegate(list => {
Has anyone come across issue where a field has been added to the details tab of a process screen via customization and the column can not be filtered - as in added a column filters does not filters at allWe now have 3 process screen on 24R1 customers with this issue. I know one is SO505000 but can be sure of the other 2.
Missing Parameters In the development of the Quality Inspection tab in the POReceiptEntry screen, issues have been identified when attempting to dynamically populate records based on POReceiptLine entries. These issues prevent the system from accurately reflecting all the required quality parameters for each InventoryID. ScenarioSetup SetupPurchaseParameter contains predefined quality parameters linked to specific InventoryIDs. POReceiptLine contains the InventoryID of items being received.Requirements When a record is added to POReceiptLine, the system should check if the InventoryID requires a quality check (InventoryItemExt.UsrNeedQualityCheck = true). For such InventoryIDs, all associated parameters from SetupPurchaseParameter should be added as new records in the Quality Inspection tab. Observed Issue Case 1 - Adding a line with an InventoryID having two parameters in SetupPurchaseParameter results in only one record being added to the Quality Inspection tab. Codeusing System;
In version 24_202_0026 which was upgraded from version 23_107_0022 I attempt to programmatically create a SO document. The Bill Address and Bill Contact handling code works with issues. I had the PX.Data.PXLockViolationException error on PressSave(). SOBillingAddress billAddress = docgraph.Billing_Address.Current = docgraph.Billing_Address.Select();billAddress.OverrideAddress = true;billAddress = docgraph.Billing_Address.Update(billAddress);docgraph.Actions.PressSave(); Here I have fond a potential solution. SOBillingAddress billAddress = docgraph.Billing_Address.Current = docgraph.Billing_Address.Update(new SOBillingAddress { OverrideAddress = true }); docgraph.Actions.PressSave(); Using the recommended code I get the PX.Data.PXOuterException: 'Error: Inserting 'Billing Address' record raised at least one error. Please review the errors error, also, on the end of process, I see the Error: 'RevisionID' cannot be empty.Address is not validated. error. The Save operation works fine wh
Is it possible to extend the workflow on the Kit assembly screen to allow updates to certain fields on the User Defined field tab after the kit assembly has been released? I followed the directions on Irina’s post, but it didn’t work:https://community.acumatica.com/develop%2Dcustomizations%2D288/how%2Dto%2Denable%2Dthe%2Duser%2Ddefined%2Dfields%2Deven%2Dwhen%2Dthe%2Dwhole%2Ddocument%2Dis%2Dcompleted%2D5480I have used this approach successfully on the Sales Order screen. Is there something different about Kit Assembly, or am I doing something wrong? I was sure to make the workflow extension active.@Irina @ray20 @Neil Cantral Thanks,Laura
I created a custom screen of type FormTab. I added the following view to the form (summary) area. However, some fields appear as disabled(uneditable) when the screen is displayed. Specially all fields in the second DAC. When I add these DACs alone as the view, fields appear correctly with editability. This issue occurs only when the DACs are joined. public SelectFrom<AMMTran> .InnerJoin<AMProdItem>. On<AMProdItem.orderType.IsEqual<AMMTran.orderType>. And<AMProdItem.prodOrdID.IsEqual<AMMTran.prodOrdID>>> .View HeaderView;I tried resolving this issue using an a RowSelected event handler as follows, but it didn’t work. I also set Enabled = true for the fields using the Customization Project Editor, but the problem persists. Any detailed instructions, tips, or code snippets would be greatly appreciated. Thank you! protected virtual void _(Events.RowSelected<AMProdItem> e) { if (e.Row
HiI am adding the warehouse location field to the deadstock screen.I managed to add the field and view the location for each warehouse. However the data is not filtering based on the location.I know I tried creating a graph extension to add the location as a filter but its not working. using PX.Common;using PX.Data;using PX.Objects.CS;using PX.Objects.IN.DAC.Unbound;using PX.Objects;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System;namespace PX.Objects.IN.DAC.Unbound{ public class INDeadStockEnqFilterExt : PXCacheExtension<PX.Objects.IN.DAC.Unbound.INDeadStockEnqFilter> { #region Usrlocation [PXDBInt] [PXSelector(typeof(Search<INLocation.locationID, Where<INLocation.siteID, Equal<Current<INDeadStockEnqFilter.siteID>>>>), typeof(INLocation.locationCD), typeof(INLocation.descr), SubstituteKey = typeof(INLocation.locationCD))] [PXUIF
Hello all,I am trying to add a Selector attribute on a new field in order to store a vendor in a case screen customization using the Customization Project Editor. After I publish the customization, I receive the error: “Cannot create ctl00_phG_tab_t2_CstPXSelector122 control. The PXSelector attribute is missing for the UsrInst_InstallVendor field. Make sure the names of the data views specified for controls in the ASpX file match the names of the data views defined in the corresponding graph.”I have added the following attributes in the UsrInst_InstallVendor field:[PXDBInt][PXSelector(typeof(Search<PX.Objects.CR.BAccountR.bAccountID, Where<PX.Objects.CR.BAccountR.type, Equal<PX.Objects.CR.BAccountType.vendorType>>>))][PXUIField(DisplayName="Install Vendor")]Then, I create the control on the tab I have added in the Cases screen customization. After publishing, the screen shows the selector, but when clicked, I receive the error message above. Am I missing a step in my
Good day, I have a customization with 2 custom fields that are selectors called 480 Tax Line, one in Non sotck item screen and another in the lines of Bills and Adjustments; these selectors have the values from an Attribute and there is an Instance where I am having an error, everytime I choose one of the options and press save, I receive the error "Error: Updating 'Inventory Item' record raised at least one error. Please review the errors.” and then in the field it has the error '480 Tax Line' cannot be found in the system.The DAC is configured to show the description of the attribute in the UI and save the ValueID in the database, everything is working well on every other Instance I publish my customization, but in this one I don't understand why I have conflicts where everything is the same, the attributeID is APLINE and the data is the same on every other environment I have tested. public class InventoryItemExt : PXCacheExtension<PX.Objects.IN.InventoryItem> { #region Usr
Hello guys, I am having an issue with a workflow event handler:Workflow declaration:.WithHandlers(handlers =>{ handlers.Add(handler => handler .WithTargetOf<ARBalances>() .OfEntityEvent<ARBalancesCreditHoldExt.MyEvents>(e => e.CreditLimitViolated) .Is<SOShipmentEntryCreditHoldExt>(g=> g.OnCreditLimitViolated) .UsesPrimaryEntityGetter< SelectFrom<SOShipment>. Where<SOShipment.customerID.IsEqual<ARBalances.customerID.FromCurrent>>>() ); handlers.Add(handler => handler .WithTargetOf<ARBalances>() .OfEntityEvent<ARBalancesCreditHoldExt.MyEvents>(e => e.CreditLimitSatisfied) .Is<SOShipmentEntryCreditHoldExt>(g => g.OnCreditLimitSatisfied) .UsesPrimaryEntityGetter< SelectFrom<SOShipment>. Where<SOShipment.customerID.IsEqual<ARBalances.customerID.FromCurrent>>>() );})//Add to Sta
Hi Guys, Im having a little issue with redirections.I receive these errors:After I attempt redirection from here:The ‘Press and Glue Log’ works fine…My DAC key fields: #region DocNbrpublic abstract class docNbr : BqlString.Field<docNbr> { }[PXDBString(15, IsKey = true, IsUnicode = true)][AutoNumber(typeof(ISOSetup.autoNumberingQC), typeof(GCQCRecord.date))][PXSelector(typeof(GCQCRecord.docNbr), typeof(GCQCRecord.batchNbr), typeof(GCQCRecord.date), typeof(GCQCRecord.sOOrderNbr), typeof(GCQCRecord.status), ValidateValue = false)][PXUIField(DisplayName = "Doc Nbr", Enabled = false)]public virtual string DocNbr{ get; set;}#endregion#region BatchNbrpublic abstract class batchNbr : BqlString.Field<batchNbr> { }[PXDBString(15, IsKey = true, IsUnicode = true)][PXSelector(typeof(AMBatch.batNbr), typeof(AMBatch.docType))][PXRestrictor(typeof(Where<AMBatch.docType.IsEqual<Messages.move>>), Messages.MoveNotFound, typeof(AMBatch.docType))][PXUIFie
I am writing a custom DAC that uses the GLTran table. The default GLTran DAC will filter on the FinPeriodID field in the format MM-YYYY, however stores the field as YYYYMM. When i try to use the field directly in GI conditions I have to specify the financial period ID as YYYYMM to get the results. What do I need to do in my DAC for that field to operate in the MM-YYYY form like it does in the stock GLTran DAC? I tried working with something like this: #region DB Calced Formulas using FinPeriodIDLeft4 = Use<Left<GLTran.finPeriodID, int4>>.AsString; #endregionHowever, I do not know how to swap the first 4 and last 2 of the field value in order to make it work like the stock DAC does. Thank you in advance!
Acumatica Snapshots can be tricky, but they are extremely useful. If you are unfamiliar with the feature, Acumatica’s snapshot system is an amazing ERP feature that lets the customer export and import a company’s data into/from a zip file full of files that represent the data of SQL tables in the ERP. With Snapshots, you can create a copy instance of an Acumatica site by company. It’s an incredibly powerful tool that gives you a lot of power over your data. Customers can create copies of their sites for testing, experimenting, or for historical analysis. I’ve been using snapshots to troubleshoot customer issues since I started working with the product in 2013. No longer did I have to go through the nerve-wracking process of troubleshooting an issue in a customer’s production environment. I didn’t need to get a customer to allow me access to their system so that I could poke around, perhaps send a SQL query via the chat window, and desperately try to infer the issue in the time a
I am trying to integrate a 3rd party address validation rest service into acumatica, is there any documentation on how to do that to using the same workflow as avalara or vortex plug-in
Hi Community,Can you please help me with the sample to know which tab is selected.
Hi, I have a requirement where the values entered in the Attributes form need to be pulled into a custom form I make. So, I basically need a way to have a custom line level drop-down list field which contains all the values that are previously entered in the Attributes form. Any help regarding this would be appreciated.
Sorry for posting so many questions lately. in my command, I want to get the first two characters of the screen ID. If it is SM, I want to exclude the record from the selection. cmd = new SelectFrom<UploadFileRevision> .InnerJoin<UploadFile>.On<UploadFile.fileID.IsEqual<UploadFileRevision.fileID>> .InnerJoin<ICSUploadFileView>.On<ICSUploadFileView.fileID.IsEqual<UploadFile.fileID>> .LeftJoin<ICSSystemFiles>.On<ICSSystemFiles.systemFileName.IsEqual<UploadFile.name>> .Where<UploadFile.primaryScreenID.IsNotNull.And<ICSSystemFiles.systemFileName.IsNull> .And<Substring<UploadFile.primaryScreenID, int0, int2>.IsNotEqual<SMScreenConstant>>> .View(this);I know Substring can be used in the predicate, but do you know of a way to do it in the subject of the Where? I am using a SQL View since you can do a field not in ("SM") in the where in SQL. I want to get rid of the need for
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.