Quantcast
Channel: Microsoft Dynamics AX Support
Viewing all 748 articles
Browse latest View live

Dynamics 365 for Operations – Document Routing Agent error “Key not valid for use in specific state”

$
0
0

If you change the login for the document routing agent, you may experience the following error: “Key not valid for use in specific state”

keynotvalidforuseinspecificstate

If you do, then try the following steps to resolve the issue:

  1. Stop the Windows service “Microsoft Dynamics 365 for Operations – Document Routing Service”
  2. Open File Explorer, and go to C:\ProgramData\Microsoft
  3. Rename the folder “Microsoft Dynamics 365 for Operations – Document Routing” to “Microsoft Dynamics 365 for Operations – Document Routing – Old”
  4. Start the Document Routing Agent client application again. You may notice that it triggers part of the setup again to reinstall missing parts, this is ok.
  5. Re-enter in the site and domain parameters again, and login again.
  6. Start again the service “Microsoft Dynamics 365 for Operations – Document Routing Service”

AX for Retail – How to clear a stuck transaction in the MPOS cart

$
0
0

There have been a few instances where MPOS crashes while processing a transaction or the RTS times out saving a customer order.  In normal circumstances, this transaction persists in the cart when you log into MPOS again so that you can complete the transaction.  But it is possible that you may run into an instance where a split tender was performed with a credit card showing processed while the transaction failed to save processing the cash tender as the RTS call timed out. AX is showing this order successfully invoiced, but POS still thinks it needs a payment.  Thus the transaction will not allow you to accept a payment nor void the payment/transaction and it is stuck!

If you are simply looking to remove this recalled transaction from the MPOS cart, follow the steps below:

