Personalized Community is here!
Quickly customize your community to find the content you seek.
Now Available in Community - New TechTalk Videos for 2020
Read More about New TechTalks for 2020
2020 Release Wave 2Discover the latest updates and new features to Dynamics 365 planned through March 2021.
Release overview guides and videos Release Plan | Preview 2020 Release Wave 2 TimelineWatch the 2020 Release Wave 1 virtual launch event
Ace your Dynamics 365 deployment with packaged services delivered by expert consultants. | Explore service offerings
Connect with the ISV success team on the latest roadmap, developer tool for AppSource certification, and ISV community engagements | ISV self-service portal
The FastTrack program is designed to help you accelerate your Dynamics 365 deployment with confidence.
FastTrack Program | Finance TechTalks | Customer Engagement TechTalks | Upcoming TechTalks
Hey everyone,I am trying to settle customer and vendor transactions (payments/invoices) via a batch job. From what I have noticed the batch job seems to be working fine during vendor transactions settlement, but during customer transactions settlement this error shows up randomly "BOX API can't be used from non-interactive sessions".The confusing thing is this was working fine before (for both customer and vendor transactions) but now seems to be working only for vendor and not for customer transactions. Does anyone have any information regarding this particular error or what might be causing this during settlement via batch jobs?EDIT 1:From what I can see from the trace, the error seems to be popping up in CustOpenVendTransManager::updateTransMarked().I am further trying to pinpoint from where the error is thrown and will update the post accordingly.EDIT 2:The method is calling a box message in code line mentioned below. The error is most probably popping up due to the Box::yesNo() method. I will be further debugging the whole process to ensure that's the case and will fix it accordingly.Thank you Sohaib Cheema and Sukrut Parab for answering and pointing me in the right direction.
if (skipPrePaymentSettlementWarning || !custVendTrans.Prepayment || Box::yesNo("@SYS68879", DialogButton::No) == DialogButton::Yes)
In general error message is asking you for about use of BOX::AnyFunctions (which should be avoided ins such cases)
Because BoxAPI prompts the users for things such as “Please choose Yes/NO”
If things are being run in batch mode, this should be avoided as it could be a non-interactive session, what if batch job is running in the night. Watch the code where it’s using BOX API code and consider replacement for those areas.
When untry to settle transactions , there is some box message (I don't remember exactly now ) pops up from the static method u mentiined. If you want to avoid it ,just duplicate the method ,remove box message and use it in your batch code.
Business Applications communities