Quantcast
Channel: Microsoft Dynamics CRM
Viewing all articles
Browse latest Browse all 71679

Forum Post: RE: Create Invoice From Order

$
0
0
Hi mreed, It is possible. Create a new solution for Salesorder. Then add as Entity Salesorder, add Button png icon, add below javascript. Save and publish it. Open Ribbonworkbench. Add button on Salesorder Form maybe after CreateInvoice button. add image of button create all labels add new Commands and in new commands put 1 Action (Javascript Command --> FunctionName: processorder Library: your webresource javascriptcode on solution) Add Enable Rules FormStateRule (InvertResult: True State: Create) CustomRule (FunctionName: isSalesorderFulfilledOrActive Library: your webresource javascriptcode on solution) CrmOfflineAccessRule (InvertResult: True State: Offline) Go to back on Buttons and select Command. Then Publish it. check your button on Salesorder. Below Javascript dont change anything!!! function closeOrFulfillOrder(closedState) { if(!Xrm.Page.data.getIsValid())return; var parameters=[closedState],oUrl=Mscrm.CrmUri.create("/sfa/salesorder/dlg_Close.aspx?closedstate="+CrmEncodeDecode.CrmUrlEncode(closedState)),crmDialog=new Mscrm.CrmDialog(oUrl,null,400,330,null); crmDialog.setCallbackInfo("performActionAfterCloseOrder",this,parameters); crmDialog.show() } function performActionAfterCloseOrder(oResult,closedState) { if(oResult) { var closeOrder={}; closeOrder["newStatus"]=oResult.newStatus;closeOrder["CloseDate"]=oResult.closeDate;closeOrder["Description"]=oResult.description; var fulfilledState=3; if(closedState==fulfilledState)Mscrm.RefreshPageCommandHandler.executeCommand(Mscrm.InlineCommands.OrderFulfillOrder,closeOrder); else Mscrm.RefreshPageCommandHandler.executeCommand(Mscrm.InlineCommands.OrderCancelOrder,closeOrder) } } function closeOrder() { closeOrFulfillOrder(CANCELLED_STATE) } function fulfillOrder() { closeOrFulfillOrder(FULFILLED_STATE) } function processOrder() { Mscrm.RefreshPageCommandHandler.executeCommand(Mscrm.InlineCommands.OrderProcessOrder,null) } function lockSalesOrder() { lock() } function unlockSalesOrder() { unlock() } function isSalesorderActive() { if(window.ORDER_STATE===undefined)return false; if(ORDER_STATE=="Active")return true;return false } function isSalesorderFulfilled() { if(window.ORDER_STATE===undefined)return false; if(ORDER_STATE=="Fulfilled")return true; return false } function isSalesorderFulfilledOrActive() { if(window.ORDER_STATE===undefined)return false; if(ORDER_STATE=="Fulfilled"||ORDER_STATE=="Active")return true; return false } function isSalesorderSubmitted() { if(window.ORDER_STATE===undefined)return false; if(ORDER_STATE=="Submitted")return true; return false } function getProductsForOrder() { getProducts() } function canAppendToCustomer() { if(window.CAN_APPEND_TO_CUST===undefined)return false; if(CAN_APPEND_TO_CUST=="1")return true; return false } function isBackOfficeInstalled() { if(window.IS_BACKOFFICE_INSTALLED===undefined)return false; if(IS_BACKOFFICE_INSTALLED=="1")return true;return false }

Viewing all articles
Browse latest Browse all 71679

Trending Articles



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