1. Close MPOS
2. Go to the file location (C:\Users\Administrator\AppData\Local\Packages\Microsoft.Dynamics.Retail.Pos_8wekyb3d8bbwe\AC\Microsoft\Internet Explorer\DOMStore\X2XSTARI\microsoft.dynamics.retail[1]
3. In the Explorer window click View >> Options >> Change folder and search option.

a. Enable the Show hidden files, folders and drives
b. Disable the Hide protected operation system files

011317_2254_AXforRetail1.png

4. Edit the microsoft.dynamics.retail[1] file in NotePad or another editor
5. Search the text file for CART to locate the start of the string <item name=”CART” value =
6. To resolve this issue, you can simply update the text file to remove the transaction details of the CART. What I did was copy the value of an empty cart such as the one below over the value of a cart with an item.

<item name=”CART” value=”{&quot;CartLines&quot;:[],&quot;Id&quot;:&quot;&quot;,&quot;ShippingAddress&quot;:null}” ltime=”2136110528″ htime=”30567907″ />

Spaces were only added in the text of the screenshot below to help pinpoint the CART string value.
(Click picture to enlarge)

011317_2254_AXforRetail2.png

7. Once you have this updated, save the file.
8. Log into MPOS and the cart should be empty again.

Important Note:
You will also want to review the transaction in the RETAILTRANSACTIONTABLE and other related tables in the event that this transaction was partially written. You would want to verify the values in the tables to avoid any Retail statement posting issues or orphaned posted records.

Dynamics 365 for Operations – General Electronic Reporting (GER) and KB

$
0
0
Working on issues round GER – it’s a good habit to check that you are having the latest report configuration. Attached you can find out how to check the version you / or the Partner is working on. In addition, you can find in this document what to do when an issue is resolved by KB.... Read more

INDIA LOCALIZATION: TDS adjustment entry process

$
0
0

 

https://technet.microsoft.com/en-us/library/jj664585.aspx

 

***[BUSINESS PROCESS] ***

Invoice posted using TDS and adjustments are common

 

 

***[REPRO STEPS GROUP] ***

Test done using INMF demo data

 

Prerequisite setups:

 

Note: All setups are as is available in INMF India demo data

  1. TDS setup

    General Ledger>Setup>Withholding tax>Withholding tax codes

 

Select record “Rent”

 


Click on values


2. Setup withholding tax group from GL > setup > Withholding tax > withholding tax group

Select Withholding tax group: Rent

Tax type: TDS


Click Designer


3. Check Vendor and attach TDS group from AP > common > Vendors > all vendors

Create new Vendor “INMF-000014”

Invoice delivery > Withholding tax > Calculate withholding tax is marked

Invoice delivery > Withholding tax > TDS group >Rent


Tax information > PAN information >Status: available

Tax information > PAN information >Number: Filled in


Save and close the form.

 

Scenario 1: Make an adjustment of TDS as in case you want to reverse only the TDS amount and no reversal of original invoice itself

Transaction flow:

1. Post an General journal from GL > Journal > General journal

Name: GenJrn


Click on Lines

Date: 1/11/2017

Account type: Vendor

Account: INMF-000014

Credit: 5000

Offset Account type: Ledger

Offset account: 600150

Withholding tax > TDS group: Rent

 


Click on Withholding tax button to see withholding tax calculation


Click close

Post the journal and check voucher


Inquiries>Voucher


Click posted Withholding tax


2. Post an TDS adjustment by using Create Withholding tax Journal function from GL > Journal > General journal

Name: GenJrn


Click on Lines


Click Functions>Withholding tax journal



Fill in details as below

Tax group: Rent

Tax Direction :Payable

Vendor : INMF-000014


Click select transaction to select the voucher we want to adjust TDS for


Then click Reference to tax journal


Note that the Voucher ,Default offset account type and Default offset account gets populated by the system


Now enter -5000 in the amount origin field as we want to reverse the effect of TDS alone


Click Calculate tax


Click transfer

The Tds adjustment line gets transferred to the GL journal lines


Post the journal and check voucher


Inquiries>Voucher


We see that the 202102 TDS payable account is getting reversed for 500 Rs correctly

Click posted withholding tax


Step 3: Check Vendor Balance

INMF/Accounts payable/Common/Vendors/All vendors


Click Transactions


We see that the vendor balance is -5000 because we just reversed the TDS amount alone

Step 4: Now run TDS settlement

INMF/General ledger/Periodic/India withholding tax/Withholding tax payment

Fill in details as shown below

 


Now check Audit trail

INMF/General ledger/Inquiries/Audit trail


Check last entry Sales tax reporting>voucher transactions


Posted Withholding tax


 

Notice that that both the original TDS and Reversed TDS amount are accounted and hence net effect is zero which is the expected result

Scenario 2: Make a reversal of original vendor invoice along with TDS itself

Transaction flow:

1. Post an General journal from GL > Journal > General journal

Name: GenJrn


Click on Lines

Date: 1/11/2017

Account type: Vendor

Account: INMF-000014

Credit: 6000

Offset Account type: Ledger

Offset account: 600150

Withholding tax > TDS group: Rent



Click on Withholding tax button to see withholding tax calculation


Click close

Post the journal and check voucher


Inquiries>Voucher


Click posted Withholding tax


Step 2: To reverse the whole invoice along with TDS

INMF/Accounts payable/Common/Vendors/All vendors

Select vendor INMF-000014


Click Transactions

Selct the invoice posted with 6000(Base amount)-600(TDS)=5400 Rs


Click Reverse transaction and say ok



 


Check Voucher


Posted withholding tax


We see that the entire invoice along with TDS is reversed correctly


Step 3: Now run TDS settlement

INMF/General ledger/Periodic/India withholding tax/Withholding tax payment

Fill in details as shown below


Click Ok

Now check Audit trail

INMF/General ledger/Inquiries/Audit trail


Check last entry Sales tax reporting>voucher transactions


Posted Withholding tax


 

Notice that that both the original TDS and Reversed TDS amount are accounted and hence net effect is zero which is the expected result


 

How to use inventory value report: part 2

$
0
0

In this part, we will discuss the most import parameter: inventory value report ID. You can go to Inventory management/Setup/Costing/inventory value reports to create IDs. (In AX 2009, the menu path is Inventory management/Setup/inventory value). You can create different IDs for different reporting requirement. For example, you can create the report only showing the total financial amount for financial staff and create a report only showing physical inventory for warehouse management staff.
When you try to create a inventory value report Id, you need to deal with a lot of parameters. Below are the explanations and best practice when using these parameter.
For the columns of financial position, you can only tick ‘inventory’ if you want to reconcile the inventory value with inventory G/L accounts balance. Or you can only tick ‘WIP’, if you want to reconcile the WIP value with WIP G/L accounts balance.
If you tick the ‘WIP’ option, only the physical quantities and amounts of inventory in WIP status will show in the report. In WIP status means production orders that have been picked or reported finished but not ended.
Please enable the option ’print cumulative account values for comparison’, if you want the G/L accounts balance showing in the report. By doing this, you don’t need to check the trail balance.
After you enable this option, you need to fill in the G/L account you want to reconcile.
For the ‘Inventory dimensions’ area, you can select the dimensions that you want to show in the report. Please be noted that only the dimensions that have ‘financial inventory’ option enabled can be showed in the report, otherwise you will only see blank columns. For more information, you can check this
The ‘Summarize’ option is ticked when you only want check the total inventory quantity and inventory amount. If it’s not ticked, the report will show both physical and inventory financial values.
The ‘Included not posted to ledger’ option is not recommended to ticked because those transactions that never post to G/L should not be included when you doing the inventory reconciliation.
The ‘Average Unit Cost’ option is suggested to be ticked if you want to check the average unit cost. The ‘Average Unit Cost’ is just a simple calculation: total quantity divided by the total amount.
The ‘Print Total’ option can only be ticked when the ‘summarize’ option is not ticked. The report will show additional two columns for the total quantity of inventory physical and financial quantities and the total amount of inventory physical and financial amounts.
The ‘Resource ID’ mostly means the item number.
The ‘Resource Group’ mostly mean item group.
If either ‘Resource ID’ or ‘Resource Group’ are not ticked, you will only see a total inventory value based on the inventory dimensions you selected.
The option ‘Detail Level’ enable the user to select different view of the report. If you want to view the report per transactions, you can select transactions. Otherwise, please select ‘total’. Please be noticed that there might be slow performance issue f you are trying to view a large volume of data on ‘transactions’ level
The option ‘Include beginning balance’ is only available when you select ‘transactions’ in detail level option.
Note: There is a known issue that incorrect figure will show in the report if the from and to date are the same day and the option ‘Include beginning balance’ is ticked. Please do not use in this way.

How to use inventory value report: part 1
How to use inventory value report: part 3
How to use inventory value report: part 4

Credit memo functionality on Dynamics 365 MPOS

$
0
0

Credit memo functionality on Dynamics 365 MPOS

Steps (please find the document with screenshots attached credit-memo-functionality-on-dynamics-365-mpos).

1.Set up Payment method with the Operation name ‘Pay credit memo’ and associate appropriate Posting accounts in it

Retail and commerce/Channels/Retail stores/All retail stores/select the store HOUSTON/Tab Set up/Payment methods/in our case it is called Voucher:

2.Issue Credit Memo

Go to MPOS/Show journal/select sale transaction/ Select Return transaction/Return/select Products/Return/select Reason for return/OK.

Go to Actions/Transaction options/Issue credit memo:

Credit memo will be issued and transaction will be posted.

3.Now we can check if credit memo has been issued

Retail and commerce/Channels/Retail stores/Credit memos:

Credit memo is issued with the number 1.

4.Apply Credit memo

Enter Sales Transaction in MPOS and then pay it using the Payment method ‘Voucher’ (which has an Operation name ‘Pay credit memo’):

Enter Credit memo number 1 (the number we see in step 3):

Click Check amount, we see Available amount:

Click the button on bottom ‘Tender Payment’:

5.Now we can check if Credit memo has been applied

Retail and commerce/Channels/Retail stores/Credit memos:

You will notice that Applied check box is now marked, Applied amount and Applied date are filled in.

 

How to use inventory value report: part1

$
0
0

 

Inventory value report was released from AX 2009 SP1. It’s a very powerful report. Most of the users uses this report to do reconciliation between general ledger and inventory. In this article, we will discuss how to use this report to do the reconciliation between general ledger and inventory.

When we try to view inventory report, we need firstly define the below parameters. Let’s firstly explain the Date interval parameter. The ‘Date interval code’ is used when you want to view the predefined period instead of giving the ‘From date’ and ‘To date’. For example, if you select ‘current period’ in this parameter, AX will calculate the ‘From date’ and ‘To date’ based on the current AX session date. Let’s say the current AX session date is Jan 13 2017, then the ‘From date’ is Jan 1 2017 and the ‘To date’ is Jan 31 2017. If you don’t use date interval code, you can manually filling the ‘From date’ and ‘To date’ based on your need. Actually, ‘From date’ doesn’t change the report figures as the report will calculated the inventory value/quantity and GL balance cutting off on the ‘To date’.

 

There is one known issue. When you select the same date for both ‘From date’ and ‘To date’ and also enable ‘include beginning balance’ option in inventory value report ID, you may get incorrect beginning balance. This is a by-design scenario.

All the filters in the ‘inventory value’ section will be applied to the inventory transactions but not the G/L balance. So, when you try to use these filters, please keep this in mind. Otherwise, you may see the discrepancy between inventory and G/L account which is caused improper usage of the filters. This topic will be discussed furtherly in the following parts.

In Part 2, we will discuss how to create the most import parameter: inventory value report ID.

How to use inventory value report: part 2
How to use inventory value report: part 3
How to use inventory value report: part 4

How to use inventory value report: part 3

$
0
0

In this part, we will discuss the columns’ meaning showing in the inventory value report after you create the inventory value report ID. For how to set up the inventory value report ID, please click here.
In AX, there are two import conceptions, financial updated and physical updated. Financial updated means the inventory transactions are already invoiced (For production orders, it’s production order end.). Physical updated means the inventory transactions are not invoice but received or shipped. (For production order, it means material picked or production order report as finished). After understanding the two concepts, it will be easy to understand the below columns.
Inventory: Financial Quantity – the quantity that are financially updated.
Inventory: Financial Amount –the amount value of inventory that are financially updated.
Inventory: Physical Quantity Posted – the quantity that are physical updated.
Inventory: Physical Amount Posted – the amount value of inventory that are physical updated.
Inventory: Physical Quantity Not Posted –the quantity that has inventory transactions but not posted to the GL. For example, you have item model group which has the options ‘post physical inventory’ and ‘post financial inventory’ disabled. Then you have an item which linked to this item group. Then you have a purchase order, you receive it and invoice it. Then if you check the inventory value report for this item, you will see the quantity and the value in this purchase order are actually under the column ‘Inventory: Physical Quantity Not Posted’ and ‘Inventory: Physical Amount Not Posted’
Inventory: Physical Amount Not Posted – please do not include this amount when you do the inventory reconciliation because this amount is not post into G/L.
Inventory: Quantity –the total quantity of all the qty columns in the report.
Inventory: Amount – the total quantity of all the amount columns in the report. Like the note above, please do not use this column to do the inventory reconciliation if you have the ‘Inventory: Physical Amount Not Posted’ showed in the report. You need to exclude ‘Inventory: Physical Amount Not Posted’ from the total amount.
Average unit cost – total amount divided by total quantity.
How to use inventory value report: part 1
How to use inventory value report: part 2
How to use inventory value report: part 4


How to use inventory value report: part 4

$
0
0

In this part, we will discuss how to use inventory value report to do inventory reconciliation.
Firstly, let’s imagine a company who has two item groups: Bike and Accessory. The inventory GL account for Bike is 140100. The inventory GL account for Accessory is 140200. Then we have a total GL inventory account 149999. In the total GL account 149999, we set up the account interval from 140000 to 149998.
In both item groups posting profile, packing slip/issue and product receipt /purchase, inventory receipt are all set up with the same GL account. That means both physical inventory and financial inventory are using the same GL account.
At the end of year 2016, we begin to do the reconciliation for the total inventory GL account 149999. In inventory value report ID, we enable the option ’print cumulative account values for comparison’ and input 149999 in the inventory account. We also enable resource group and total. Also please do disable the option ‘included not post to ledger’. This has been discussed in the previous article that ‘Inventory: Physical Amount Not Posted’ should not be included in the reconciliation.
So, you can see the ‘Inventory Amount’ in the report for both item groups. You can also see the closing balance for 149999, 140100 and 140200.
Based on the explanations we discussed before in the part 3, you should do the reconciliation as below:
• The value in the column ‘Inventory Amount’ for both item groups -> The balance of 149999
• The value in the column ‘Inventory Amount’ for item group Bike -> The balance of 140100
• The value in the column ‘Inventory Amount’ for item group Accessory -> The balance of 140200
Normally, we recommend to use the same GL accounts. It happens that the user set different accounts for packing slip and issue or product receipt and purchase. In this situation, you cannot use the ‘Inventory Amount’ value to do the reconciliation. Do you remember the conceptions: physical update and financial update we explained in part 3? You need to reconcile the different GL accounts with ‘Inventory: Financial Amount’ and ‘Inventory: Physical Amount Posted’.
If the user also want to check the quantity, you should use the total quantity = Inventory: Financial Quantity + Inventory: Physical Quantity Posted + Inventory: Physical Quantity Not Posted
Hope the above info can help you during your reconciliation. I believe your next question might be how to deal with the situation that there is discrepancy between inventory value and GL balance. We have another very powerful report named potential conflict report. You can use it to drill down the reason why there is discrepancy. In fact, we recommend to run it periodically, like weekly or bi-weekly. So, you can be aware of the discrepancy earlier and only need to work on a very small data set to find the reason.
There will be articles in future about how to use potential conflict report. I will add the links here if they are published.
Again hope the above info can help. Enjoy!
How to use inventory value report: part 1
How to use inventory value report: part 2
How to use inventory value report: part 3

Using Task Recorder in Dynamics 365 for Operations to report application issues

$
0
0

When you experience an application issue and want to report it to Microsoft support team it takes some time and effort to describe the repro steps to the engineers. What can help speed up the process is the Task Recorder. Task Recorder is a tool that can log every click and input you make in Microsoft Dynamics 365 for Operations.

If you have an environment with Microsoft Dynamics 365 for Operations and Contoso Demo database please follow the below simple steps to record your steps to reproduce the problem:

  1. Click Settings > Task recorder in the right top corner
    taskrec1
  2. Choose Create recording
    taskrec2
  3. Provide a name and click Start
    taskrec3
    Notice that there will be a red dot indicating that the recording is in progress
    taskrec4
  4. Reproduce the scenario keeping in mind that we will be able to play it back only if you use standard demo data. If you use custom records or setup in the scenario please ensure you demonstrate the process of their creation or set up of the parameters.
  5. Once the scenario is reproduced click Stop button
    taskrec5
  6. Click Save to this PC and Export as Word document and attach both files, .axtr and .docx, to the support ticket.
    taskrec6

This should take out all of the guess work for support engineers and developers as it will point them to the exact navigation path while they are walking through the step by step process.

Read more

Export Reports to Excel using Management Reporter in D365 for Operation.

$
0
0

You can export many thousand lines to Excel from MR reports. In this way we do not hit the design limitation in Dynamics 365 for Operation when we export 2000 lines.

For illustrational purposes, the default report Ledger transaction list will be used.

The report is generated for period 12, base year 2014.

It is generated at Financial, Account and Transaction detail level.

Once generated, click Export:

The export to Excel will start.

Once completed, you will see a dialogue box at the bottom of the screen in IE:

Here Open is chosen:

There are three sheets, one for each detail level.

You can generate the report to a single worksheet, by using this setting:

Result:

The below shown is the end of a report generated with the same parameters:

The limit for exporting lines to Excel is based on Excel limits.

 

author: Anne Schwarz-Nielsen

AX for Retail: Instant Email Receipts in Enterprise POS (EPOS)

$
0
0

Dynamics AX For Retail Enterprise POS (EPOS) has functionality to email receipts but the implementation of the feature has a few tradeoffs:

  • Email does not get sent immediately at the conclusion of the transaction.  Instead, the process goes like this:  1) a transaction is uploaded to HQ (via P-job); 2) it gets calculated on a statement; 3) it then gets posted via statement posting; 4) finally, the Send Email Receipts batch process runs and sends the email.  Statement posting is usually done nightly, so this means emails usually won’t get sent out until the next day.  While a simple customization will make Send Email Receipts send email for unposted transactions, there is still a lag until the P-job uploads the transactions.  Randy Higgins has a good blog post on how this process works.
  • Generation of the receipt is done via an SSRS report.  This adds quite a bit of overhead to the process.
  • Receipts are sent via a PDF attachment instead of the body of the email.
  • Changing the look and feel of the receipt means customizing an SSRS report instead of using the receipt designer.  This means that the emailed receipts will look very different than the printed receipt.

