restricting some customers from printing
there is a requirement in which , we've to restrict
printing invoice for some payers which has some specific customized attribute checked in customer master sales data.
And we print invoice by running program rsnast00 and putting invoice in objkey and outputtype etc.
One solution is to change the code and make a customized rsnast00 but we don't want to change standard code.
Is there any work around.
And we want output type to be determined while creation of invoice because we may like to print it in future.
Chandan Samireddy replied
The best way is to write an output requirement. Even if the output is surpressed, you can manually create the output at a later date when you want it. But if you don't want this and want the output to be determined but not printed, try the following.
Create a new condition table (if it does not already exists) with the customer and the attribute you were talking about. Add it to your existing access sequence for this output. Ensure that this table is the first one in the access. Enter the output condition record for this new access/table using VV31. While entering the condition record, enter the Date/Time value as "3 Send with Application own transaction".
When you create the Invoice, the output will be determined based on the condition record. Then when your RSNAST00 job runs, it will print all the outputs that are determined and have a value of "1. Send with periodically scheduled job". The output that was determined in your invoice will never be printed by RSNAST00 job because it has a value of 3 !
So you can see it in your invoice with yellow lights and it is available for manual printing when you want it.
Note: You might have to ask your ABAPer to write code to ensure that the attribute value is available in the output structure in the invoice.