ClassDeclaration NoYes printReturnFormChoice;- additional checkbox to
public boolean modified() { boolean ret; ret = super(); printReturnFormChoice = printReturnForm.value(); return ret; }- SalesEditLinesForm class
boolean PrintReturnForm() { return false; }- SalesEditLinesForm_PackingSlip class
boolean printReturnForm() { return true; } // change printExtraDocuments method to following look: protected boolean printExtraDocuments() { return this.printEntryCertificate_W() || this.PrintReturnForm(); }- SalesFormLetterContract class:
// To classDeclaration NoYes printReturnForm; str printerSettingsReturnForm; // Add both variables to ParmListSales macro [DataMemberAttribute] public NoYes parmPrintReturnForm(NoYes _printReturnForm = printReturnForm) { printReturnForm = _printReturnForm; return printReturnForm; } [DataMemberAttribute] public str parmPrinterSettingsReturnForm(str _printerSettingsReturnForm = printerSettingsReturnForm) { printerSettingsReturnForm = _printerSettingsReturnForm; return printerSettingsReturnForm; }- SalesFormLetter class
public boolean printReturnForm(boolean _printReturnForm = salesFormLetterContract.parmPrintReturnForm()) { return salesFormLetterContract.parmPrintReturnForm(_printReturnForm); } public container printerSettingsReturnForm() { return SysOperationHelper::base64Decode(salesFormLetterContract.parmPrinterSettingsReturnForm()); } protected void updatePrinterSettingsReturnForm(container _printerSettings) { salesFormLetterContract.parmPrinterSettingsReturnForm(SysOperationHelper::base64Encode(_printerSettings)); } /// <summary> /// Modifies the printer settings for return form by using the standard printer settings dialog box. /// </summary> /// <param name="_salesFormLetter"> /// The <c>SalesFormLetter</c> class where the printer settings for return form are being modified. /// </param> /// <returns> /// true if the settings were modified; otherwise, false. /// </returns> static boolean callPrinterSettingsReturnForm(SalesFormLetter _salesFormLetter) { SRSPrintDestinationSettings printSettings = new SRSPrintDestinationSettings(_salesFormLetter.printerSettingsReturnForm()); boolean ok = SrsReportRunUtil::showSettingsDialog(printSettings); _salesFormLetter.updatePrinterSettingsReturnForm(printSettings.pack()); return ok; } public static void SLNCheckClientOutput(XppPrePostArgs _args) { SalesFormLetter SalesFormLetter = _args.getThis(); boolean ok = _args.getReturnValue(); boolean showError = _args.getArg('_showError'); if (SalesFormLetter.printReturnForm()) { if (FormLetter::isClientOutput(SalesFormLetter.printerSettingsReturnForm())) { ok = showError ? checkFailed("@SLN6553") : false; _args.setReturnValue(ok); } } } // add following code to checkClientOutputPrintManagement method if (this.printReturnForm()) { if (FormLetter::isClientOutput(this.printerSettingsReturnForm())) { ok = _showError ? checkFailed("@SLN6553") : false; printerSetupError = true; } }Add post event handler at \Classes\SalesFormLetter\checkClientOutput to \Classes\SalesFormLetter\SLNcheckClientOutput
// method run, after line 30 printReturnFormChoice = (salesFormLetter.printReturnForm()); printReturnForm.value (printReturnFormChoice); // Data Sources\SalesParmTable\Methods\active if (salesEditLinesForm.printReturnForm()) { ButtonReturnForm.visible(true); printReturnForm.visible(true); printReturnForm.allowEdit(true); printReturnForm.skip(false); printReturnForm.value(printReturnFormChoice); } else { ButtonReturnForm.visible(false); printReturnForm.visible(false); printReturnForm.allowEdit(false); printReturnForm.skip(true); printReturnForm.value(false); printReturnFormChoice = false; } // \Forms\SalesEditLines\Methods\closeOk after salesFormLetter.initParameters salesFormLetter.printReturnForm(printReturnFormChoice);Duplicate button:
void clicked() { super(); SalesFormLetter::ŅallPrinterSettingsReturnForm(salesFormLetter); }- SalesPackingSlipJournalPrint class printJournal
// ClassDeclaration NoYes printReturnForm; container printerSettingsReturnForm; // add variables to CurrentList macro public container parmPrinterSettingsReturnForm(container _printerSettingsReturnForm = printerSettingsReturnForm) { printerSettingsReturnForm = _printerSettingsReturnForm; return printerSettingsReturnForm; } public NoYes parmPrintReturnForm(NoYes _printReturnForm = printReturnForm) { printReturnForm = _printReturnForm; return _printReturnForm; } public static void printReturnForm(XppPrePostArgs _args) { Args parameters = new Args(); MenuFunction returnFormMenu; SalesPackingSlipJournalPrint journalPrint = _args.getThis(); Set journalList = _args.getArg('_journalList'); SetEnumerator se = journalList.getEnumerator(); CustPackingSlipJour journal; if (journalList.elements()) { if (journalPrint.parmPrintReturnForm() && !journalPrint.parmProforma()) { se.reset(); while (se.moveNext()) { journal = se.current(); returnFormMenu = new MenuFunction(menuitemOutputStr(ReturnForm), MenuItemType::Output); parameters.caller(journalPrint); parameters.record(journal); returnFormMenu.run(parameters); } } } } public static void SLNNewFromFormletterContract(XppPrePostArgs _args) { SalesPackingSlipJournalPrint salesPackingSlipJournalPrint = _args.getReturnValue(); SalesFormLetterPackingSlipContract salesFormLetterPackingSlipContract = _args.getArg('_salesFormLetterPackingSlipContract'); salesPackingSlipJournalPrint.parmPrinterSettingsReturnForm(SysOperationHelper::base64Decode(salesFormLetterPackingSlipContract.parmPrinterSettingsReturnForm())); salesPackingSlipJournalPrint.parmPrintReturnForm(salesFormLetterPackingSlipContract.parmPrintReturnForm()); _args.setReturnValue(salesPackingSlipJournalPrint); }Add post event handler at \Classes\SalesPackingSlipJournalPrint\printJournal to \Classes\SalesPackingSlipJournalPrint\printReturnForm
/// <summary> /// Modifies the report query and parameters based on caller settings. /// </summary> protected void prePromptModifyContract() { Common common; CustPackingSlipJour journal; ReturnFormContract contract; SalesPackingSlipJournalPrint salesPackingSlipJournalPrint; contract = this.parmReportContract().parmRdpContract() as ReturnFormContract; this.parmDialogCaption("@SLN6542"); if (classIdGet(this.parmArgs().caller()) == classNum(SalesPackingSlipJournalPrint)) { salesPackingSlipJournalPrint = this.parmArgs().caller() as SalesPackingSlipJournalPrint; this.parmReportContract().parmPrintSettings(new SRSPrintDestinationSettings(salesPackingSlipJournalPrint.parmPrinterSettingsReturnForm())); } if (this.parmArgs().record()) { common = this.parmArgs().record(); } if (common.TableId == tableNum(CustPackingSlipJour)) { journal = common; contract.parmSalesId(journal.SalesId); } else { checkFailed(strFmt("@SYS26348")); return; } }
DaxOnline.org is free platform that allows you to quickly store and reuse snippets, notes, articles related to Dynamics AX.
Authors are allowed to set their own AdSense units.
Join us.