These limitations are largely overcome in the Modern Point of Sale (MPOS) for AX 2012 R3 and Microsoft Dynamics 365 for Operations:

  • Email is sent via SMTP immediately at the conclusion of the transaction.  This is done with a Realtime Service call to Headquarters.
  • The receipt is sent in the body of the email message.
  • Generation of the email receipt is done by the MPOS application.  This is done by using the same layout as the printed receipt.

Randy’s follow-up blog post for MPOS goes through the details of how this process works.

Ideas for Improvement

Because upgrading to MPOS is not an option for some customers, I looked into some options for improving email receipts in EPOS.  Here are a few ideas I came up with:

  • Change the Send Email Receipts batch process to forego SSRS and generate a message body (HTML or simple text) and send directly.  This would get past the SSRS performance issue and PDF attachment, but would be a lot of X++ development and would still not necessarily match the printed receipt.  It would also not get past the lag of needing to upload the the transactions via the P-job first.
  • Have EPOS generate and send an email directly via SMTP without calling Realtime Service.  This would eliminate the Realtime Service call at the end of each transaction, but it would also mean managing SMTP communication directly from each EPOS instance.  This would also mean database changes (EPOS would have to have information about its SMTP server) and making sure that SMTP communication from dozens or hundreds of different IP addresses is healthy.  I like having AX manage the SMTP traffic and besides, EPOS can call a Realtime Service call just as easily as MPOS can.
  • Mirror the MPOS functionality as much as possible as an EPOS customization.  I settled on this one so as to not introduce a third way of emailing receipts:  there is still just the “MPOS way” and the “EPOS way.”

