Partial Line Items
Excluding specific Lines / Records from the Child Object
It is possible to pass only a subset of the child records as line items on the Invoice.
You may need to pass only a subset of child object records to the Invoice, with other lines ignored.
Breadwinner achieves this by allowing you to specify a checkbox field. If you specify this checkbox field, only checked records will be passed to the Invoice, and unchecked records will not be passed.
This checkbox field can be either a formula field of type Checkbox or a regular Checkbox (which can be populated manually or via Apex/Workflow).
If you want to pass unchecked records and exclude checked ones, just create a second checkbox that is the opposite of the first, and pass the second checkbox to Breadwinner.
Please note that Breadwinner allows multiple Custom URL Buttons on a single object. So you might have 2, 3, or many more buttons to choose from. And you might have multiple checkbox fields used with different buttons.
An Example Real World Scenario
A typical scenario for this would involve combining recurring services with one-off services on an Opportunity or Custom Object. In this scenario, the first invoice to the customer would include all child records (including one-off professional services), and subsequent invoices would include only the recurring records (such as a monthly subscription).
To achieve this example, the first Custom URL Button would not specify Partial Line Items, and thus all child records would be on the Invoice. A second Custom URL Button would specify the checkbox field.
When the first Invoice was created (which includes all line items), a button that does not use the Partial Line Item query string would be used. Then, for additional invoices, a second button that uses the Partial Line Item query string would be used.
The Query String is below:
&child_object_partial_invoice=partial_invoice_field__c