[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 4505: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3706)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 4507: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3706)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 4508: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3706)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 4509: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3706)
From Flames To Fork, Comes Freedom • View topic - Bottle Returns POS

Bottle Returns POS

The migration of Adempiere modules to iDempiere

Bottle Returns POS

Postby red1 » Thu Apr 23, 2015 9:49 pm

As described in https://groups.google.com/forum/#!topic ... 9iW8LjghJw
In a juice distributor scenario, a distributor sells crates of bottled juice drinks to retailers and then only invoice them after they return the bottles to give a net sale value of just the drinks. How best to handle this?

My suggestion and at the end some suggested enhancements as well as best practice question:
1. Sales Order for a BOM of product - children been juice (90cts) and empty bottle (10cts) = $1.00
2. Generate Shipment from Order, pick from inventory, send to retailier.
3. Retailer returns the bottles, record them in:
a. RMA Customer with Shipment ID linked.
b. Customer Returns based on 3a.
c. Shipment to Locator "Empty Bottles" based on 3b
d. Invoice Credit Memo based on 3c.
4. Issue Sales Invoice with Credit Memo for retailer to pay the difference.

In the end all accounts and inventory locators reflect everything.

Enhancements:
1. Same like POS Sales, i like to create a RMA POS which does steps 3.a,b,c,d one shot during RMA Customer
2. During 4, i create a JasperReport for Customer Invoice Print Format to reflect both Invoice and Credit Memo.

Now i have made enhancement (1) as shown in the following Customer RMA screenshot at the end of the plugin process where a Sale of 10 units is then returned 7 units.

Screen Shot 2015-04-23 at 3.38.39 PM.png
Screen Shot 2015-04-23 at 3.38.39 PM.png (92.01 KiB) Viewed 9526 times

The inventory is separated automatically where HQ Transit stores the 'empty bottles'

Screen Shot 2015-04-23 at 3.38.06 PM.png
Screen Shot 2015-04-23 at 3.38.06 PM.png (74.15 KiB) Viewed 9526 times

The accounts reflecting an Invoice of 10 with a Credit Memo of 7:

Screen Shot 2015-04-23 at 3.47.48 PM.png
Screen Shot 2015-04-23 at 3.47.48 PM.png (32.94 KiB) Viewed 9526 times

Payment window will then be able to allocate both invoices visibly. Next will be to make a JasperReport for the Sales Invoice to incorporate the Credit Memo to advice the business the whole affair on a single page for the customer's easy reference.

Source is at https://bitbucket.org/red1/org.business.bottlerma
Plugin is at https://sourceforge.net/projects/red1/files/Business/
You should:
1) Uncheck the MM Customer Returns DocType confirmation box
2) You may make a new RMA Type 'Empty Bottle' for fun
3) You should have a client warehouse with SearchValue = 'HQT' and name can be 'Empty Bottle'.
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Bottle Returns POS

Postby red1 » Fri Apr 24, 2015 1:50 pm

Attachments
BeforePatch.png
BeforePatch.png (36.61 KiB) Viewed 9508 times
Screen Shot 2015-04-24 at 7.46.47 AM.png
Screen Shot 2015-04-24 at 7.46.47 AM.png (56.04 KiB) Viewed 9508 times
Balance3.png
Balance3.png (29.07 KiB) Viewed 9508 times
StartBalance.png
StartBalance.png (30.47 KiB) Viewed 9508 times
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Bottle Returns POS

Postby red1 » Fri Apr 24, 2015 4:19 pm

Attachments
ZeroCaseTrigger.png
ZeroCaseTrigger.png (37.64 KiB) Viewed 9505 times
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Bottle Returns POS

Postby red1 » Sat Apr 25, 2015 1:08 am

Attachments
Screen Shot 2015-04-24 at 7.04.04 PM.png
Screen Shot 2015-04-24 at 7.04.04 PM.png (33.63 KiB) Viewed 9498 times
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Bottle Returns POS

Postby red1 » Sat Apr 25, 2015 3:03 am

Attachments
Screen Shot 2015-04-24 at 8.59.56 PM.png
Screen Shot 2015-04-24 at 8.59.56 PM.png (36.25 KiB) Viewed 9495 times
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia

Re: Bottle Returns POS

Postby red1 » Wed May 20, 2015 6:05 pm

I made an instant BOM Drop within the Order Lines without doing a BOM Drop! It is just a matter of using the , enter some BOM parent, and Complete or Prepare your Order. The plugin merely expands the BOM children (all levels!) into your Order as new OrderLines and set the parent BOM line to zero Qty so as not to duplicate the items.

Screen Shot 2015-05-20 at 12.14.02 PM.png
Screen Shot 2015-05-20 at 12.14.02 PM.png (96.12 KiB) Viewed 9369 times

*(For newbies, a BOM Drop is a conversion method where a Parent is exchanged with its Children into the Order).
*(For idiots, a BOM is a build of materials usually used during Production where BOM children are transformed to a BOM Parent with inventory and accounting consequences).

Below is a two level BOM been fully exploded or dropped from a BOMParent that was set at Qty 2. Notice that parents (within the hierarchy) are zeroised to take the final children prices. (Now this therefore is the hard assumption that you allow this to be so, i.e. any parent pricing will not be valid.) Also note that the getPrice (database function to roll up BOM) i did some days ago. Note that children are multiplied accordingly (i.e. grandchildren doubled). Source is .

Screen Shot 2015-05-22 at 10.42.04 AM.png
Screen Shot 2015-05-22 at 10.42.04 AM.png (68.99 KiB) Viewed 9262 times

I have provided a Sample 2 Level BOM. sql migration script that has 2 children where one of them has 2 more children. It is in the http://sourceforge.net/projects/red1/files/Business/ folder.
red1
Site Admin
 
Posts: 2759
Joined: Tue Jul 06, 2004 3:01 pm
Location: Kuala Lumpur, Malaysia


Return to iDempiere

Who is online

Users browsing this forum: No registered users and 1 guest