Sunday, December 19, 2021

How to change data provider class and sales invoice report in AX 2012 to print QR Code for KSA

In order to meet the KSA ZATCA regulations, it is mandatory to print a QR code containing 5 fields including Company name, VAT registration number, Invoice date/time, VAT Amount, and Invoice Amount including VAT on any customer invoice. 

In order to meet the above requirements, you need to first create an Extended Data Type (EDT) of container type to hold the QR code. 

Link to youtube video: https://youtu.be/iaKCD202jt0

Link to XPO on Github: https://github.com/pkrashdi/ax2012public/blob/main/SharedProject_PKR_SalesInvoiceQRCodeChanges.zip

Sunday, November 28, 2021

How to create and print a QR code on SSRS report in AX 2009

 In order to meet the KSA GAZT regulations, it is mandatory to print a QR code containing 5 fields including Company name, VAT registration number, Invoice date/time, VAT Amount, and Invoice Amount including VAT on any customer invoice. 

In order to meet above requirements, you need to first declare two variables on global level using X++ such as:

Wednesday, February 10, 2021

D365 Fin Ops - Fix Certificate Issues on Development Machines

Since we moved to the new AX (#Dyn365FO) we use virtual machines to perform development tasks which are provided as images by Microsoft and either deployed to Azure or downloaded and run via Hyper-V on a local server. At least the latter suffer an issue at some point (age) that relates to expired certificates and that might be hard to overcome if you start from scratch. No worries – here’s some guidance that should help you to fix the machine.

Tuesday, December 8, 2020

AX 2012 R3 - Reporting Extensions - Manual Installation (without AX Setup) (AX 2012 R3 CU 13 - SQL Server 2016 - Win Server 2016)

There are various occasions when for the sake of unsupported combinations of OS and ERP and its components, we need to do manual configurations. There are also certain scenarios where even supported combination of SSRS, AX and OS, we could not configure Reporting extensions using AX Setup.

We will cover in this blog post, what are the steps to do manual configurations. Since we are using SQL Server 2016 for Reporting extensions configuration, which is not supported by Microsoft using AX Setup, so we have to do manual configurations. In our case, we were setting multiple SSRS instances.

Monday, December 7, 2020

AX 2012 R3 SSRS - @SYS labels are shown in SSRS (Windows Server 2016 with SQL Server 2016) - Manually configured Reporting Extensions.

When you've configured SSRS or Reporting Extensions manually, there is a chance that you could not configure everything properly. There is such a situation when labels are not properly shown in SSRS reports.

Thursday, August 20, 2020

Magento 2.4 - MySQL query for product with attributes

 

Following mysql query will return SKU, product name, its type with size and color as attributes. 

Thursday, August 13, 2020

Cannot create a record in Pay statements (PayrollPayStatement). Worker: abc, Monthly 31/7/2020. The record already exists.

There are two possible reasons for the title issue. The source of one is RecId sequence and the other is the Number sequence used for PayrollPayStatement. The first one I already posted in my article.

Wednesday, August 12, 2020

Magento 2.4 installation on Linux Mint 20c


How to Install Magento 2.4 installation on Linux Mint 20c

Thursday, March 5, 2020

IIS Manager Error: The process cannot access the file because it is being used by another process. (Exception from HRESULT: 0x80070020)

IIS Manager Error on Async Service Start

The error such as IIS Manager Error: The process cannot access the file because it is being used by another process. (Exception from HRESULT: 0x80070020)  is as obvious in the description of the error in the message. This error can be faced when Async service for AX 2012 R3 is started in IIS as website, and it finds the particular port e.g. 443 or https in this case used by another process. 

Thursday, November 7, 2019

AX 2012 R3 - Retail - Batch job dependencies or sequencially running

P-jobs or pull jobs for the retail module in AX 2012 R3 are the jobs that are used to upload daily retail sales transactions from outlets to HQ. For these, the packets are composed in a working folder, and that folder has further subfolders against each retail store or outlet. The organized or planned batch job running will avoid any conflict or deadlock occurring on the same tables e.g. RetailTransactionTable, or RetailTransactionSalesTrans, or any other retail table where these p-jobs will insert the new records. By organized or planned means, we can actually use some tweaking, merge separate P-jobs in batch into a single job and various tasks, where each task will wait for the completion of prior tasks, so in this manner, a queue will be created where no task will block or result into a deadlock for another task to fail.

Monday, November 4, 2019

SQL Server - SQL Joins : Inner Join, Left Outer Join, Right Outer Join, Full Outer Join


There are four joins in SQL in reference to SQL Server. Namely, they are Inner Join, Left Outer Join, Right Outer Join, Full Outer Join. The Inner Join will bring the common records between two tables e.g. Table A, and Table B, where the conditions mentioned are satisfied. 

Tuesday, October 29, 2019

AX 2012 R3 - Fiscal year closing - Cannot close period when there are source documents remaining to be journalized with an accounting date within the period. Error


When you close a fiscal period from Ledger, an error might come up saying:
Cannot close the period when there are source documents remaining to be journalized with an accounting date within the period.

This error is due to corrupted lines in AccountingDistribution table, where you can filter out the records on the following basis and delete those records for the resolution:

Table: AccountingDistribution 
Range on AccountingDate field: 1/6/2018..30/6/2018 ( date range for fiscal period you are trying to close) 

Range on AccountingEvent : 0 (should be zero for corrupt entry)

AccountingLegalEntity: Should be recId of legal entity of accounting entries.

There must be hundreds of records which will be filtered out in this. You just need to delete these to get rid of corrupted entries.

Now you can proceed with fiscal period and year close, and it should not throw same error again.

Tuesday, September 24, 2019

AX 2012 R3 - Cannot create a record in XXX the Record already exists

Many times, when after data migration, a user wants to create a table record, the well-known record already exists error message pops up. This issue is because of the mechanism through which current recIds and next are assigned by AOS in coordination with table records in the database i.e. SystemSequences.

Wednesday, September 11, 2019

AX 2012 R3 - Infolog shows "Transaction date must be specified." while posting a retail statement

While posting a retail statement, an infolog pops up with the error such as "Transaction date must be specified.". On investigation using debugger, it was found that RetailTransactionIncomeExpenseTrans table contains a hidden and uneditable field called BusinessDate, which is probably fill up during the calculation of retail statements but they were not updated with value in the case. Besides in our scenario, the income/expense transaction, through P-Job were partially synced due to which payment transactions were present, but actual expense transaction were not present. So after manually running P-Job, the transactions were synced at HQ end. But we had to update the StatementId field value as per the existing Retail Statement statement in order to balance a total debit/credit amount.


The resolution to the issue, was to navigate to AOT, RetailTransactionIncomeExpenseTrans table, and located field named as BusinessDate. In the properties, set AllowEdit to Yes, and Visible to Yes as well. Then in table browser, filter by StatementID, and then fill up manually the field business date, as per original transaction date for expense transaction. Afterwards restore the two properties to original values.

Now the retail statement should post successfully.

Monday, August 5, 2019

SQL Server - Delete duplicate rows keeping original intact or single copy

To identify multiple records in a table following is a sample query to execute:

SELECT PERSONNELNUMBER, ATTENDANCEDATE, COUNT(*)
FROM SLJMGATTENDANCETABLE
GROUP BY PERSONNELNUMBER, ATTENDANCEDATE
HAVING COUNT(*) >1;


Following SQL code, will delete all the duplicate records, meaning by it will keep only one record, where by the extra copy will be deleted:

 WITH CTE AS ( SELECT *, ROW_NUMBER() OVER (PARTITION BY WORKER, ATTENDANCEDATE, TIME ORDER BY WORKER, ATTENDANCEDATE, TIME) AS RN FROM SLJMGATTENDANCEEXCELDATA ) DELETE FROM CTE WHERE RN<>1


 

Tuesday, April 16, 2019

D365 - FO - Fixed assets

There are typically two kind of assets in a company's balance sheet. Current assets, which a company exhausts over next year or a business cycle whichever is briefer and fixed assets, which are usually not meant for resell as is case of current assets but for internal use of a company. The useful life of fixed assets usually spans over multiple years. Examples of current assets, Cash, AR, Prepaid Expenses, or Inventory, where as Automobiles, Computers, Buildings, Machinery or intangible assets such as copyright are fixed assets. In an automobile dealership, the vehicles can be used as fixed assets e.g. for an employee or for resale are inventory items. The acquisition of a fixed asset is a balance sheet transaction, in the year of acquisition and posted as an asset to a balance sheet account. Fixed assets are expensed or depreciated over their useful life. There are various depreciation methods. Straight line method divides cost of acquisition over service life of an asset. A local legislation should define the rule for depreciation calculation. A net book value review for some extraordinary occurrences in the market should be held monthly, quarterly, semi-annual or annually and an adjustment either write-up or write-down might be necessary to post in balance sheet. This also represents the price effect if company has to reacquire the same asset from market. However, some countries or regions prohibit write-up of assets. When an asset is sold or scrapped, the asset value (original acquisition price) and accumulated depreciation are reversed to remove them from accounting books and surplus or loss on this transaction is posted to profit and loss statement.

Tuesday, April 2, 2019

AX 2012 R3 - Retail statement posting error - After upgrade CU13 or later - Physical updating quantity in the inventory unit XXX must be other than zero.

After upgrading AX 2012 R3 to CU13 or later an error such as "Physical updating quantity in the inventory unit XXX must be other than zero" may occur on posting retail statement which has already been calculated. The issue is slightly confusing in that the inventory which is allowed for physically negative is also showing such error.

On investigation, it has been found that a bug which already existed, was fixed in CU13 or later. When you calculate the statement, the items are reserved on On-hand inventory which are already in transactions, and a record already exist in RetailTransactionSalesTrans table. The bug was qty for the item which was reserved were not exactly same as the unposted transactions, so it was mismatch which caused the error.

The best solution would be to clear the already calculated retail statement and then re-calculate statement and then post. This solution is tested and it is working in one of the production environment of my client.

However, when you clear the calculated statement, the system will try to un-reserve the qty already calculated, but it might give another error as " Quantity xxx cannot be returned because items have already been returned or marked as open transactions". To temporarily fix this issue for prior upgrade calculated statements, we can disable the validation by commenting the following lines in InventUpd_registered.updateRegisterLess() class method.

    if (addRegistered)
    {
        throw error(strFmt("@SYS15535",addRegistered));
    }

Saturday, March 30, 2019

AX 2012 R3 CU13 - After upgrade the Inventory reports giving error Parameter 'LicensePlateId' does not exist

After  AX 2012 R3 is upgraded to CU13 or later, inventory reports can give error such as Parameter 'LicensePlateId' does not exist. When you deploy the report from AOT, it will give another error such as 'DrillLicensePlateId' is not a member of  'InventJournalTrans'. This is due to binaries not deployed on SSRS service. The issuance of command from MS Dynamics AX Power or Management Shell from Admin tools in Control panel, on elevated level can deploy report as well as required binaries as follows:



Publish-AXReport -ReportName InventJournalTrans


It is better to redeploy all the SSRS reports by issueing following command as it will also re-deploy all (including missing) binaries on SSRS:

Publish-AXReport –ReportName *

AX 2012 R3 - Business connector error on SSRS server


Sometimes due to business connector unavailability following error is produced, which is fixed by re-installing the business connector component from AX Setup afresh. The same can be performed on BC corruption.

Wednesday, March 27, 2019

AX 2012 R3 CU13 - Error on POS launch - LSRetailPosis.POS.Program: System.NullReferenceException: Object reference not set to an instance of an object.


After upgrading AX 2012 R3 to CU13 and above, POS launch may fail with the following error :

LSRetailPosis.POS.Program: System.NullReferenceException: Object reference not set to an instance of an object.
   at Microsoft.Dynamics.Retail.Pos.DataManager.CustomerDataManager.ConvertToTransactionalCustomer(Customer axCustomer)
   at LSRetailPosis.BusinessLogic.CustomerSystem.GetCustomerInfo(String customerId)
   at Microsoft.Dynamics.Retail.Pos.Tax.TaxEngine.TaxEngineServiceProxy..ctor(IApplication application)
   at Microsoft.Dynamics.Retail.Pos.TaxService.Tax.Initialize()
   at Microsoft.Dynamics.Retail.Pos.SystemCore.Services.Initialize()
   at Microsoft.Dynamics.Retail.Pos.SystemCore.PosApplication.Initialize().


The reason is the default customer attached to the Retail store (Retail module -> Common > Retail Channels> Retail stores > Customer group in General tab) does not have an address book assigned to it. If it is so, you may want to run Customer distribution schedule job (1010) to replicate the customer to the POS for the error to be fixed. The job can be found in Retail module > Setup >Retail scheduler > Channel integration > Channel database > Select store > Full data sync (choose 1010). Once the job is applied (Retail > Inquiries > Download sessions > see the status field regularly until applied).

AX 2012 R3 Retail POS Error After Upgrading to CU13 or above - Strong name validation failed security exception


We have faced a scenario when on Windows 2012 Server, the application of CU13 (28-Feb-2019 Kernel), failed the launch of POS with the following detail error in Event Log.

Monday, March 25, 2019

AX 2012 R3 - User facing slow response from AOS - Blocked Sessions

Sometimes the end session by AX administrator or SQL can result into slow response from AOS from AX Client used by the end-user. 


The sessions of the same user with Ending - Blocked status are actual causing slow response due to deadlocks in SQL queries. 

The solution can be deleting the same user from SYSCLIENTSESSIONS table from AX transactional database.

 delete FROM [SYSCLIENTSESSIONS]
  where userid = '<userid>'
  and status = 3 -- means the sessions which are blocked.


Then refreshing the online user session form in AX 2012 - System Admin module will also show the sessions wiped out which were blocked earlier. The end-user will not face the issue of hanging or slow performance afterwards.

Friday, March 8, 2019

AX 2012 R3 - Retail statement posting error "Update for voucher XXXX has been canceled to avoid oversettlement. The settled customer or vendor balance for the transaction must not exceed the transaction amount."


When you post a retail statement in AX 2012 R3, you may face an issue which will restrict to post the statement as follows:

"Update for voucher XXXXX has been canceled to avoid oversettlement. The settled customer or vendor balance for the transaction must not exceed the transaction amount."

Even from AR parameter to give a cushion amount in Maximum overpayment or underpayment value will not work in this case with or without Prompt for over/under payment checkbox.

A temporary work around in the code can be in this case in a class method as follows:

\Classes\RetailStatementPaymentJournal\postPaymentJournalForSales

Find and change the X++ line toSettle = true; to toSettle = false; and after posting the retail statement revert the code change.

Original code:

            toSettle = true;
            totalCreditAmountCur = totalRoundAmountCur;
            lastInvoiceId = transTable.invoiceId;

Fixed temporarily as:

            toSettle = false;
            totalCreditAmountCur = totalRoundAmountCur;
            lastInvoiceId = transTable.invoiceId;

Friday, December 7, 2018

AX 2012 - Another instance of CIL generation is already in progress. Please wait for the operation to complete before retrying.

Some times when multiple developers work on same server they encounter this error when they try to run incremental compile, "Another instance of CIL generation is already in progress. Please wait for the operation to complete before retrying.".


This errors occurs when previously compile is not properly or not completed. It can be resolved by executing following queries directly in Sql Server Microsoft Dynamics AX database.


 select * from SYSLASTVALUE where ELEMENTNAME = 'CIL Generation'  

This will give you the record for CIL generation , after confirming that record exists delete all the records.


 delete from SYSLASTVALUE where ELEMENTNAME = 'CIL Generation'  

Wednesday, October 24, 2018

Re-arming Windows 2012 R2 - Evaluation Version

Many times it is useful to re-arm the Expired Windows 2012 R2 edition when it is an evaluation version. The command is as below:

"slmgr.vbs /rearm"

Afterwards, the server needs to restarted.

The Windows Evaluation Period should now be extended to additional 180 days.

After Server restart , wait a moment and you will find the license has been extended successfully.

Wednesday, October 10, 2018

AX 2012 - Change tracking may cause Db or Specific table synchronization issues

Change tracking on specific table(s) or whole database, may fail sync when run through AX 2012. A sample error is given below when surprisingly the field length shown in Table was smaller than what was shown in AX client.

The object 'I_158INVENTLOCATIONIDX' is dependent on column 'InventLocationID '. ALTER TABLE dbo.InventLocation ALTER COLUMN InventLocationID VARCHAR(20) NOT NULL; failed because one or more objects access this column.

OR 

Msg 5074, Level 16, State 1, Line 1
The object 'DF__INVENTLOC__INVEN__3F7D091C' is dependent on column 'InventLocationID'.
Msg 5074, Level 16, State 1, Line 1
The object 'I_158INVENTLOCATIONIDX' is dependent on column 'InventLocationID'.
Msg 4922, Level 16, State 9, Line 1

ALTER TABLE ALTER COLUMN InventLocationID failed because one or more objects access this column.


Disabling the table change tracking from SQL Server, and then running sync from AX would synchronize successfully and correct the field length size issues as well.

Sunday, September 30, 2018

AX 2012 R3 - Windows 2016 - Realtime Service for Retail - Fix for Server Error in '/CDXRealtimeService' Application

When you have installed and later configured it through Powershell through XML configuration file, you may end up one of the errors in the browser when due to certificate thumbprint issue.

AX 2012 R3 - Windows 2016 - Error during configuration of realtime service - Failed to install Windows Feature [Application-Server].


During real-time service configuration on Windows 2016, which is not supported for AX 2012 R3, we need to do some workaround to install real-time service for retail. First, we need to understand, that real-time service for retail will not get installed by AX Setup if we choose to configure also in one go.

AX 2012 - Multiple AOS Scenario - No connection could be made because the target machine actively refused it :8201

On multiple AOS deployments you may encounter an issue:

Multiple AOS Scenario - No connection could be made because the target machine actively refused it <ip-address>:8201

AX 2012 - Multiple SSRS Deployment Failure - The user or group name '[domain\Machinename]$' is not recognized

When you issue a command in Dynamics AX PowerShell, for deploying multiple SSRS reports such as: 
 
 Publish-AXReport -Id amcsrs -ReportName *

You may encounter an error such as:

Friday, September 28, 2018

AX 2012 - How to avoid to restart AOS for cache refresh on deployment of new objects e.g. SSRS


Sometimes on deployment of new objects, one has to restart AOS to refresh the cache on Server. This one is not good on production server. In order to avoid it, there are four Action menu items, which can be duplicated and set to RunOn: Server in property and then run to cause cache refresh on server. The names of menu items are as below:


\Menu Items\Action\SysFlushAOD
\Menu Items\Action\SysFlushData
\Menu Items\Action\SysFlushDictionary
\Menu Items\Action\SysFlushReportServer

The property RunOn: Called from, can be changed to Server on all of these menu items.

AX 2012 - Setting Batch jobs with Waiting status to Withhold

Many times, it is useful to stop batch jobs already scheduled to run to avoid performance issues on Test or Dev machines. A useful SQL script which can be run on main AOS data DB is as below which will update the batch job status from Waiting to Withhold:


UPDATE BATCHJOB
SET STATUS = 0
WHERE STATUS = 1

AX 2012 - Change tracking huge performance cost - How to disable on SQL Level

I have seen one of the AOS instance, where DB size was grown very huge and performance was a big issue. On investigation, it was found that SQL Production Db was enabled for change tracking for almost 15 days for all the tables. This was disastrous when you have not selectively enabled for necessary tables, but rather for all the tables without any usefulness. Imagine a production database for a retail industry where thousands of transactions daily are inserted in the db.  

However, you cannot simply disable on DB level as shown below, rather you need to run SQL script on production database to disable change tracking firstly on each table level.


Following SQL script is useful for disabling each table level change tracking. However, please bear in mind that firstly stop the AOS prior to running the script, otherwise, the consequence might be DB may go to Recovery state which will take hours to recover.

SQL script to disable change tracking is as follows:

Use [Production DB name];
GO

DECLARE @SQL NVARCHAR(MAX) = '';
SELECT @SQL = @SQL + 'ALTER TABLE ' + s.name + '.' + t.name + 
             ' Disable Change_tracking;' + CHAR(10)
FROM sys.change_tracking_tables ct JOIN sys.tables t 
 ON ct.object_id= t.object_id JOIN sys.schemas s
 ON t.schema_id= s.schema_id;
EXEC sp_executesql  @SQL;

Thursday, September 27, 2018

AX 2012 - Cannot create a record in SysXppAssembly, the record already exists.


An infolog message may appear when you try to Activate/Deactivate e.g. BIServices. This issue will get resolved, once SYSXPPAssembly table is truncated in Model database and removing all the files in XPPIL folder in AX 2012 server physical path.

Finally, after running a fresh and full CIL compile and then Activating the required Service e.g. BI Service will get successful.


AX 2012 - Errors in workflow - Due to issues in CIL (ContractFilter mismatch at the EndpointDispatcher, or SysWorkflowConfigurationService issue)

In AX 2012, the workflow can stop working if there is a mess up in XPPIL (path: C:\Program Files\Microsoft Dynamics AX\60\Server\[AOS-Instance-Name]\bin\XppIL)  folder and SYSXPPASSEMBLY table (where actual IL assemblies are stored) in Model DB, which might not be matching with each other. This can result in unexpected behavior not only in Workflows but other AOT frameworks dependent on the SysOperation framework which depends upon perfectly running IL. It is very important that there should not be any native error in the whole AOT, then only CIL could compile successfully. The SysOperation services will run successfully and the endpoint will be listening after successful CIL compilation.

AX 2012 - Displaying Sales Tax line wise on Purchase order confirmation report

In order to display sales tax on purchase order confirmation report in AX 2012, one need to modify PurchPurchaseOrderDP class. The table where the sales tax will be residing is TaxJournalTrans table, where you can use TransRecId, TransTableId and InventTransId fields to have relationship based upon posted Purchase order journal. For the posted journal, you would need  already available vendPurchOrderJour and purchLineAllVersions table and view buffer in the DP class as shown in the mentioned code. A line needs to be added in the DP class method, setPurchPurchaseOrderDetails,  to assign the value calculated in a customized new method PKR_SalesTaxPerPurchLine() as shown below:

AX 2012 - AOS does not start after DB restoration, Kernel Version Mismatch Error in Event Viewer

When you've restored a main data DB of AX 2012 higher kernel version with installed AOS with lower kernel version, the AOS will not start with an error in Even Viewer. Though it is not recommended on production as Kernel version should match with that belonging to DB, but for development or test machine, there is a manual fix to start AOS.

Thursday, January 22, 2015

AX 2012 - Manually deploying SSRS for multiple SSRS instances

Link to article: AX 2012 - Manually deploying SSRS for multiple SSRS instances using power shell.

Aging period definitions (form) [AX 2012]

Use this form to set up and manage user-defined aging period definitions.

You can use aging period definitions to analyze the maturity of customer accounts and vendor accounts, based on a date that you enter. That date, together with the unit and interval information that you enter on the Periods tab in this form, is used to calculate a date interval for each aging period (column header) in the aging period definition.

Each aging period that you set up for the aging period definition corresponds to a column on the list page or in the form or report when the analysis is performed. The aging periods are shown on the list page or in the form or report in the order in which you set them up in this form. You can change the order of the periods by selecting an option in the Printing direction field.

Link to tutorial

Microsoft Dynamics AX Posting Profile Inventory Transactions in Modules (Sub Ledgers)

Link to article: Microsoft Dynamics AX Posting Profile Inventory Transactions in Modules (Sub Ledgers)

Dynamics AX: Picking, Registration, Reservation, Marking...What’s the Difference?

The different ways of selecting inventory for issue and receipt and their effects on inventory are a source of confusion for many Microsoft Dynamics AX users. The common denominator between them all is this: They are all ways that the user specifies exact inventory (specific to dimension) to be issued or received. Below is a brief definition of each function and an example of its use. The examples shown are not the only ways to perform each function in AX, but a simple demonstration of the functionality.

Dynamics AX 2009 - On Hand Inventory

MS Dynamics AX 2009 has a very detailed information about inventory items; it gives a comprehensive information regarding stock which gives a clear vision about what in stock, what is reserved for customer or to be issued out, what is ordered from vendor or received in, and what have been posted or still in open transaction.

Link to article

AX 2012 - Number Sequence continuous does not generate next number instead zeros

Link to the issue: AX 2012 - Number Sequence continuous does not generate next number instead zeros

In Microsoft Dynamics AX 2012 how to copy configuration and setup data from one environment to another environment.

Link to article: In Microsoft Dynamics AX 2012 how to copy configuration and setup data from one environment to another environment.

Rename Product Dimensions To Match Your Business


Product Dimensions within Dynamics AX are great because they give you four extra elements that you can use to segregate out all of your products, and you can start reducing the number of base product codes that you use. By default the main three dimensions are named Size, Color, and Style, but if you think of your product dimensions in different terms, don’t disregard this feature, because you can rename them to be whatever you like.

Link to article: Rename Product Dimensions To Match Your Business

AX 2012 Retail - Solution to error "Cannot create a record in Staging log (DMFStagingLog). Stage: Source. The record already exists."

Cannot create a record in Staging log (DMFStagingLog). Stage: Source. The record already exists.

Link to solution

Dynamics AX R3 Error in Retail

Solutions to some errors in AX 2012 R3 Retail:

Link to article

AX 2012 - How to Import Model on correct AOS

The article AX 2012 - How to Import Model on correct AOS explains importing model procedure when you are running multiple AOS instances:

Link to article

How to: Export and Import a Model [AX 2012]

This article explains how to import or export a model from/to AX 2012.

Link to the article How to: Export and Import a Model [AX 2012]

Adding users in Management Reporter from AX2012 R2

Facing problem while adding users in Management Reporter from AX2012 R2. This article will explain some solutions to the issues faced while adding users to MR.

Link to article

Dynamics AX 2012 Reporting: How to add company logo into query based report

You need to put a company logo in your SSRS Report, this article will explain about this.

Dynamics AX 2012 Reporting: How to add company logo into query based report: Link to article

AX 2012 - Manually Install SSRS Report Extensions


Some times you need to manually install reporting extensions specially when multiple instances of SSRS.

Manually Run the Install-AXReportInstanceExtensions command [AX 2012]
Read the article

Step by Step Guide How to Install Dynamics AX 2012 SSRS and Analysis Extensions

A tutorial on steps you would like to perform when installing SSRS and Analysis Extensions for AX 2012:

Link to article

AX 2012 - Resolving Compile Errors and Generating CIL is not Optional

Resolving compile errors and generating CIL is not optional in AX 2012. Many errors may arise due to the reason you've not successfully compiled CIL (saved assembly once) after you compiled full AOT.

Read the article

Windows Server 2008 - Administering Active Directory Domain Rename

Windows Server 2008 - Administering Active Directory Domain Rename is help when you need to rename your existing wrongly named domain to a more accurate or precise domain name for your organization. It contains all procedures and precautionary measures you would like to adopt before going ahead with such a crucial and serious procedure:

Link to article

AX 2012 - Data Migration Framework - DMF - Troubleshooting

Very nice article about some mechanics for Data Migration Framework in AX 2012. It may help you in achieving migration while using DMF:

Link to article

Overview of Microsoft Dynamics AX build numbers

Curious to know about build numbers and cumulative updates for AX, this one is the nice place to find build numbers:

Link to article

Delete transactions in Dynamics AX 2012

This will be helpful when you want to delete all transactions but not the primary setup data in AX 2012:

Link to tutorial

Export to Excel with X++ code: the sequel