Posts

IBM - Integrity and Working with IBM Procurement Certification

Image
 

User 'UserID' is not authorized to select a record in table 'CustDefaultLocation'. Request denied. Cannot select a record in Customer default locations (CustDefaultLocation). Access Denied: You do not have sufficient authorization to modify data in database.

Image
Hi AX Technical, Today, in this post we will talk about an SSRS Report Error and its solution. Please have a look at the below error: If you are getting this below error that means you need to enable remote errors first. Please click on this link to check the solution. Once you enable the remote errors you can check for below error solution: Error : User 'UserID' is not authorized to select a record in table 'CustDefaultLocation'. Request denied. Cannot select a record in Customer default locations (CustDefaultLocation). Access Denied: You do not have sufficient authorization to modify data in database. (S)\Classes\xInfo\add (S)\Classes\Info\add - line 94 (S)\Data Dictionary\Tables\CustDefaultLocation\Methods\exists - line 6 (S)\Classes\LogisticsLocationDefault\defaultExists - line 18 (S)\Classes\LogisticsLocationDefault\findSimpleDefault - line 19 (S)\Data Dictionary\Tables\SalesTable\Methods\initFromCustTableMandatoryFields - l

For more information about this error navigate to the report server on the local server machine, or enable remote errors in AX 2012

Image
Hi AX Technical, Today, in this post we will share a very helpful trick to fight with below kind of error. Error : For more information about this error navigate to the report server on the local server machine, or enable remote errors. Here, we see there is no such description of the error. So first we need to enable remote errors in AX 2012. Solution : Please follow the steps below. Method 1: Open SQL Server Management Studio (SSMS) and create a query. Copy, paste the below query to check and update the value. -- SQL Query written by Chirag Gupta -- To Check the value USE ReportServer select * from ConfigurationInfo where name = 'EnableRemoteErrors' -- To Update the value if the value is false USE ReportServer GO UPDATE ConfigurationInfo SET Value = 'True' WHERE Name = 'EnableRemoteErrors' Method 2: Follow below procedure to enable remote error in SSMS for SSRS 1) Open SQL Server Management Studio and log in with

Fetch product number and storage dimension group in AX 2012 using SQL Query

Image
Hi Readers, Today, in this post we will share a SQL Query to fetch product number and storage dimension group in AX 2012. Requirement : We need to fetch product number and storage dimension group in AX 2012. Solution : Open SQL Server Management Studio (SSMS) and create a new query. Copy, paste the below query and execute it. -- SQL Query written by Chirag Gupta select EcoResProduct.DISPLAYPRODUCTNUMBER as 'Product Number',  EcoResStorageDimensionGroup.NAME as 'Storage Dimension Group'  from EcoResStorageDimensionGroup join EcoResStorageDimensionGroupProduct on EcoResStorageDimensionGroupProduct.STORAGEDIMENSIONGROUP = EcoResStorageDimensionGroup.RECID join EcoResProduct on EcoResStorageDimensionGroupProduct.PRODUCT = EcoResProduct.RECID where EcoResStorageDimensionGroup.NAME = 'SWL' We hope this solution helped you to fetch product number and storage dimension group in AX 2012 using SQL Query. Please comment yo

Error executing code: InventClosing (table) has no valid runable code in method 'unresolvedClosingExist' in AX 2012

Image
Hi Folks, Today, in this article we are going to share a very helpful tips to resolve the below kind of error in AX 2012. Error : Error executing code: InventClosing (table) has no valid runable code in method 'unresolvedClosingExist'. Stack trace (S)\Data Dictionary\Tables\InventClosing\Methods\unresolvedClosingExist (S)\Classes\ProdUpdStatusDecrease\validate - line 17 (S)\Classes\ProdUpdStatusDecrease_StartUp\validate - line 3 (S)\Classes\ProdUpdStatusDecrease\run - line 13 (S)\Classes\ProdTableType\runStatusDecrease - line 8 (S)\Classes\ProdStatusType\runStatusDecrease - line 27 (S)\Classes\ProdMultiStatusDecrease\run - line 44 (S)\Classes\RunBaseMultiParm\runOnServerInternal - line 31 (C)\Classes\RunBaseMultiParm\runOnServer - line 8 (C)\Classes\ProdMultiStatusDecrease\main - line 39 (C)\Classes\FormFunctionButtonControl\Clicked Cause : This problem may be caused by the following issues: A method that is being called has syntax errors in the code.

System.OperationCanceledException: AIF service group not activated in AX 2012

