Jump to content
Spice Boy

Billing: partial deliveries

Recommended Posts

Spice Boy

I'm again out of my depth.

 

I have a fairly good system for time-billing of consultancy services - but now a friend has asked if I could help him to set up a system for her firm that sells actual, physical goods. Sometimes she does not have the required quantities, but sends (& bills for) what she has.

 

So, someone orders ten gadgets, but can get now only six; four are shipped later. I can have a "shipped qty" field in the order line items table, but can't think of a mainly non-scripted (ie data driven as much as possible) mechanism for creating the invoice lines for the second lot. I'd also need to update the "shipped" quantity in "Orders" when the delivery docket (consignment) is prepared, so that the ordered items are no longer "outstanding".

 

I prefer additional lines for all transactions because that establishes a trackable record, unlike modifying values; obviously some scripting is needed to achieve this. (It's obviously still not possible to run scripts without user action?)

 

If someone understands what I mean, I'd be grateful even just to know if it's possible or not. A pointer or two would of course make me even more grateful.

Share this post


Link to post
Share on other sites
Spice Boy

(Sorry about him - her... "He" asked, "she" runs the business.)

Share this post


Link to post
Share on other sites
sws

There are a number of plugins available which let you run scripts based on calculations, altough I have not worked on a solution for you, or to be honest thought of one.. Im sure what you need to achieve can be done using such a plugin.

 

BTW, there are some available free of charge !

Share this post


Link to post
Share on other sites
J Wenmeekers

You could use a 'Backorder' number field and link the creation of those orders to the printscript of the regular orders.

The records are flagged by the simple fact that there is a value in the field.

Record flagged = create record in Backorde table.

Is easy to do with the $value.

 

The regular orders (and invoice) will have the correct shipped quantity, something like quantShipped = quantOrder - quantBackOrder.

 

Follow a same concept to bill and send the backorders as you do for the regular shipments.

 

For the outstanding part: link the shipment/billing of the backorders back to the original shipment.

 

For inventory purposes you needto take the regular and the backorder quantities into account, but that's easy enough.

Share this post


Link to post
Share on other sites
Spice Boy

Thanks, sws & J Wenmeekers. Both lines of thought are definitely worth considering.

 

Having done some FMP-work to others in the past, I try to avoid using scripts for the actual functionality (ie handling of data), because someone will eventually not run the crucial script. By calculation or as a part of a Very Useful Script it'd be different.

Share this post


Link to post
Share on other sites
Spice Boy

I'm happy to report that I have eventually been able to put together a system where this backorder and multiple bills for an order work.

 

Not only that, they work without scripts, just with the data structure. Scripts just make everything easier.

 

More tables than I anticipated, though. A rather messy relationship scheme.

 

I'm quite pleased with myself...

Share this post


Link to post
Share on other sites
Johhhn

care to setup a link for the solution or more description of what you did? :)

Share this post


Link to post
Share on other sites
Spice Boy

Well, I realised that I can have two levels of "line items":

Orders

- Sales (line items)

-- Deliveries (line items)

 

Deliveries are tallied to sales, so the order form shows undelivered quantities.

 

Everything that is delivered goes, via a calculation-based relationship, to Billables; when billed, to Receivables via another one, so Billing line items are in the same table as Deliveries:

 

Invoices

- Deliveries as Billing (line items)

 

In the lab this works perfectly, but the acid test is yet to come.

Share this post


Link to post
Share on other sites



×
×
  • Create New...

Important Information

Terms of Use