Customization Approach

There are really only a few things that the customization has to do:

  • Generate the email body of the receipt
  • Determine the email address to send it to
  • Call the same Realtime Service method that MPOS does to send the message

Realtime Service call from PostEndTransaction Trigger

As a refresher, I talk about customizing Realtime Service (previously Transaction Service) in this blog post.  In this case, the X++ work is already done for us since we’ll be using the same method that MPOS calls:  SendEmail.  A good place to add this call is in the PostEndTransaction trigger (in the TransactionTriggers project).

The RetailTransactionService::SendEmail X++ method takes the following parameters:

  • SysEmailId emailId:  This is the email template as defined in Organization Administration > Setup > E-mail Templates.  MPOS hard-codes this to “EmailRecpt” so we’ll do the same.
  • CustLanguageId languageId:  This is the language of the EPOS client.  We have this available in the System.Threading.Thread.CurrentThread.CurrentUICulture.Name variable.
  • Email email:  The recipient’s email address.  EPOS already has logic to ask the user to confirm an email address when needed.  This gets stored to the RECEIPTEMAIL column of the RETAILTRANSACTIONTABLE and is used by the Send Email Receipts batch job.  We can use the same value in our trigger:  retailTransaction.ReceiptEmailAddress
  • str serializedMappings:  This is a series of key/value pairs for substitution in your email template.  For instance, if you have a %customername% in the body of your email template, you would send in the pair “key: customername, value:Contoso Entertainment” as part of this XML.  As noted in Randy’s blog post, MPOS only sends one key/value pair:  %message%.  This means that we will send the entire receipt as this one key/value:  “key: message, value: a big string for the entire receipt”.
  • str xmlData:  Not used.
  • boolean isTraceable:  Hard-coded to false.
  • boolean isWithRetries:  Hard-coded to true.

