Hello @webmekanics @emiangel839

Your questions about topics that are not related to FrontHrm should not be discussed here.
You should ask in the related topics or contact directly to the author (in this case me) smile

Thank you.

177

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

Yes, we can have solutions for infinite needs if mod the FA core.
Would be better to make no change in the core, that's why it is a big challenge

178

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

@poncho1234

Would be great if this module can works on fly item entry.
Example when creating Direct Sales Invoice press F4 for opening Items page, module now can't work here
Similar for Suppliers, Customers.
That would be a truly challenge.

Thank you

The using function each() in tcpdf.php is deprecated since php7.2

tcpdf.php need to be modified:

line: 4693

while (list($file, $info) = each($this->images)) 

to be

foreach ($this->images as $file => $info) 

line: 7768

while (list($key, $val) = each($prop)) 

to be

foreach ($prop as $key => $val) 

line: 9242

while (list($id, $name) = each($attr_array[1])) 

to be

foreach ($attr_array[1] as $id => $name) 

line: 9250

while (list($id, $name) = each($style_array[1])) 

to be

foreach ($style_array[1] as $id => $name) 

Since php version 7.2 the each() function is deprecated
Find all while loop with each() function in the reporting/includes/tcpdf.php and modify them to foreach loop.
Example:

while (list($id, $name) = each($attr_array[1])) {
    $dom[$key]['attribute'][strtolower($name)] = $attr_array[2][$id];
}

need to be

foreach ($attr_array[1] as $id => $name) {
    $dom[$key]['attribute'][strtolower($name)] = $attr_array[2][$id];
}

Are you using PHP7 ?

182

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

You should look at this to fix Bug #1 in Todo section :
https://frontaccounting.com/punbb/viewtopic.php?id=7622

Please put a copy of the customer_inquiry.php to additional_fields/inquiry/
Modify the $path_to_root of new customer_inquiry.php to the same as of add_customer.php.
Then change the include path in additional_fields/manage/add_customer.php to:
include_once('modules/additional_fields/inquiry/customer_inquiry.php')

Don't need to change anything in the core

184

(9 replies, posted in Setup)

Print profile will not solve the problem.
Add this code to line 954 of pdf_report.inc

$this->IncludeJS("print();"); // force to open print dialog

modified code will be:

function End($email=0, $subject='')
{
    global $SysPrefs, $path_to_root;

    $this->IncludeJS("print();"); // force to open print dialog

Would be fine if this could be implemented to the core.
Tested on Chrome and Firefox

Prerequisites to send invoice email are:

- System is running on a online server, not localhost.
- Customer's contact must have an correct email.

If the two conditions are satisfied and system has no problem then email would be sent

Currently column person_id has comment

foreign key to crm_contacts


it must be

foreign key to crm_persons

If call function supplier_list_cells with label set to null then the inactive check cell will be pushed down.
This can be tested on supplier.php with label modified to null on line 292.
Solution: function supplier_list_cells of ui_list.inc should be

function supplier_list_cells($label, $name, $selected_id=null, $all_option=false, 
    $submit_on_change=false, $all=false, $editkey = false)
{
    if ($label != null)
        echo "<td>$label</td>\n";
        echo "<td>";
        echo supplier_list($name, $selected_id, $all_option, $submit_on_change, 
        $all, $editkey);
        echo "</td>\n";
}

Sorry, this fix did not solve the problem, It produces the correct result for the last payment but falsifies the result of the previous payment.

The correct fix must be:

563    amount_cell($alloc_row['Total'] - $alloc_row['alloc']);
564    amount_cell($alloc_row['amt']);

Lines 563 and 564 of ui_view.inc need to be reversed.
Good news is that this is just a display issue, not a matter of data.

amount_cell($alloc_row['Total'] - $alloc_row['amt']);
amount_cell($alloc_row['amt']);

must be

amount_cell($alloc_row['amt']);
amount_cell($alloc_row['Total'] - $alloc_row['amt']);

On Customer Credit Note Entry if Customer Branch's tax is fully exempt then this error will fire:

Undefined index: sales_gl_code in file: C:\xampp\htdocs\world244\sales\includes\db\sales_credit_db.inc at line 156

solution: initialize this index in line 164 of file tax_calc.inc

$ret_tax_array['exempt'] = array('Value'=>0, 'Net'=>0, 'rate' => null, 'tax_type_id' => '', 'sales_gl_code' => '');

Yes:

add this function to supplier_db.inc

function duplicated_supplier_short_name($name, $id) {
    return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."suppliers WHERE supp_ref = ".db_escape($name)." AND supplier_id != ".db_escape($id));
}

add this check to submit handle (line 210) of suppliers.php

if (duplicated_supplier_short_name($_POST['supp_ref'], $supplier_id))  {
        $input_error = 1;
        display_error(_('Duplicate supplier short name found.'));
        set_focus('supp_ref');
    }

and change KEY `supp_ref` (`supp_ref`) to UNIQUE KEY `supp_ref` (`supp_ref`)  in the suppliers table in the two sql scripts

Google converter is no longer working and have not fixed yet.
Bloomberg has blocked requests also.
Yahoo shifted to: https://finance.yahoo.com/quote/GBPUSD=X?p=GBPUSD=X

Only ECB now is working.

Let says we have 2 salesman : Salesman1 and Salesman2
And we have a customer named MoneyMaker ltd with it's branch MoneyMaker which has assigned for Salesman1

By 1st Sep 2018 we created an invoice #1 for MoneyMake with it's value $300.
By 4th Sep 2018 we reassigned MoneyMaker for Salesman2 then created invoice #2 for same customer with value $200.

Now, print report for Salesman Listing (rep_106) we will see Grand Total of Salesman1 is zero, and Salesman2 is $500.
This seems wrong since Salesman1 has $300 revenue and Salseman2 has $200.

This problem happened because in debtor_trans table we only refer to branch_code without store saleman_code for transactions.

Will need to add column salesman_code for debtor_trans table and modify function write_customer_trans() as well. Also change SELECT query in rep_106 and may somewhere else.

Installing without dummy data can be chosen here : https://imgur.com/a/EJLibSN

This module has undergone a major upgrade with new function:

  • Changed Payment Advice transaction type to regular Bank Payment type (it was GL Journal type)

  • Added new feature Employee Advance (Loan)

  • Added new feature for manage Document Expiration, this can be useful for managing employee's document expiry such as Visa, Contract, Driving Licence....

This package requires completely new installation, means you can't upgrade for new feature without wipe out the old one.
Download here and Demo here

Currently Customer Short Name does not allow duplicates, this is good when we use short names as codes
But Suppliers Short Name is allowing duplicate, it is confusing to choose duplicated values from Suppliers List.

Should we add unique key for field supp_ref in table suppliers ?

197

(10 replies, posted in Report Bugs here)

With Search Item List enabled you can search Item by typing name's strings to search box
With Search Item List disabled you can search Item by Item's code only.

So it is a feature, not a bug. But seems this feature is not very helpful, both 2 options should be combined.

Hello

This module can works on FA versions 2.4.x only
Can't be installed on 2.2.4 as you mentioned

No, password has never changed @rafat
If could'n login please try type the password manually : 1111
I have got the same response about access problem but could'n find out the problem. sad

Updated with new feature bulk attendance, attendance data entry work is now much faster
DEMO