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 am trying to get the values in the address column of my grid to plot point in google maps using the javascript api. I’ve seen other posts about using px_alls[“gridid”] to get the data but I can’t get it to read the items property when I do px_all[“grid”].rows.items even though there is a row with data in my grid. This is the code:var map;async function initMap() { const center = { lat: 32.86, lng: -80.02 }; const { Map } = await google.maps.importLibrary("maps"); const { AdvancedMarkerElement } = await google.maps.importLibrary("marker"); const { Geocoder } = await google.maps.importLibrary("geocoding"); /* the map */ map = new Map(document.getElementById("map"), { zoom: 10, center: center, mapId: "DEMO_MAP_ID", }); /* get addresses from Acumatica field */ var addresses = px_alls["grid"]; /*var addressesToPlot = "Robisonia, PA;
Hello,I working on a customization to the Inventory Item page. I have 2 attribute fields and 2 other fields that I am trying to sync. One field is a length stored as a decimal and one field is the length stored in the format of ft’ in”. I am converting fine, but when I try to save the document, the attribute fields are not updated.//Updating the attributelengthAttribute.Value = Fractions.DecimalToFraction(itemExt.UsrLength ?? 0m);I edit the field: Edit this field Attribute is updated as expected.Attribute is updated as expectedBut when I save, it revert the attribute to the previous values.But when I save, it revert the attribute to the previous valueDoes anyone know what I am missing to get the attribute to save? Thanks in advance!
When I create a FeaturesSetExt to introduce a new Feature Flag, the new Field on the database is initialized with NULL.Even though I set the PXDefault to false (I know this is redundant), I have trouble activating other Features, if my new feature was not activated and is still NULL, I always get the error “’MyFeature’ cannot be empty”. public sealed class FeaturesSetExt : PXCacheExtension<FeaturesSet> { public static bool IsActive() => true; #region UsrMyFeature [PXDefault(false, PersistingCheck = PXPersistingCheck.Nothing)] [Feature(false, typeof(FeaturesSet.subAccount), DisplayName = "UsrMyFeature" )] public bool? UsrMyFeature{ get; set; } public abstract class usrMyFeature: BqlBool.Field<usrMyFeature> { } #endregion }I solved it by adding an SQL UPDATE script to my customization that initializes the field with False. But it doesn’t look like the best solution.Do you have ideas on how to solve this?
Hello everyone,The goal is to set a custom field simultaneously when the Shipping information of the Sales Order is populated upon selecting the Customer.I tried to accomplish this through customization, but unfortunately, I'm unable to locate the correct method name for capturing the moment when the Customer information is integrated into the Sales Order.Appreciate any assistance!
I added a field on a customer record to the SO header. When I add this customer to the SO the field appears as does the value on the customer record. However, when I close the record and return to it later the value disappears. If I do something in this record and save it again the value will reappear. Below is the attribute...do I need to add something here? I have tried to commit the changes but that does not work. Advise would be appreciated. [PXDBBool][PXUIField(DisplayName="COA")]
I have a custom screen with 3 tabs. I created it using the Tab (Tab View) template.The form looks great and displays the data in my 3 tabs, one grid in each tab.When I change a record in one of the grids, the Save icon becomes enabled, but when I click the Save icon, it does not do anything.This is Acumatica 101, but I could use help to get this working.Here is my Graph: public class ICSPreferences : PXGraph<ICSPreferences> { public PXSave<MasterTable> Save; public PXCancel<MasterTable> Cancel; public PXFilter<MasterTable> MasterView; public PXSelect<ICSDistrictsPref> DistrictsView; public PXSelect<ICSOwnershipGroupPref> OwnershipGroupView; public PXSelect<ICSESGPref> ESGView; [Serializable] public class MasterTable : IBqlTable { } }Here is my ASPX:<%@ Page Language="C#" MasterPageFile="~/MasterPages/TabView.master" AutoEventWireup="true" ValidateRequest="false" CodeFile="IC202070.aspx.cs" Inherits="Page_IC202070" Title="Untitled
Hi,We have developed full custom screen name as Proforma screen(PI.30.10.00),We attached a report to the screen. We need to send that report when Proforma invoice is released.We have setup a business event using the custom screen. After PI is released, Email will not triggered. These setups worked well for standard screen.May I know the reason why it is not working for custom screen?.
Hi Everyone I am reaching out to seek guidance and assistance with modifying workflow state descriptions within our Acumatica ERP system. We are currently looking to enhance the clarity of our Sales Order processing workflow by updating the descriptions of certain workflow states to better align with our operational processes. Current Configuration:We have a state named "Completed" which we would like to rename to "Invoice Pending".Additionally, we have a custom state originally named "Invoice Released" that we need to change to "Completed". Objective:Our objective is to make these state descriptions more intuitive and reflective of their actual functions in our business process. This change is intended to improve user understanding and interaction with the system. Challenges Faced:We understand that modifying state descriptions might not be straightforward through the Workflow Editor or UI, and are concerned about the potential impacts on system integrity and future updates. Direct d
Hi all, I have a selector in SOLine grid as follows.#region UsrProductionNbr [PXDBString(15)] [PXUIField(DisplayName = "Production Nbr")] [PXSelector( typeof(Search<AMProdItem.prodOrdID, Where<AMProdItem.inventoryID, Equal<Current<SOLine.inventoryID>>>>), typeof(AMProdItem.orderType), typeof(AMProdItem.prodOrdID))] public virtual string UsrProductionNbr { get; set; } public abstract class usrProductionNbr : PX.Data.BQL.BqlString.Field<usrProductionNbr> { }#endregion I have another field for production order type in the same grid as follows. #region UsrProdOrdType [PXDBString(5)] [PXUIField(DisplayName = "Prod. Order Type", Enabled = false)] public virtual string UsrProdOrdType { get; set; } public abstract class usrProdOrdType : PX.Data.BQL.BqlString.Field<usrProdOrdType> { } #endregion I want to set the UsrProdOrdType value based on se
Hi,Nice to meet you all. Long time reader first time poster.In 2022R1, I am trying to publish a customisation that includes an extension to the SOOrderEntry graph. I am having problems though because an existing customisation that also includes an extension to the same graph is already published. The first time I tried this, the whole application crashed because my extension was the only one published, and the other customisation had other code that tried to obtain a reference to its extension using CreateInstance<SOOrderEntry>.GetExtension<”extension name”>().I tried to replicate this error in a local instance also running 2022R1, but it didn’t happen, and browsing my filesystem provides a clue as to why. In the <Appfolder>\App_Code\Caches folder, my extension is contained in a file named ‘SOOrderEntry.cs’. The other extension is contained in a file named ‘<Package name>.SOOrderEntry.cs’, where <Package name> is the name of the .NET package it exists in.
This question is an extension of this one.I have changed the second script to be as follows:<script>var map;async function initMap() { const center = { lat: 40.75, lng: -77 }; const { Map } = await google.maps.importLibrary("maps"); const { AdvancedMarkerElement } = await google.maps.importLibrary("marker"); const { Geocoder } = await google.maps.importLibrary("geocoding"); /* the map */ map = new Map(document.getElementById("map"), { zoom: 7.8, center: center, mapId: "DEMO_MAP_ID", }); /* get addresses from Acumatica field */ /*var addressesToPlot = px_alls["cstAddressesToPlot"].getValue();*/ var addressesToPlot = "Robisonia, PA; Mechanicsburg, PA; Philadelphia, PA"; var addresses = addressesToPlot.split(';'); /* encode addresses as lat/lng */ const geocoder = new Geocoder(); for (var i=0; i<addresses.length; i++) { geocoder.geocode({ 'address': addresses[i] }, (results, status) => { if (status == google.maps.GeocoderStatus.OK) { const marker = new AdvancedMarker
We get this Error when opening up Customization Projects that have been upgraded to 24R1.They published without Error, it’s really just when Opening them. Any idea as to what is going on?
I have been trying to learn and get this to work, but I haven’t had any luck. I am trying to add the AddressLine1 field to the location selector on the opportunities screen. I have done some digging and have come across this, but all it spit out was the LocationID and Description with bad looking column headings, the same as what happened here. I tried his fix of moving it to a visual studio project and that didn’t work for me either, I had the same outcome. I also tried using this method, changing from contact to address. It seems to work (I can see the AddressLine1), but I can see every single one in the system, not just the ones related to the BAccount I have selected on the opportunity. If someone could give me a hand, that would be great, I’m still new to coding. Here is the code I am using currently.[PXSelector(typeof(SearchFor<Location.locationCD>.In<SelectFrom<Location>.InnerJoin <Address>.On<Location.defAddressID.IsEqual<Address.addressID>>&
I have a customization that was written originally for Acumatica 2021 R2 (Build 21.218.0027) and it runs fine there.It adds an action button to the opportunities screen (CR304000) (See screenshots below)The purpose of this button is to have the tech in the field be able to press it to call out to a web based forms system we have developed. So, I have code in the customization to make it visible on the mobile app: update screen CR304000 { update container "OpportunitySummary" { add recordAction "ASGExtForms" { behavior = void redirect = True } }This works fine in Acumatica 2021 R2, Build 21.218.0027.However, it will not work in Acumatica 2022 R2, Build 22.223.0007Everything compiles fine, but the button will not show in the Mobile app. Weirdly, I have almost identical code for the Appointments screen (FS300200), and the action shows there.Does anyone have any idea what changed, and how I have to change the mobile app code (I am assuming) to
I have extend stock item screen in my customization, I have added two new tabs....now I have convert it to modern ui by convert to modern ui built in convertor.Once Screen converted modern UI ...I have not seen my customized changes. newly added tabs are not showing.
Good Day,In the screen of Checks and Payments, I need the lines of the grid filtered by Branch, when I select a vendor and add a new line I am filtering the options in the reference Nbr selector by the Branch/Company the user is logged on, but I also need to have the records filtered when I press the tab button "LOAD DOCUMENTS”When I debugg the code, the foreach goes through the lines I need, but when I stop debugging it inserts every document from any Branch, not sure if it is because I am returning the baseMethod but I would appreciate assistance or some ideas on how I could insert only the records filtered. public class APPaymentEntry_Extension : PXGraphExtension<PX.Objects.AP.APPaymentEntry> { #region Event Handlers public delegate IEnumerable LoadInvoicesDelegate(PXAdapter adapter); [PXOverride] public virtual IEnumerable LoadInvoices(PXAdapter adapter, LoadInvoicesDelegate baseMethod) { PXSelectBase<APInvoice> invoiceQu
I am trying to do some work on the Pick, Pack and Ship screen (SO302020).When I add the screen to my project and select the FieldUpdating Event to add code to, I get this:sing System;using System.Linq;using System.Collections;using System.Collections.Generic;using System.Threading;using PX.SM;using PX.Common;using PX.BarcodeProcessing;using PX.Data;using PX.Data.BQL;using PX.Data.BQL.Fluent;using PX.Objects.Common;using PX.Objects.Common.Extensions;using PX.Objects.Extensions;using PX.Objects.AR;using PX.Objects.CS;using PX.Objects.IN;using PX.Objects.IN.WMS;using WMSBase = WarehouseManagementSystem<PickPackShip, PickPackShip.Host>;using PX.Objects;using PX.Objects.SO.WMS;namespace PX.Objects.SO.WMS{ public class PickPackShip+Host_Extension : PXGraphExtension<PX.Objects.SO.WMS.PickPackShip+Host> { public static bool IsActive() => true; #region Event Handlers protected void ScanHeader_PackageLineNbrUI_FieldUpdating(PXCache cache, PXFieldUpdatingEventArgs e) { var ro
Here is my scenario.I have a table that has a range of zip codes. If the left 3 characters of the Ship Address zip code fall in the range of “lower” and “higher” I want to select that record.Example:Ship Address Zip is 100234.In my lookup table, the lower is 100 and the upper is 130.So the left 3 digits of the zip (100) falls in the range.In my BQL statement, I do not see a way to do an IsGreaterEqual using the string value. It causes errors.This is what I want to do:ICSFSSScheduleLine item = SelectFrom<ICSFSSScheduleLine> .InnerJoin<ICSFSSSchedule> .On<ICSFSSSchedule.scheduleID.IsEqual<ICSFSSScheduleLine.scheduleID>> .Where<ICSFSSScheduleLine.scheduleID.IsEqual<@P.AsString> .And<ICSFSSScheduleLine.lower.IsGreaterEqual<@P.AsString>> .And<ICSFSSScheduleLine.upper.IsLessEqual<@P.AsString>> .And<ICSFSSSchedule.active.IsEqual<True>>> .OrderBy<Asc<ICSFSSScheduleLine.lower>, Asc<ICS
((BusinessAccountGraphBase<Customer, Customer, Where<PX.Objects.CR.BAccount.type, Equal<BAccountType.customerType>, Or<PX.Objects.CR.BAccount.type, Equal<BAccountType.combinedType>>>>) graph).BAccount.Insert(m); BusinessAccountGraphBase is missing and so how to find code that equal above
Is there any utility that will let me test BQL against an acumatica instance? I am thinking something along the lines of LINQPAD.
Need assistance in passing data saved on a custom screen to a vendors screen cache to allow user to edit before saving. Current I m able to pass just the AcctCD data which gets passed through the url paramshow do I pass the address details to the screen’s cache public PXSelect<PHKyc> KycMain; public PXSelect<PHKycBusiness, Where<PHKycBusiness.kycNbr, Equal<Current<PHKyc.kycNbr>>>> KycBusiness;public PXAction<PHKyc> extendToVendor;[PXUIField(DisplayName = "Extend to Vendor", MapEnableRights = PXCacheRights.Update, MapViewRights = PXCacheRights.Select)][PXButton]public virtual IEnumerable ExtendToVendor(PXAdapter adapter){ PHKyc current = KycMain.Current; PHKycBusiness business = KycBusiness.SelectSingle(); PX.Objects.CR.BAccount bAccount = new BAccount { AcctCD = current.KycNbr, AcctName = business.BusinessName, Type = BAccountType.VendorType, AllowOverrideRate = false, CuryRateTypeID = "SPOT", All
Hi Community, I have an issue with a client where we are installing paperless functionality to their warehouse.The Inventory Manager moves dead stock to different locations within the warehouse to make room for items that sell better. They keep this information on paper. The issue we found while testing is that when you move stock between locations it is also removed from the deadstock calculation. This can lead to inaccuracies in identifying true dead stock items.We looking to add a setting in Inventory Preferences, when selected, remove IN Transfers from the calculation.Has anyone done something similar before?
Hi group,When cursor reaches the last editable cell, it creates a new rowDo you know if it's possible to prevent adding new row automaticly at the end of a row (when pressing enter) in grids of acumatica? People have "Insert" right(not delete), they can Cancel the row after an unvolontary inserting but it's little bit anoying Thanks =)
Hello, We have a customer that is requesting an approval process on the Vendor screen- specifically on banking information. Has anyone come up with anything, or have any ideas on how this can be done?Thanks, Kathleen
Hello Community,i have been wondering if we can mark the Document or Line-level Notes as required? if yes then how? Can we achieve it via low-code/No-code customization? 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.