======PDC Custom printing====== Produmex Manufacturing is a legacy product and Boyum IT Solutions no longer sells new installations for it. In order to print a report with Produmex PDC, import it into SBO or place it to a folder that Produmex Service Broker can access. **Import the report** \\ Import the report into SAP Business One with the Report and Layout Import Wizard. Browse the report then select ’Inventory’ > ’Inventory Reports’ as the destination location. {{ :implementation:manufacturing:customguide:print:import_report.png |}} To see the details of the report, open the Report and Layout Manager and select the report from the Inventory Reports. The report ID will identify the report in the user queries. {{ :implementation:manufacturing:customguide:print:report_id.png |}} =====Example - Print product label===== ====1. Add Print button==== Open the Customization Fields table via: Tools > User Defined Windows > BXPCUSTFD - Customization Fields. For more information about the Customization Fields user table please see: [[implementation:manufacturing:customizationtechnology#create_custom_field|Create custom field]] Add the following to the Product Batch number screen: ^Field Name^Field Type^Label^Screen^Module^Visible^Protected^ |Print|Button|Print|ProductBatchNumbersAdvScreen|BXPPSMobilePDC|Yes|No| |SSCC|String|SSCC|ProductsAdvScreen|BXPPSMobilePDC|No|Yes| {{ :implementation:manufacturing:customguide:print:pdc_print.png |}} ====2. Create user query==== Add the custom queries with the Query Manager. For more information about PDC custom queries please see: [[implementation:manufacturing:customizationtechnology#create_an_sap_user_query|Create a SAP user query]]. The first query is //BXPPSMobilePDC_ProductsAdvScreen_ButtonSerialBatch_click//. Example query: SELECT $[TextSSCC] AS 'SSCC' This query fills the SSCC user field with the SSCC selected on the screen when the Serial/Batch button is pressed. As the SSCC field is protected, the field value can be used in custom queries for events of the next screen. The name of the second query is the Produmex PDC event name on button click. In this example the user query name will be: //BXPPSMobilePDC_ProductBatchNumbersAdvScreen_Print_click// SQL SELECT 'C:\Produmex\Reports\Label.rpt' "PrintLayout$", $[CurrentPDCBooking.ProductCode] "Print_ItemCode", $[CurrentPDCBooking.ProductName] "Print_Item_ItemName", '' "Print_SerialNumber", $[TextBatch] "Print_BatchNumber", $[TextBestBefore] "Print_BestBeforeDate", $[TextBatchQuantity] "Print_Quantity", $[TextSSCC] "Print_SSCC", 'PDFCreator' "PrintPrinter$", 'Document PRINTING' "Message$", 'I' "MessageType$" HANA SELECT 'RCRI0012' "PrintLayout$", $[CurrentPDCBooking.ProductCode] "Print_ItemCode", $[CurrentPDCBooking.ProductName] "Print_Item_ItemName", '' "Print_SerialNumber", $[TextBatch] "Print_BatchNumber", $[TextBestBefore] "Print_BestBeforeDate", $[TextBatchQuantity] "Print_Quantity", $[TextSSCC] "Print_SSCC", 'PDFCreator' "PrintPrinter$", 'Document PRINTING' "Message$", 'I' "MessageType$" FROM DUMMY The user query does the following: \\ Sets the parameters of the selected report to the values entered on the screen and sends it to the defined printer. Then displays the ‘Document printing’ message. The user query must contain every report parameter with the Print_ prefix. In the example the report has the following parameters: * ItemCode * Item_ItemName * BatchNumber * BestBeforeDate * SerialNumber * PrintQuantity * SSCC {{ :implementation:manufacturing:customguide:print:print_review.png |}} Replace the **PrintLayout$** value with the Report ID (in the HANA example the report ID is //RCRI0012//). It is also possible to specify a report that is not imported into SBO. In this case add the report file path (in the SQL example it is //C:\Produmex\Reports\Label.rpt//). Replace the **PrintPrinter$** value with your printer name. In the example the printer name is //PDFCreator//.