Not for the *same* item, but I do have for example

STONE Bulk with UOM 1LB and
4LB Stone with UOM each

The Bulk stone is my purchased inventory and the 4LB Bag is a Manufactured Item.

Here is the general flow of a given Raw Material:

1) Buy 50lb box of Lab Stone (Supp Unit 50lb Box, Conversion factor 50)
2) STONE Inventory Level becomes 50
3) Sell 5 Units of Stone Bulk
4) STONE Inventory Level becomes 45
5) Get an Order for 3 4LB Bags of stone
6) Manufacturer 3 "4LB Bags"
7) STONE Inventory Level becomes 33

You can have different versions so long as you can manufacturer the secondary items.



(5 replies, posted in Modules Add-on's)

Gee like that is not blatant advertising, are we stupid?


How about the osc_import?

The way I use it is when I have new orders I can log into FA and do a few clicks and tell it to import new customers
and import new orders and then I continue with FA as normal.

There is also options to verify item code and prices and price update FA->osc

ex-osC core developer

I may be missing something, but aren't there hooks already for maintaining the current Exchange Rate from your base currency (EUR) and others (like USD)


You can define  your own units for each inventory item.

I maintain bulk inventory in LBS of which I 'manufacture' bags of 1/4, 1/2, 3/4 and 1LB, so it sounds a lot like what they need.

I buy things in 50lbs or 20kg buckets and use the purchasing pricing and UOM conversion to restock myself.


Yes, see the Readme.txt and post here is you still have problems.

It should be under Items and Inventory -> Import CSV Items



(14 replies, posted in Setup)

It almost sounds like a second setting would really be needed.

DECIMAL_PLACES_INTERNAL (accounting use) and DECIMAL_PLACES_EXTERNAL (seen by customers)

The problem is that at some point you need to actually round from 3 places to 2 places so that when you deal with
the ledger you never have partial pennies, invoices and payments need to be exact.

These 3 decimal place costed items, do you often sell 1 or 2?

sounds like money... are you dealing with 1/8ths?


How do I write off a bad debt?

Will a Credit Note work just like a payment?

The only difference is that I need to enter each item and sales price (as invoiced)

Credit Note Type: Items Written Off
Write off item cost to: 5620 Bad Debts

And the allocate the credit note to the old invoice?

I want to make sure the lost income goes to an expense account.


What do you do to 'refresh' the screen?


(4 replies, posted in Items and Inventory)

I use purchase pricing to handle the bulk items.

If I sell BOLTS and I have a item

That was fixed already:

Here are the changes:

tom@tom:~$ diff ./Downloads/ ./newfa/frontaccounting/reporting/includes/
<             $this->formData['document_number'] = $print_invoice_no == 0 && isset($this->formData['reference'])
<                 ? $this->formData['reference'] : $this->formData['order_no'];
>             $this->formData['document_number'] = $this->formData['order_no'];

< are new lines
> are old



(1 replies, posted in Accounts Receivable)

Here is a poorly written implementation of my suggestion...

diff -r 6fa1ff512c1b sales/customer_delivery.php
--- a/sales/customer_delivery.php    Sun Jul 31 00:37:32 2011 +0200
+++ b/sales/customer_delivery.php    Wed Aug 10 21:37:12 2011 -0400
@@ -95,6 +95,14 @@
        die ("<br><b>" . _("This order has no items. There is nothing to delivery.") . "</b>");

+// Adjust Shipping Charge based upon previous deliveries TAM
+    $sql = "SELECT sum(ov_freight) as freight FROM ".TB_PREF."debtor_trans WHERE order_ = " . $_GET['OrderNumber'] . " AND type = " . ST_CUSTDELIVERY . " AND debtor_no = " . $ord->customer_id;
+    $result = db_query($sql, "Can not find delivery notes");
+    $row = db_fetch_row($result);
+    if (!$row[0]) $freight = 0;
+    else $freight = $row[0];
+    if ($freight < $ord->freight_cost) $ord->freight_cost = $ord->freight_cost - $freight;
+    else $ord->freight_cost = 0;
    $_SESSION['Items'] = $ord;

I have no doubt that the solution works, what modules do I need to install in order to test it on my test system and my databases?

I see some generic modules (FrontAccounting SOAP Web Service API and FrontAccounting LDAP Conector API)  at the FA 2.3 download site,
but nothing that is targeted to osCommerce.

Maybe the remaining part is that cron job you mention that is unreleased and likely non-GPL?


I see pieces that could be the foundation, and I am very interested to find out how to test it out!


How can I install and test your solution?

It sounds quite comprehensive.

What is the oscommerce contribution called?
Have you submitted the FA module to Joe or Janusz?

If not I encourage you to do so, since both projects are GPL


No, see the readme.txt for BUY



(3 replies, posted in Report Bugs here)

Try Sales->Customer Transactions

It defaults to ALL CUSTOMERS

Maybe instead of putting All Customers at the Top of the list we could put it at the Bottom,
this was after someone enters a search we will either default to the first entry or ALL if no matches we found

Does it make sense now?


The date combo pups up one month, many other websites popup with 3 months.

Often it is the next, current and previous months.

In our case it may be best to make it default to current, previous and next previous months.
(Today it would popup Aug, July, June)

I have no idea how to do it, but if someone likes the idea I hope they will run with it


It looks like you are missing a column:


Where Item_Code = STOCK_ID of the item.

You have the STOCK_ID missing

I think for the most part ITEM_CODE == STOCK_ID, these are used in the 'item_codes' table

Also line 52 of import_items.php has a problem it should be:

function get_dimension_by_name($name) {
    if ($name == '') return 0;

it was

    if ($name = '') return 0;

If you are using dimensions, it seems that the 'dummy' field before MB_FLAG is where you can put a dimension

Let me know if this fixes you up



(1 replies, posted in Accounts Receivable)

When a delivery note is created other deliveries are used to see what has already been delivered.

But it seems to use the same shipping charge from the original sales order.

So if you had a SO for $500 of product and $50 of shipping ($550 total) and make 2 deliveries you can end up with $600 of invoices
if you are not careful.

Often I will just apply the shipping to the first delivery and have additional deliveries list $0 shipping.

Some countries customs agents do not like this.

Is it possible for the Delivery Note creation form to subtract the shipping from earlier deliveries before it auto fills in the shipping cost?
(not negative, of course)

ps. I tried making an example of this in the demo site, but I could not create a SO with a non-zero shipping charge.
(well I could create it, but the shipping cost was not saved for some reason)


(3 replies, posted in Report Bugs here)

I am not sure if this is a problem with my web browser or something that can be fixed.

When I type a SPACE on the Customer Selector to enter a search of the customer list it always continues to select "All Customers"
even if the text I entered was unique enough to get a hit on a single customer.

Is there a way it could only show "All Customers" if there was more than one match?


Yes I will look at it


(4 replies, posted in Reporting)

I set it to 30 :

    /* Save Report selections (a value > 0 means days to save. 0 = no save) */
        $save_report_selections = 30;

but the pull down selections stay at the defaults...

Here are they headers I get, I see the cookie data, but it is not being
recognized as a cookie

POST /admin/fa23/reporting/reports_main.php?JsHttpRequest=0-xml HTTP/1.1


User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv: Gecko/20110701 Iceweasel/3.5.16 (like Firefox/3.5.16)

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Accept-Language: en-us,en;q=0.5

Accept-Encoding: gzip,deflate

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7

Keep-Alive: 300

Connection: keep-alive

Content-Type: application/octet-stream; charset=UTF-8


Content-Length: 165

Cookie: osCAdminID=1376b6670caf3b3e93f55ce65b1352; osCsid=3327e28d2e6e08425773892ec6319; FA11ff01cdb0d50479fa1a3c3a5d808b3=2aa40a80dd5e76989240261260a8

Authorization: Basic xxxxxxxx

Pragma: no-cache

Cache-Control: no-cache


HTTP/1.1 200 OK

I tried a different report and it did the same thing



(15 replies, posted in Installation)

I am not sure how to fix those errors.


(15 replies, posted in Installation)

The FORCE UPGRADE may not be the best thing to do.

Restore you db from the backup prior to the upgrade (Where it says Partial 1/4) and see if you still have a "0_company" table

I had to drop that table first.

Drop the table, run backup again and then try the upgrade.

If you don't have a company table then read this thread for other suggestions



(13 replies, posted in Items and Inventory)

If you are running 2.3.5 you should be able to go to Setup->Install/Activate Extensions and see "Inventory Items CSV Import"

Once you install it, change the pull-down from "Available" to your site and make sure it is enabled.

Then go to Setup->Access Setup, Select your role (System Administrator) and click the check boxes for "Import CSV Items"
at the end of the list.

That will give you an Import option under the "Items and Inventory" tab, Maintenance sub tab on the right.

See the README.TXT in the modules/import_items/ directory