Image
Hi AX Technical, Today, in this post we are going to share a solution for below error: Error : System.OperationCanceledException: AIF service group not activated.   Service group: AccountsReceivableServices.   Error: There is already a listener on IP endpoint 0.0.0.0:8201. This could happen if there is another application already listening on this endpoint or if you have multiple service endpoints in your service host with the same IP endpoint but with incompatible binding configurations. ---> System.ServiceModel.AddressAlreadyInUseException: There is already a listener on IP endpoint 0.0.0.0:8201. This could happen if there is another application already listening on this endpoint or if you have multiple service endpoints in your service host with the same IP endpoint but with incompatible binding configurations. ---> System.Net.Sockets.SocketException: Only one usage of each socket address (protocol/network address/port) is normally permitted    at System.Net

Illegal data conversion from original field ProdParameters.PKA_BOMQtyEdit to ProdParameters.PKA_DisableNewDeletePickingList: unable to convert data types to anything but character field type (14 to 49)

Image
Hi Technical, Today, in this post we will talk about a very interesting topic about illegal data conversion from original field to newly created field. Here, we need to understand this error occur while DB synchronization. Error : Illegal data conversion from original field ProdParameters.PKA_BOMQtyEdit to ProdParameters.PKA_DisableNewDeletePickingList: unable to convert data types to anything but character field type (14 to 49) Note : PKA_BOMQtyEdit  and PKA_DisableNewDeletePickingList are ProdParameters table fields. Solution : Note : Please perform below action if you are DBA or having knowledge on SQL Queries in AX. Check the fields id in AOT and compare it with SQLDictionary table in SQL with the following query: --To Check: select * from SQLDICTIONARY where TABLEID in (select TABLEID from SQLDICTIONARY where name = 'ProdParameters') and NAME = 'PKA_BOMQtyEdit' select * from SQLDICTIONARY where TABLEID in (select TABLEID from SQLDICTION

Multiple table fields custom lookup in AX 2012

Image
Hi Friends, Today, in this post we are going to share how you can add multiple tables fields custom lookup in AX 2012. Let's take a scenario to understand the requirement first... We need to make custom lookup for Product Number from EcoResProduct table and Item Number from Invent Table. For this type of requirement first create a query by joining these two tables and then add query and fields in view. Steps to follow: 1. Create a new query and drag and drop InventTable from AOT in it. 2. Set the fields property Dynamic = No and add ItemId in fields. 3. In InventTable data source drag and drop EcoResProduct table from AOT. 4. Set the fields property Dynamic = No and add DisplayProductNumber in it. 5. Set the Fetch mode = 1:1 and Relations = Yes for EcoResProduct data source property. 6. Query is ready to use to add in View. Let's create a view. 7. Create a view and add your query in it. 8. Add fields which you want to show in the view. 9. Write cu

crossCompany and changeCompany in AX 2012

Image
Hi Folks, Today, in this article we will understand the use of crossCompany and changeCompany in AX 2012. Let's start... crossCompany : You can fetch the data from tables across companies using crossCompany keyword in X++ select queries. Suppose you have a requirement to get the data from multiple companies in AX 2012 using X++ then in this scenario we can use crossCompany. You can also use containers to fetch data from subset of companies. For example: public void TestCrossCompanyUse() {     CustTable       custTable;     container       desiredCompanies = ['A', 'B']; // A and B are companies name     int             iCountCompanies  = 0;       while select crossCompany : desiredCompanies * from custTable     {         info(strFmt("%1, %2", custTable.AccountNum, custTable.dataAreaId));               iCountCompanies++;         if (iCountCompanies >= 1000 )         {             break;         }     } } Note: In X++

Custom lookup in AX 2012

Image
Dear Friends, Today, in this post we are going to share how you can add custom lookup in your form control in AX 2012. Let's start... 1) In the AOT, expand Forms, expand the form, expand Designs, right-click Design. Add or drag a new control in the design section of form. Example : You can drag a string field from your form data source. 2) Expand the control on which you want to add the custom lookup, right-click Methods, click Override method, and then click lookup. The lookup method opens in the code editor. 3) Copy paste the below code. public void lookup() {     Query query = new Query();     QueryBuildDataSource queryBuildDataSource;     QueryBuildRange queryBuildRange;       SysTableLookup sysTableLookup = SysTableLookup::newParameters(tableNum(custTable), this);       sysTableLookup.addLookupField(fieldNum(CustTable, AccountNum));     sysTableLookup.addLookupField(fieldNum(CustTable, CustGroup));       queryBuildDataSource = query.addDataSource(