Introducing Acumatica Cloud ERP: 2026R2
Technical discussions focused on Customizations for developers. See Low Code | No Code Forum for non-technical discussions
Recently active
I have Header Filters for grid. I need to add Project Task field – Allow selection of more than one Project Task.How I can do this?
I went through the process of creating the customization project and then added AP.APAdjust. I clicked on Selector Columns and then added APAdjust__vendorID and APPayment__extRefNbr.I saved the changes and published the customization but when viewing the selector within the detail grid of AP503000 I did not see the columns that I added.Just in case, I also replaced the attributes of the APAdjust VendorID column from[Vendor(Visibility = PXUIVisibility.Visible, Visible = false)][PXDBDefault(typeof(APPayment.vendorID))]to[Vendor(Visibility = PXUIVisibility.Visible, Visible = true)][PXDBDefault(typeof(APPayment.vendorID))]but that didn’t have the desired effect.What did I miss?
I am working on a customization and need assistance with automatically fetching custom field values from BOM Material AM208000 (AMBomMatl) records to Production Material (AMProdMatl) records when creating production material lines from a BOM in the Production Details AM209000 (ProdDetail) screen.Goal: Value from Materials tab in AM208000 to Materials tab in AM209000 the customfields are made without code. I tried adding a new graph extension for ProdDetail:but thats not working.
Hi CommunityI have a requirement in the Payments and Applications screen where I have added a custom Load Records From File upload button to upload an Excel file and map the invoices from the file to the Documents To Apply grid, without saving the document.The issue is that only existing invoices in Acumatica are displayed, while unmatched (not found) records from the Excel file do not appear in the grid. During debugging, these unmatched records throw an error:“Error: 'Reference Nbr.' cannot be found in the system.”I have attempted to override the RefNbr field to insert the unmatched records and display an appropriate error message in the grid, but no luck.I want to display those unmatched records in the grid so users can review, edit, or correct them manually before saving and releasing the payment.Any suggestions on how to handle or skip the RefNbr validation and show all Excel records in the grid Thanks,
I’m trying to modify the behaviour of the PrepareImportRow method in the INPIEntry graph to handle a custom field during import. The original method signature looks like this: public bool PrepareImportRow(string viewName, IDictionary keys, IDictionary values) I attempted to use a PXOverride as follows: public delegate bool PrepareImportRowDelegate( string viewName, IDictionary keys, IDictionary values); [PXOverride] public bool PrepareImportRow( string viewName, IDictionary keys, IDictionary values, PrepareImportRowDelegate baseMethod) { // custom logic here } However, I’m getting the following error:Declaration referenced in a method implementation cannot be a final method. Type: 'Wrapper.PX.Objects.IN.Cst_INPIReview'. Assembly: 'INPIReview_Container, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'. PrepareImportRow in INPIEntry is not declared as virtual, which could be preventing the override.Has anyone successfully extended or replaced this method or something similar whic
I also tried to do it manually, and although it lets me add it, the screen shows an “ID does not exist” error and doesn’t display correctly.
I have vendor Id field and I must set text ,,split” for some condition. How I can do this ?
I’m trying to update a customization for Modern UI. I’ve done the same on several other screens without problem, but can’t seem to make Customer Locations work.I’m getting the dreaded “cannot be bound to a FieldState.” but the fields are in the DAC Extension. They show up fine in GIs (which is generally my test.)Can anyone see what I’m doing wrong?TS File:import { PXFieldState, PXFieldOptions, createCollection, PXView, gridConfig, GridPreset } from "client-controls";import { Location } from "../AR303020";export interface LocationExtTest extends Location {}export class LocationExtTest { UsrTEKServiceTradeSend: PXFieldState; UsrTEKServiceTradeManualID: PXFieldState<PXFieldOptions.CommitChanges>; UsrTEKServiceTradeID: PXFieldState; }HTML File:<template> <qp-tab after="#tabGeneral" id="tab-STInfo" caption="ServiceTrade" load-on-demand="true"> <qp-template id="formSTGeneral" name="1-1" class="label-size-m"> <div slot="A">
I have BAccountExt with this field (Its first customization):#region UsrCostCodeID public abstract class usrCostCodeID : PX.Data.BQL.BqlInt.Field<usrCostCodeID> { } [EPTimeTrackerCostCodeSelector(typeof(BAccount.bAccountID))] public virtual int? UsrCostCodeID { get; set; } #endregionAnd i have RQRequisitionLineExt with this field (Its second customization):#region UsrCostCodeID public abstract class usrCostCodeID : PX.Data.BQL.BqlInt.Field<usrCostCodeID> { } [PXDefault(PersistingCheck = PXPersistingCheck.Nothing)] [CostCode(typeof(Current<RQRequisitionLine.expenseAcctID>), typeof(usrProjectTaskID))] [PXUIField(DisplayName = Messages.CostCode, Enabled = true, FieldClass = "COSTCODE")] public virtual int? UsrCostCodeID { get; set; } #endregionWhen i on this two customizations. In Requisitions Primary List RQ3020PL i have this error
I need help adding lot numbers to the shipment detail line. The order is created by an external source. Once we receive notification that the order was shipped the shipping detail and lot numbers are retrieved by an API. My process creates the shipment and shipment lines. For each shipment line I must add lot numbers. There can be 2 or more lot numbers per shipment line. What is the protocol for adding the lot numbers to the shipment lines?
Hi everyone, I need some help with an issue related to address and contact information. They have somehow turned into different characters. Additionally, when I tried to publish a customization to another instance, the same issue occurred. Even after unpublishing all customizations, I can't revert it. All the Customers address, and contacts became like this.Does anyone have any idea what's happening? Thanks!
I know of two ways to accomplish this:Enable SyncPosition on the grid which will trigger the RowSelected event in the graph Use the TypeScript CurrentRowChanged eventHere’s the problem: all the examples in the docs are for base screens, not customizations. I need to do this for an existing grid without SyncPosition enabled.I tried defining it in an extension of the original class:@gridConfig({ syncPosition: true})export class DXCostBudgetExt extends CostBudget {This didn’t seem to change anything. I also tried to write a TypeScript event handler for CurrentRowChanged, but again, the docs only specify how to do this with the base class, not an extension class. I tried several variations of this, and nothing seems to work:@handleEvent(CustomEventType.CurrentRowChanged, { view: "CostBudget" })onCostBudgetLineChanged(args: CurrentRowChangedHandlerArgs<PXViewCollection>) { const ar = args.viewModel.activeRow as DXCostBudgetExt; //const model = (<any>args.viewModel as Co
Would like some help to create a customization to make the Account Email and Phone Numbers under a Customer’s Additional Contact Info auto-populate the info for the Primary Contact and vice versa.When a user types info into the DefContact.EMail field I’d like it to auto-populate in the field PrimaryContactCurrent.EMail field and vice versa. When a user types info into the DefContact.Phone1 and DefContact.Phone2 I’d like it to auto-populate in the fields PrimaryContactCurrent.Phone1 and PrimaryContactCurrent.Phone2 and vice versa.
Hello Everyone,Has anyone experience with exporting Acumatica “Data Grid” to excel and maintain Style and Format? I have customized an Acumatica grid that adds “SubTotals” and “GrandTotal” with some formatting and styling as shown in the below screenshot but I have not had any luck maintaining the formatting/styling when I export the data to excel.Any help is greatly appreciated.
Hello,What would be the recommended way to add a 3rd column to a screen, such as AR303000, whose layout is 1-1. I need the layout to be 1-1-1.Existing qp-template below. I need to override that so that name=”1-1-1” so that I can add a fieldset to column C. <qp-template name="1-1" class="equal-height label-size-m" id="formCustomer" > <qp-fieldset slot="A" id="columnFirstHeader" view.bind="BAccount" wg-container="BAccount_BAccount"> <field name="AcctCD"></field> <using wg-container="CurrentCustomer_tab" view="CurrentCustomer"> <field name="AcctName"></field> </using> <field name="Status"></field> </qp-fieldset> <qp-fieldset slot="B" id="columnSecondHeader" view.bind="CustomerBalance" class="highlights-section" wg-container="CustomerBalance_CustomerBalance"> <field name="Balance"> <qp-label slot="label" caption.bind="CustomerBalance.Balance_Label.value"></qp-label> </field> <fie
I have an Action on a form that fetches some info from an external API inside a PXLongOperation. I am putting the resulting json into custominfo with:PXLongOperation.SetCustomInfo(json);and retrieving after PXLongOperation with:PXLongOperation.WaitCompletion(this.UID); if (PXLongOperation.GetCustomInfo(this.UID) is string json){ f.JsonResult = json; Filter.Update(f);}The problem is that I have date fields in the filter section of the form that trigger the operation completed successfully message every time I change them after the initial action that calls the API completes.I have tried putting the following immediately after setting f.JsonResult in the if statement:PXLongOperation.SetCustomInfo(null);andPXLongOperation.SetCustomInfo(this.UID, null);The first doesn’t seem to affect the data which I presumed is because it needs to know the UID and the second throws an error about ambiguity so I tried:PXLongOperation.SetCustomInfo(this.UID, (string)null);which clears the error but
Hello, I am working on a custom screen that has a parent record and child grid records. I am running into an issue where the grid data does not appear unless I change something in the parent record and then hit save, then the grids populate with the appropriate data. The record previously exists in the database, and I’ve confirmed it. Obviously this is not the behavior we’re looking for.Another issue is, when I attempt to create a new record in the grid, it follows the same issue. I have to change and save the parent record and then create a new child record in the grid, otherwise it’ll throw an exception saying that the key value is null. I have added a PXParent attribute to the proper field and it works properly when the save trick is done. I have a hunch there is something going on with the record loading fully. I added an event handler for the row selected event and then checked that the parent record was loaded, I also check the views for the grids via a .select() to see if they w
I have a few user defined fields in sales order line which I need to copy when the 'Create Purchase Order' action is clicked in the sales order screen. How can I override the action in order to copy these values?I have tried this override action based on the source code but there is no copying of values.using PX.Objects;using PX.Objects.SO;namespace PX.Objects.SO{ public class SOOrderEntry_Extension : PXGraphExtension<PX.Objects.SO.SOOrderEntry> { #region Event Handlers[PXOverride]public virtual IEnumerable CreatePurchaseOrder(PXAdapter adapter, Func<PXAdapter, IEnumerable> baseMethod){ // Call the base method to create the purchase order IEnumerable result = baseMethod(adapter); // Retrieve the created purchase orders POOrderEntry poGraph = PXGraph.CreateInstance<POOrderEntry>(); foreach (var poOrder in poGraph.Document.Cache.Cached) { var poOrderRow = (POOrder)poOrder; // Retrieve the related purchase order lines var poLin
I am working on MUI in 25R2 for my custom screens.I have v22.21.1 installed. According to my web search, “For Acumatica 2025, specifically for versions like 2025 R1 and 2025 R2, the recommended Node.js version is 22.x.x, with specific references to 22.11.0 for 2025 R1.”From the Node.js web site, the closest version I could find is 22.21.1. When I run npm run getmodules, it does it’s thing.Then, I run npm run build-dev. It also does it’s thing and my pages are compiled.If I subsequently run npm run build -- ---env screenIds=IC401095 to rebuild my page after a tweak, I get this error:exec error: Error: Command failed: gulp build'gulp' is not recognized as an internal or external command,operable program or batch file.Here is my workaround to update my page:Re-run npm run getmodules run npm run build -- ---env screenIds=IC401095The page is compiled and looks fine on my site.I noticed that when I run a build, it says node build-and-clean.js> build> node build-and-clean.js ---env s
I am trying to disable the quantity field on a sales order whenever there is a linked production order. To be honest, im not even entirely sure what extension is adding this field to the soline. i dont see it on soline, or SOLineExt. I did find it on SOLineMFGOnly, but that seems to be just a projection. i tried adding the below code line to the quantity field and it does make the field readonly when there is a production order, but if i unlink the production order or delete the production order the quantity field is still disabled. i looked at the below post but when i try to use SOLineMFGOnly in the get extension, it doesnt recognize it. [PXUIEnabled(typeof(Where<SOLineMfgOnly.aMProdOrdID, IsNull>))]
I have data view like this [PXFilterable][PXCopyPasteHiddenView]public PXSelectJoin<INItemClass, InnerJoin<MDSCSalesPersonItemClass, On<INItemClass.itemClassID, Equal<MDSCSalesPersonItemClass.itemClassID>>>, Where<MDSCSalesPersonItemClass.salesNbr, Equal<Current<MDPXSalesCustomer.salesNbr>>>> sitestatus; and typescript @viewInfo({containerName: "siteStatus"}) siteStatus = createCollection(INItemClass); and viewexport class INItemClass extends PXView { @columnConfig({ allowCheckAll: true }) Selected : PXFieldState; @columnConfig({width: 70}) ItemClassID : PXFieldState; @columnConfig({width: 100, allowFastFilter: true}) Descr : PXFieldState;}I try to show selected field checkbox in grid like this <qp-grid id="gripSiteStatus" batchUpdate="True" view-model.ref="gripSiteStatusVM" view.bind="siteStatus"> <qp-grid-column field="Selected" type="CheckBox" width="50" allowCheckAll="true" />
Hi there,We’ve developed a customization that includes a custom data provider responsible for exporting data to an external system. I’m currently exploring two aspects: Mandatory Parameters: Is there a way to make certain SYProviderParameter values mandatory? I attempted to use PXStringState.CreateInstance with IsRequired set to true, but it didn’t seem to have any effect. Conditional Parameter Visibility: Is it possible to dynamically show or hide parameters based on a dropdown selection? For example, if the user selects "AWSS3" as the DataStore option, I’d like to display additional parameters specific to that selection and hide them otherwise.
Hello, Currently I am using the cache.RaiseExceptionHandling method to alert user , code like below: if ((avgWeight != conversionFactor) || (avgWeight == null && conversionFactor != null) || (avgWeight != null && conversionFactor == null)) { cache.RaiseExceptionHandling<InventoryItemExt.usrAverageWgt>(row, rowExt.UsrAverageWgt, new PXSetPropertyException("Always remember to set it same as conversion rate", PXErrorLevel.Error)); }For some reason, the users are wish to be alerted by pop-up msg. What is Acumaitca’s best practice, if I want to only replace the code in black.
Hello, Is there a way to get the conversion factor (shows 60 in below) by code.Actually, need the case to lb conversion factor exactly.
Hi everyone,There is a requirement to override the "Create Child Orders" action in the Blanket Order screen (SO301000), which is handled by the SOOrderEntry graph.I tried to do this through the Customization Project Editor, but when I click "Override Method", the "Select Methods to Override" panel pops up, and CreateChildOrders is not listed among the available methods to override.I also used the Inspect Element tool in the UI, and it confirms that the button is linked to the action named CreateChildOrders.Any guidance or recommendations would be greatly appreciated!
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.