Note that I pulled this from MPOS code in the SDK:  Retail SDK CU9\Commerce Run-time\Workflow\Orders\GetReceiptRequestHandler.cs (the parameters are in a different order).

In our EPOS code, our Realtime Service call looks like this:

01a - Email RTS Call

Getting the Receipt Text for the Email Body

The text of a printed receipt is generated in the Printing service.  We could repeat that logic in our PostEndTransaction trigger but that seems like an unnecessary task when the work has already been done for us.

Keep in mind that receipt printing is pretty simple:  using a form layout as defined in the Receipt Format Designer, data from the Retail Transaction object is converted to a simple string of formatted text.  This is then sent as-is (with some simple formatting) to the printer.  For our customization, we will intercept that string and save it to a PartnerData variable on the transaction (see this blog post for information about PartnerData).  This value will then persist to our trigger and we can use it as the body of the email.

This can be done with a small customization to the PrintFormTransaction() method in Services\Printing\PrintingActions.cs:

02 - Save Email Body PartnerData

Pulling it Together:

The text that comes back from GetTransformedTransaction has some special formatting characters which need to be cleaned up.  This can be done in the trigger (more code taken from the MPOS SDK):

03 - Cleanup Characters

Note that this is essentially the same code from MPOS (GetReceiptRequestHandler.cs).

