Introducing Acumatica Cloud ERP: 2026R2
Technical discussions focused on Customizations for developers. See Low Code | No Code Forum for non-technical discussions
Recently active
Is there a way to display formatted markdown text in Acumatica? I can get html or markdown results from the API that I’m calling, but don’t know how to display the results to the user.
Maybe this question is very simple, but I can’t find an answer about it.I know that if I write an event like this and do not call baseMethod inside the body, the base method code will not execute. If I want the base code to run, I must explicitly call it. This part is clear to me.protected void _(Events.RowSelected<ARInvoice> e, PXRowSelected baseMethod) { }When I write the event like this, I tested that the base methods are called automatically:protected void _(Events.RowSelected<ARInvoice> e) { }But I do not understand why this happens. I tried to find something in the documentation.In the 2026 R1 Developer Guide, I found information that seems to contradict what I observed during testing. In T210, I found events written without baseMethod, so I assume that writing them this way is valid.However, there should be documentation somewhere explaining this behavior, and I do not understand what is written in the Developer Guide regarding this case.Could you provide a g
I am trying to customize a Branch lookup in Acumatica so that it only shows branches belonging to the currently logged-in user's organization.When a user opens the Branch selector, it should display only branches that belong to the same organization as the current branch.The following SQL query returns the correct result:SELECT *FROM BranchINNER JOIN Branch AS Br ON Br.OrganizationID = Branch.OrganizationIDWHERE Br.BranchID = 22;Here, 22 represents the current logged-in branch (AccessInfo.BranchID in Acumatica).I tried to convert the same logic into BQL, but the result returns duplicate records instead of the expected filtered list. Below are some of the approaches I tried: I also tried several other variations by making small changes, such as modifying the join type and other conditions, but I still ended up with the same result.Following is the BranchAliespublic class BranchAlias : PX.Objects.GL.Branch { } [PXSelector(typeof(Search2< Branch.branchID,
I have a customization our developer created for this client. When we publish to our internal test/dev server it validates and gets to the “Starting the Website” and just sits there and never returns the “Customization project published successfully” message. I’ve tried multiple times and let this screen below sit there a couple minutes to as long as 30 minutes or more and never get the message. If I close the window it appears the custom published and all customizations to screens appear to be working. However, in the SaaS production server, when I publish it all works as expected. In my test system everything seems to be working but would feel better if consistent behavior between test and production on this process. Anyone ever seen this?
After recent ERP Upgrades , we have been experiencing an error on screens i.e Operand data type bit is invalid for max operator.We have customizations which have a boolean/bit data type & dacs, and now after the recent upgrades we are now having to change them to use integers. Is it an acumatica issue or we have to workaround with our customizations ?
Default Navigation Overview Overriding Default Navigation Declaring attribute on a graph Declaring attribute on a graph extension Declaring attribute on a DAC extension Order of overridesHi Community,This post is dedicated to the default navigation mechanism in Acumatica. It is based on the following page from the Acumatica Help Portal which describes the PXPrimaryGraphAttribute:https://help.acumatica.com/Help?ScreenId=ShowWiki&pageid=842ed8f6-e659-45ef-3083-6696cf1fecafDefault Navigation Overview Acumatica Framework provides built-in navigation capabilities for DACs via the PXPrimaryGraph attribute mechanism. It allows to specify for a DAC a screen that should be used as a default screen. The DAC for which you specify the default screen is usually the primary DAC of this default screen. Such way of navigation is sometimes called default navigation. Default navigation is used widely in the product in the following locations: Default navigation to a document from a generic inqui
After upgrading to 2025 R2 Build 25.201.0213.3, we encountered a very strange issue.Within one day right after the upgrade, we accidentally found that clicking the Inventory ID in the sales order details grid had no response and triggered no error and no pop-up window displayed.We spent a lot of time troubleshooting and conducting tests in the test environment, which has been upgraded for two months and works properly.When we were at a loss, the function suddenly and miraculously returned to normal today. Clicking the Inventory ID now brings up the pop-up window as expected.We did not update the browser (both Chrome and Edge showed the same issue in previous tests), nor did we modify any line of customization code. The problem got fixed automatically out of nowhere, which is extremely weird.Does anyone know the root cause?
I am working in Acumatica Modern UI customization and I have a Smart Panel with an Upload button. When the user clicks the Upload button, a file upload dialog (<qp-upload-dialog>) should appear.Here is the code I currently have: When I click the Upload button, the file upload dialog does not appear in Modern UI. But it was working as expected in Classic UI. Thanks in advance for your time and support.
We have recently upgraded from Acumatica 2024R2 to 2025R2, and we are still using the Classic UI (not Modern UI). In our previous 2024R2 environment, we were able to display the Total Cost field on the PO Receipts (PO302000) form, which showed the total monetary value of the received items.However, after upgrading to 2025R2, the Total Cost field is no longer visible on the PO Receipt page, What is the recommended way to re-add the Total Cost field to the PO Receipts (PO302000) form
We have a custom warehouse operations web application that integrates with Acumatica via the REST Contract-Based API. The app has its own user authentication system with individual named users (warehouse staff, receiving clerks, etc.). All API calls from our app currently go through a single shared service account, so every receipt, transfer, and AP bill created in Acumatica shows the same username in audit logs - we lose individual attribution entirely.We are aware of Option 1 - storing each user's Acumatica credentials in our system and logging in as them individually for each operation. This is the obvious solution but comes with real tradeoffs: every warehouse user needs an Acumatica license seat, credential storage and session management gets complex, and we'd need to manage separate Acumatica sessions per app user.Our question: Is there a supported or recommended approach in Acumatica to pass the identity of the originating user through API calls made by a service account, withou
I have added a custom screen to the mobile app.This is NOT coming from a GI. I have found using a GI for this is a complete nightmare. Is it possible to add a filter to a screen that is not coming from a GI? I’d like to be able to add a label to the Reminder Date field. I cannot find a way to do this. When you click Add or tap an existing record, the custom screen opens and works perfectly. This is the screen on the site: This is the code for the Mobile App. add screen IC301010 { Add container "ICSCallLogView" { fieldsToShow = 10 containerActionsToExpand = 4 add layout "CustomerRow" { displayName = "Customer" layout = "Inline" add field "CustomerNbr" } add field "CallDate" add layout "ReminderDateTimeRow" { displayName = "Reminder" layout = "Inline" add field "ReminderDateDate" add field "ReminderDateTime" } add field "Location" add field "Status" add field "Category" add field "Summary" add field "Details" add
Hi, allI create PXCacheExtension<PMProformaLine> and add new custom field.Next i override method BillTask. In this method base functional create PMProformaTransactLine line = new PMProformaTransactLine();And when i try this AKTPMProformaLineExt lineExt = line.GetExtension<AKTPMProformaLineExt>();I get this error. GetItemExtension failed.
This might seem like a duplicate topic, but I tried the things in this previous topic to no avail: When I click the Plus to add a new record, the entry screen opens, but it is not the actual entry screen. It opens a read only screen that shows the last record returned by the GI, AND it is not even formatted like the entry screen. If I select a record to edit, it DOES open my custom screen and it allows me to edit.In the web site, when you open the GI and click add, it works fine.Here are some screen shots of the GI: Clicking Plus shows this: Tapping an existing item shows this: This is the Mobile App code:add screen GI990120 { type = SimpleScreen add container "Result" { fieldsToShow = 7 containerActionsToExpand = 3 add field "CallDate" add field "CustomerName" add field "ReminderDate" add field "LocationName" add field "Status" add field "Category" add field "Summary" add containerAction "insert" { behavior = Create } add containerAction "e
I am facing an issue in Acumatica Modern UI on a specific screen.When I navigate using the Next button, the system moves to the next record, but the data is not displayed (screen appears empty or does not refresh properly). However, when I use the Previous button, the data loads correctly for the same record.This issue occurs only in Modern UI. In Classic UI, both Next and Previous buttons work as expected and the record data is displayed correctly. How can I resolve this issue?
In the Estimates screen of Acumatica ERP, I am trying to add a new tab in the Modern UI as per the requirements, but it is not working. Could you please suggest what might be missing?HTML: <template> <qp-tab after="#tabTotals" id="tabQuoteInfo" caption="Quote Info"> <qp-template id="QuoteInfoForm_CstPXLayoutRule48_30" > <qp-fieldset id="tabQuoteInfo_fsA" wg-container="QuoteInfo_tab" view.bind="QuoteInfo" > <field name="CustomerID"></field> <field name="ContactID"></field> <field name="Length"></field> <field name="Width"></field> <field name="Height"></field> </qp-fieldset> </qp-tab></template>TS import { PXView, PXFieldState, PXFieldOptions, linkCommand, gridConfig, graphInfo, columnConfig, GridColumnShowHideMode, GridColumnType, TextAlign, Grid
Not so much a question, but more of a confusion on my part.I had an Acumatica hosted client today all of a sudden lose their Modern UI fields from a few customizations. Changes to a customization were applied Sunday and published. Everything was there this morning days later, everything was fine, then at some point in the middle of the day Modern UI changes disappeared. The customizations were still published, hence my confusion.So I published them again and they were back. But why would they just disappear in the first place? Has anyone seen this? Or is there something I should be aware of?I looked in the system monitor under system events and no events would lead me to believe there were any changes to the published customizations today otherwise (I filtered by Source for Customization and the only results for today were when I republished). It just seems so strange that I’m almost embarrassed to even write this post, but I’m legitimately confused.
Hi everyone,I'm experiencing a strange behavior with a custom action in a processing screen (similar to Process Orders).The Issue: When the process finishes, the "Processing" summary dialog appears correctly (showing 1 Success, 0 Errors, etc.). However, when the user clicks the "Close" button, the loading spinner appears briefly, and then the same success dialog pops up again. This creates an infinite loop where the only way to exit is to manually refresh the browser page.Observations: This happens even when the process is successful. It occurs across multiple different custom actions I've developed. I am using PXLongOperation.StartOperation to handle the logic. Code Snippet: Below is the logic for one of the actions causing this: public PXAction<SOOrder> FRcreateTransfer;[PXButton(CommitChanges = true), PXUIField(DisplayName = "Create Transfer", MapEnableRights = PXCacheRights.Select)]public virtual IEnumerable frCreateTransfer(PXAdapter adapter, [PXDate] DateTime? shipDate
I’m experiencing an issue in Modern UI where a link in a grid column is not opening target screen when clicking on the field.Here is the TS:@columnConfig({ editorConfig: { linkCommand: "ViewBills" }, width: 70,})BillID: PXFieldState<PXFieldOptions.CommitChanges>;When I click on the BillID field, nothing happens. I also tried adding allowEdit: true, but it did not resolve the issue. What’s confusing is that in another screen I have a very similar configuration, and it works correctly the link opens as expected:@columnConfig({ editorConfig: { linkCommand: "ViewInvoice" }, width: 90})InvoiceId: PXFieldState;
Hi all,I wanted to check the feasibility of a customization in Acumatica for Production Orders.Currently, once the Production Order moves to In-Process status, the BOM ID and Revision are locked by design, based on the Acumatica Community response, it appears a customization may be possible to alter the behavior.Our requirement is to evaluate whether the system can allow updating the BOM ID and Revision on a Production Order even after it reaches In-Process status, ideally until the final Move transaction i.e. Production order Status completed.Please review whether this is technically feasible and advise on the possible approach, impact and limitations.Attached is the Community thread for reference.How to handle BOM revision changes after a Production Order is in In-Process status? | Community
Hi Team,I need guidance on customizing Global Search behavior for Invoice Reference Numbers.Current Behavior:If Invoice status = Balanced, search opens Invoices (SO303000) If Invoice status = Open or Closed, search opens Invoices and Memos (AR301000)For invoices with status Open or Closed, I want Global Search to return two results:One navigating to Invoices (SO303000) Another navigating to Invoices and Memos (AR301000)Is it possible to configure or customize Global Search to show multiple navigation results for the same reference number?If yes, how can this be achieved (Customization Project, DAC extension, or any specific configuration)?Any guidance or examples would be helpful.Thank you!
Hello Acumatica Team,We have a requirement to add a custom field in the Application History tab of the Payments and Applications screen. This field should be populated from the Blanket Sales Order CustomerOrderNbr and must be updated during Payment Release and Payment Capture.I attempted to override the Release action. When updating the value before the baseMethod call, the Application History (ARTranPostBal) View Details is not loading. When updating after the baseMethod call, the view loads correctly, but the value is not persisting. However, updating the value using PXDatabase.Update works as expected.I also tried using row events, but observed the same behavior with no success.Could you please clarify:Where the default logic for updating Application History during Release and Capture is implemented? What is the correct extension point to reliably update this custom field?Version: 25R1Thanks in Advance!
I have two GI’s, ICSCallLog, and ICSCallLogUser. ICSCallLog is for use by Administrators. It has an Entry Screen to open my custom screen when a row in the GI is selected.The second GI ICSCallLogUser has a Condition to only show records where CreatedBy = @me.When you open the custom screen while viewing the admin GI, then click the CloseCancel button, it returns the user to the ICSCallLog GI.When you open the custom screen while viewing the user GI, then click the CloseCancel button, it returns the user to the ICSCallLog GI. I want it to return to the ICSCallLogUser GI so that they only see their records.I am thinking that I can add logic to the CancelClose action on my screen to redirect the user to the appropriate GI.This is the code I am trying to use://[PXOverride]public delegate IEnumerable CancelCloseDelegate(PXAdapter adapter);[PXOverride][PXUIField][PXButton]public IEnumerable CancelClose(PXAdapter adapter, CancelCloseDelegate baseMethod){ //see if current user is an Adminis
First, I’m not even sure what I want here is possible, but seems like if it is this is the place.I’ve got a completely custom form that shows information about a linked products record. I’d like to have a grid that lists the notes, but have an option for a split screen that shows the detail of one field (aka the content of the note) adjacent to it and is displaying the note content for the selected row.Is this a possible thing? Desired content detail would display in the box with the arrow.
I’ve got a custom field that is Int64. It’s holding a key value from another application. It’s correctly stored in the DB as 16 digits, but the UI only displays 14. This was the same in Classic UI, but I could force it to use display as a string and all was well (it’s rarely if ever entered by anything than the integration code or an Admin, so digit checking not important.)I was *hoping* that modern UI would ditch the 14 char limits, but seems like no. How do I make modern UI display all the digits?Thanks in Advance!
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.