1,776

(37 replies, posted in Installation)

All the later ones including PHP 5.6 with standard defaults (debs use saner ones).

In fact a separate test to check if dbname exists in the connection array with an appropriate error would be better. many just copy over the standard FA files and populate the db manually from some default chart without installing FA and find that the files like config_db.php,  installed_extensions.php (both in the webroot and in each company), lang/installed_languages.inc and the log files are not present. WHilst some get created on use, the likes of config_db.php cannot be fathomed.

@poncho1234: Thanks. Committed.

1,778

(5 replies, posted in Reporting)

The Tax Report is in reporting/rep709.php.
Current Report Layout that provides the Detailed and Summarised versions is attached.
The function getTaxTransactions in the said file is the one that provides the line items in the report.

The following is the $sql example that comes about for a company prefix of 0_:

SELECT 
  tt.name as taxname, 
  taxrec.*, 
  taxrec.amount*ex_rate AS amount, 
  taxrec.net_amount*ex_rate AS net_amount, 
  IF(taxrec.trans_type=1 OR taxrec.trans_type=2, 
    IF(gl.person_type_id<>0, gl.memo_, gl.person_id), 
    IF(ISNULL(supp.supp_name), debt.name, supp.supp_name)
  ) as name, 
  branch.br_name 
FROM 0_trans_tax_details taxrec 
  LEFT JOIN 0_tax_types tt ON taxrec.tax_type_id=tt.id 
  LEFT JOIN 0_gl_trans gl ON taxrec.trans_type=gl.type 
    AND taxrec.trans_no=gl.type_no 
    AND gl.amount<>0 
    AND (tt.purchasing_gl_code=gl.account OR tt.sales_gl_code=gl.account) 
  LEFT JOIN 0_supp_trans strans ON taxrec.trans_no=strans.trans_no 
    AND taxrec.trans_type=strans.type 
  LEFT JOIN 0_suppliers as supp ON strans.supplier_id=supp.supplier_id 
  LEFT JOIN 0_debtor_trans dtrans ON taxrec.trans_no=dtrans.trans_no 
    AND taxrec.trans_type=dtrans.type 
  LEFT JOIN 0_debtors_master as debt ON dtrans.debtor_no=debt.debtor_no 
  LEFT JOIN 0_cust_branch as branch ON dtrans.branch_code=branch.branch_code 
WHERE (taxrec.amount <> 0 OR taxrec.net_amount <> 0) 
  AND !ISNULL(taxrec.reg_type) 
  AND taxrec.tran_date >= '2015-03-01' 
  AND taxrec.tran_date <= '2018-03-31' 
ORDER BY 
  taxrec.trans_type, 
  taxrec.tran_date, 
  taxrec.trans_no,
  taxrec.ex_rate;

An example output is:

taxname    id    trans_type    trans_no    tran_date    tax_type_id    rate    ex_rate    included_in_price    net_amount    amount    memo    reg_type    amount    net_amount    name    br_name
Tax    5    10    2    2017-05-07    1    5    1    1    285.71    14.29    002/2017    0    14.29    285.71    Donald Easter LLC    Donald Easter LLC
\N    7    10    3    2017-05-07    0    0    1.123    1    267.14    0    003/2017    0    0    299.99822    MoneyMaker Ltd.    MoneyMaker Ltd.
Tax    2    10    1    2017-05-10    1    5    1    1    5942.86    297.14    001/2017    0    297.14    5942.86    Donald Easter LLC    Donald Easter LLC
Tax    10    10    5    2018-02-18    1    5    1    1    249.53    12.48    001/2018    0    12.48    249.53    Donald Easter LLC    Donald Easter LLC
Tax    3    20    1    2017-05-05    1    5    1    0    3000    150    rr4    1    150    3000    Dino Saurius Inc.    \N
Tax    8    20    2    2018-01-22    1    5    1.3895    0    2620    131    BE075    1    182.0245    3640.49    Beefeater Ltd.    \N

There is no Sales Area in the above output. If we add the branch.area to the select list by making line 41

                branch.br_name

to be:

                branch.br_name, branch.area

we can get that field. This will need to be added in to the header part when the new area argument is included.

@joe: nice suggestion - can we add it in?

@joe: is this necessary?

1,780

(37 replies, posted in Installation)

Which version of FA are you using? Try the latest Git Master version. It is obvious that there is no dbname given in your config_db.php file for the company chosen during login.

Line 208 of the file includes/db/connect_db_mysqli.inc is:

if (!mysqli_select_db($db, $connection["dbname"]))

A possible modification to it would be:

if (!$connection["dbname"] && !mysqli_select_db($db, $connection["dbname"]))

@joe: want to commit it?

@joe: has this been an issue for quite some time? Is there another standard operating procedure that needs to replace the above?

@karl1234: The first of your transactions has a payment and receipt and hence there is an exchange rate variance computed on the exchange rates used (one for payment and another for receipt) for the nett balance of the transaction set. In your second transaction, there is only a notional value in the exchange rate variance account as it awaits the contra entry when settlement occurs in the desired currency.

@andijani: The second transaction (one way) of @karl1234 applies to both your transactions.

1,782

(1 replies, posted in Reporting)

Choose to show balances in the Form that outputs the report rep201.php. See Attachment.

1,783