Also, even though we are only sending in a single key/value pair, to make it consistent with MPOS, it still needs to be sent in as a serialized collection.  I’ve added a helper class and a couple helper methods for this usage:

04 - Serialized Collection

Finally there is some simple logic of whether to send the message and some basic error handling:

05 - Should we send

06 - Error Handling

 

Wrap-up

If things work correctly, you can test it with a customer that has an email address associated.  EPOS will prompt the user to confirm or change the recipient’s address:

07 Email Address

And if you are using smtp4dev for your testing, you’ll see the message come across:

08 Email Received

09 Receipt Body

 

You’ll find the the full source code for this customization attached below and it can be used as-is.  I’ve included the baseline R3 CU12 versions of the files from the SDK which can be used for code diffs.

There are a few areas that you might want to improve upon:

  • The receipt email depends on a Realtime Service call.  If this call fails the user will get a message but there is no retry logic in place (which is is the same limitation as MPOS).  You may want to add some error handling or a mechanism to track failed messages.  Also, if Realtime Service connection is lost, it may add processing time to the transactions before a timeout occurs.
  • For retry logic, you could look into adding a button on the Show Journal page to re-send the email message.  Alternatively, it might be useful to have the ability to send an email directly from AX.
  • By default, EPOS will only prompt to send messages for named customers that have an email address associated with their account.  You may want to add UI and logic to prompt for an email receipt for one-off customers as well.
  • If you look closely at the email body above you’ll notice that the horizontal spacing is not implemented correctly.  I noticed this as I was writing up this post and it is also an issue in MPOS.  Keep an eye out for an update to this article when I find a solution for that problem.

Code Sample

LCS Crash and Hang Analysis Discontinued

$
0
0

The LCS Crash and Hang analysis feature, which allowed automated analysis of DMP files collected from AX 2012, is being discontinued.

Following recent improvements in our cloud infrastructure, the mechanism that enabled the automated analysis of DMP logs is no longer compatible and will not be supported anymore.

As an alternative, we have published an article describing how DMP files can be analysed manually using debugging tools and the LCS issue search: Extracting Information from Crash and Hang Dumps.

If a more in-depth analysis is required, Microsoft Support remains prepared to assist you.

How to set email notification for Workflow in Dynamics 365 for Operation

$
0
0

The emails notification will not be send if email template will not be set up on the workflow configuration:

pic1

Depend on if the workflow is global or company related there are different ways you need to set it up:

  1. For the company related workflow you need to set it up in:  Organization administration > Setup > Email templates
  2. For the global workflow you need to set it up in: System administration > Setup > Email > Email messages

How to set up email you can find here (the doc is AX2012 related but it is valid for Dynamics 365 for Operation): https://technet.microsoft.com/en-us/library/aa834423.aspx

The other think you need to check in the user options you need to make sure that Send notification in email is set to Yes:

pic2

 

To set up email parameters pleaase follow: https://ax.help.dynamics.com/en/wiki/configure-email/

Configuring HTTPS with Management Reporter CU16

$
0
0

Management Reporter CU16 offers a new HTTPS feature to enable encrypted communication between the Management Reporter server and client (Report Designer, Report Viewer and the web client).

This article will guide you through setting up the HTTPS feature in CU16. It is recommended that you test this in a test environment to confirm that the HTTPS feature works for your configuration. If you are interested in deploying the HTTPS feature in a production environment, then it would be encouraged to use a signed SSL certificate obtained from a Certification Authority (CA).


Dynamics 365 for Operations – GER and KB

$
0
0
Three ways to get corrections for Generel Electronic Reporting ger-and-kb... Read more

Dynamics Document Routing Agent unable to authenticate to the Print Server (Impersonated Print User)

$
0
0

Scenario:

There have been several cases in the past few months that customers and partners have been requesting how to get Dynamics 365 for Operations Document Routing Agent (DRA) to print documents and send documents to a Network user document assigned print queue, so that a user can identify them themselves at a network printer and only their print jobs will be shown on the printer.

Issue has been reported so far in Dynamics for operations version update 2, 3 and 4

Issue:

DRA is assigning the service account or local account of the Server/PC that the DRA is installed on, to the document being printed. Once the document is sent to the Network Printer server queue the document has lost the name of the user printing the document and replaced by local/service server name which the printer server does not recognize and the document is deleted or does not register on the network printer for the user creating the print job.

The DRA is made by design to print documents in bulk and not to a user assigned print queue.

Official workaround:

The official workaround from the Dynamics 365 for Operations product team, is to print any document from Dynamics to a PDF format into a shared network folder. Then get the user to print PDF from that shared network folder to the print queue.

Other workaround is to output the print document to latest version of Chrome then print from Chrome by network user to print queue.

Other suggested workaround that could be offered but maybe not suitable for users and security:

  • To Assign to the Print Server, the Service/Local account name that the server/PC uses with DRA installed on (DRA changes the document assignment user name to). The Printer Server should accept this user name, but only problem faced is that the Network printer now shows everyone’s print jobs on the printer under one account and could be very hard to find each users document in the single queue.

Author: Jason Stock

Microsoft Dynamics 365 Support Engineer

Dynamics Document Routing Agent run as a service

$
0
0

If you want to run the DRA (Document Routing Agent) as a service, you need to:

  1. Login to the server with the account that should run the service.
  2. It should also be the account that runs the DRA App.
  1. Start the DRA App with the user and activate the printer.
  2. Mark DRA to run as a Service
  3. Start service with the same user.

(one account for all – Login to server, run service, start DRA App)