(3 replies, posted in Wish List)

The same item can be in Living Room and in Dining Room say like a Chair. If an item can only belong to one group, then name them like:
Living Room Item 1
Living Room Item 2
Dining Room Item 1
Dining Room Item 2
...

1,784

(14 replies, posted in Setup)

If we set the code to kick out the current logged in user session when the same username is logged in again it might be okay. If a browser hung during accessing FA, a fresh login can eliminate all old sessions for the same user.

Line 45 in includes/types.inc is:

define('ST_SALESORDER', 30);

The execution of the $sql defined from Line 224 in sales/includes/db/sales_order_db.inc provides a non unique resultset which triggers the error message you stated. The simplified query (assuming company db table prefix as "_1") to test this case is:

SELECT * FROM 1_sales_orders WHERE trans_no=30 AND order_no=3;

If you get more than 1 row output, then your Chart of Accounts is not proper as the primary key has not been defined to be a compound one comprising trans_no and order_no.

Since you say that there is no duplicate sales order with that combination of fields, then the new sales order you are trying to insert may have these same values which comes from the type and reference fields in the 1_refs table.

All of this is assuming you are using FA v2.4.x. When you ask for assistance, please provide details of versions of server components and platform used.

Again, please do not confuse Customer Payment with Payment Allocation to a Sales Invoice. The former is what is shown as zero in your reports (rightly so), whilst the latter appears only in a ledger printout for the customer. Remember that any one payment or credit note of a a customer can be allocated to one or more Sales Invoices / Sales Orders and hence the need for the mere "Payment" entry to be independent of any Sales Order.

There is no Sales Order associated with a payment for the Payment Transaction.
Only when a payment allocation is made to a Sales Invoice, the corresponding Sales Order is tagged to the transaction.

1,788

(2 replies, posted in Manufactoring)

It is appropriate to make a separate manufactured item for each BOM even if the end product is the same. This is so because in the case of assembled kits, when a breakup occurs, the respective parts / components can be sent back to inventory in the same manner it comprised the specific BOM it used.

1,789

(114 replies, posted in Reporting)

@corporatei: When you upload the latest FA files, it will show v2.4.4 as of now. This does not mean that your chart of Accounts is matched to it. Compare your schema of the database with that of sql/en_US-new.sql and see if there are any table differences or field order and availability differences and synch them to the latter. A blank chart of accounts will necessarily not have any data and hence the tax summary will be 0.

You can install any extension only when logged in as admin in the default company and activate it for any target company from within it. Then, when you are logged in as admin in your target company, you may have to enhance your security role (atleast for the admin user) by enabling the permissions for the new extensions, logout and then login again into the target company.

If you are still in a quandary, PM me access details at a mutually convenient time. I'm possibly half a world away.

1,790

(40 replies, posted in Translations)

All FA Translations are best hammered out on the likes of Transifex.com
Have a look at the updated translations in the FA24extensions repo.

1,791

(8 replies, posted in Reporting)

Even an Edit of a Journal Entry means a voiding and then a new entry.

1,792

(8 replies, posted in Reporting)

Stand corrected.

Are there any entries that have been voided that get included in the second report that match the difference?

1,793

(5 replies, posted in Setup)

When you restore from your company file (sql backup taken from within FA), all the data comes right back in.
What info did you want to restore from your company file if you want to start anew?

1,794

(8 replies, posted in Reporting)

Report 1 GL Transactions balance is correct:
Ending Balance - Opening Balance = 726,990.22 - 715,855.05 = 11,135.17

Report 2 Tax Balance wrong:
(Outputs - Inputs) * 14 / 100 = 11,633.37 = (Output Tax - Input Tax) = (16,642.49 -  5,009.12)

This is clearly a case of rounding off errors. The first report is done line by line computation of tax, whilst the second one computes the tax on the total value at the end.

@joe: Should we not attempt to simulate the first in the code for the second?

1,795

(5 replies, posted in Setup)

When you upload the FA code to your server, there is only a config.default.php file which is a template for your real config.php file which gets created along with the config_db.php file when the install is complete. Some other files too get created on completion of install.

Explain what you did to "clear the existing entries". The default password is "password" and the default user is "admin". Restoring your company file will need to take care of the table prefix to match that which is in the config_db.php for the said company.

1,796

(8 replies, posted in Reporting)

The period in the first report is Period:    01-03-2018 - 31-03-2018.
The period in the second report is Period: 01-02-2018 - 31-03-2018.
Synching them might solve your issue.

1,797

(0 replies, posted in Translations)

The Norwegian (nb_NO) translations for the core has been updated (88% done) and a new Install Wizard has been added (27% done).
The Norwegian language has now been added to Transifex.

This is an old thread and was meant for FA 2.3.x and not for the current version. Kindly revert if you are on the FA v2.4.x branch. If you are on the FA 2.3.x branch, then take it's counterpart folder from the last released version in that series - better still, just upgrade to FA v2.3.26.

Refer this Post for update mechanism and non use of deprecated update_journal function.

The function write_journal_entries() defined in gl/includes/db/gl_journal.inc is now used to edit journal entries by first voiding it and then adding the modified entry it as a new one.

In FA 2.3.x, the said function write_journal_entries() is defined in gl/includes/db/gl_db_trans.inc.