Reason for this is that the account that is running the Service needs to have the printer mapped and full access to it.

As well, the service has then the permission to pick up the print jobs from the Azure blob.

Here is the link on how to install the Document Routing Agent to enable network printer devices and how it is used.

https://ax.help.dynamics.com/en/wiki/configuring-the-document-routing-service-to-enable-network-printer-devices/

Author: Uwe Zimmermann

Microsoft Dynamics 365 Support Escalation Engineer

Dynamics Document Routing Agent unable to sign-in

$
0
0

There have been several reported cases with signing into Dynamics Printer Routing Agent.

Issue:

Reported Dynamics versions Update 2, 3 and 4.

Dynamics version when signing into the DRA an error appears.

Cause:

Customer has install warehouse app into their Dynamics environment.

See following link and see step 8 with in this webpage

https://ax.help.dynamics.com/en/wiki/install-and-configure-dynamics-365-for-operations-warehousing/

Setting in Active Directory App ID URI needs to be set to a fictitious URI with no link to the Dynamics Environment or any of them.

Additional Steps are:

  1. Enter the sign-on URL, which is the application URL in your tenant, the root Operations URL. The sign-on URL is currently not being actively used in authenticating the warehouse app, but is a mandatory field. Enter the same URL in the App ID URI field but change it slightly so it does not represent anything of use in the Environment.
  2. Check if you are using warehouse app that your mobile apps are still working

 

Please note that article below may change in the future due to this problem being identified.

https://ax.help.dynamics.com/en/wiki/install-and-configure-dynamics-365-for-operations-warehousing/

Author: Jason Stock – Microsoft Dynamics 365 Support Engineer

Co Authors: Czeslawa Langowska Vliegen, Uwe Zimmermann – Microsoft Dynamics 365 Support Escalation Engineers

D365 for Operation CSS Global support incident closure procedure for support incidents involving a bug

$
0
0

Process:
Support incidents will be archived for D365 for Operations incidents involving a bug at the time bug information is available in Lifecycle Services (LCS)

Example:
D365 for Operations support incident created
Support incident is researched and found a code change is required by Microsoft
Bug for a hotfix request is created
Bug is triaged and accepted, bug request is in a created state

Bug information is available in LCS (at this point case is archived)
LCS link is provided for continued review of bug status by customer
– Capability for customer to receive external notification of bug resolution
– Information is LCS contains workflow of bug with status information
– Created (1 of 3) – Investigating a fix (2 of 3)
– Quality Assurance (3 of 3)
– Conclusion of quality assurance results in resolution of the bug

d365
Example of information which could be provided in a D365 for Operations support incident involving a bug:  Below is a summary of the case for your records

Symptom:
< Scope Issue Statement>

Cause:
Break/fix support incident

Resolution:
Indicated below is the LCS link for the hotfix request, you will be able to track the workflow of the issue in LCS:
‘indicate LCS link’

Three status values are provided in LCS for a hotfix request, after completion of Quality Assurance status a resolution will be available for consumption.
Status Values:
Created (1 of 3)
Investigating a fix (2 of 3)
Quality Assurance (3 of 3)

Subscribing to the LCS issue notification feature allows for notification when a resolution is available.

URL for hotfix download:
– Indicated in LCS issue notification email
– Search on the Bug Id in issue search will navigate to new site containing resolution
Using the initial URL will not bring you to the resolution page as a new page is created at time of resolution

At this time, I will be closing this incident, a hotfix request has been enabled as a technical solution for this support incident.

  • If a hotfix is provided for this issue and a technical issue arise when attempting to implement the hotfix, please create a new support situation with our development support team for further assistance.
  • If a cumulative update is indicated for this issue and a technical issue arise when attempting to implement the update, please create a new support situation with our development support team for further assistance.
  • If after implementation of the hotfix, there is still an issue.       Please create a new support incident as new code has been introduced to the system. Indicate the KB implemented and specific repro steps.
  • If after implementation of a cumulative update, there is still an issue. Please create a new support incident as new code has been introduced to your system. Indicated the KB implemented, CU build, and specific repro steps.

In some incidents, it is determined a hotfix will not be supplied for a situation, in these instances a description will be provided indicating why the decision for no change was made

As this case is related to a product issue it will be closed as non-decrement, meaning you will not be charged for this case.

You may receive an invitation from Microsoft to complete a brief web survey.  Your feedback is very important to us and we use it to continually improve our service.  We would appreciate it if you can take the time to complete this survey.

Viewing all 748 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>