Although the Error is still showing but Email is sent perfectly. So I assume the problem is solved.
Thanks for your support.
It's much more fun, when you can discuss your problems with others...
You are not logged in. Please login or register.
FrontAccounting forum → Posts by boxygen
Although the Error is still showing but Email is sent perfectly. So I assume the problem is solved.
Thanks for your support.
The error says that included files on Lines 22, 23, 24 and 25 in rep107 couldn't be find.
rep107 is working fine from core FA. So I can't make any changes in this report.
As far as module is concerned I have not made any changes to it. Just copied, installed and activated.
So @cambell if this module is working fine with you then please suggest the solution for me. The only problem is in Auto Sending of Email to Customer when Recurring Invoice is Created.
Also can you please elaborate the functionality behind Auto Create: check in Sales Order Definition.
I create a Sales Order and then Generated the Invoice against it from the Top Button. The invoice was generated but the rep107 gives following error
include_once(../includes/session.inc): failed to open stream: No such file or directory in file: C:\xampp\htdocs\bx242\reporting\rep107.php at line 22
C:\xampp\htdocs\bx242\reporting\rep107.php:22: include_once()
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:81: require_once('C:\xampp\htdocs\bx242\reporting\rep107.php')
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:42: (SGW_Sales\controller\GenerateRecurring Object)->emailInvoice('23')
C:\xampp\htdocs\bx242\modules\sgw_sales\generate_recurring_invoices.php:144: (SGW_Sales\controller\GenerateRecurring Object)->run()
include_once(): Failed opening '../includes/session.inc' for inclusion (include_path='C:\xampp\php\PEAR') in file: C:\xampp\htdocs\bx242\reporting\rep107.php at line 22
C:\xampp\htdocs\bx242\reporting\rep107.php:22: include_once()
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:81: require_once('C:\xampp\htdocs\bx242\reporting\rep107.php')
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:42: (SGW_Sales\controller\GenerateRecurring Object)->emailInvoice('23')
C:\xampp\htdocs\bx242\modules\sgw_sales\generate_recurring_invoices.php:144: (SGW_Sales\controller\GenerateRecurring Object)->run()
include_once(../includes/date_functions.inc): failed to open stream: No such file or directory in file: C:\xampp\htdocs\bx242\reporting\rep107.php at line 23
C:\xampp\htdocs\bx242\reporting\rep107.php:23: include_once()
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:81: require_once('C:\xampp\htdocs\bx242\reporting\rep107.php')
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:42: (SGW_Sales\controller\GenerateRecurring Object)->emailInvoice('23')
C:\xampp\htdocs\bx242\modules\sgw_sales\generate_recurring_invoices.php:144: (SGW_Sales\controller\GenerateRecurring Object)->run()
include_once(): Failed opening '../includes/date_functions.inc' for inclusion (include_path='C:\xampp\php\PEAR') in file: C:\xampp\htdocs\bx242\reporting\rep107.php at line 23
C:\xampp\htdocs\bx242\reporting\rep107.php:23: include_once()
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:81: require_once('C:\xampp\htdocs\bx242\reporting\rep107.php')
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:42: (SGW_Sales\controller\GenerateRecurring Object)->emailInvoice('23')
C:\xampp\htdocs\bx242\modules\sgw_sales\generate_recurring_invoices.php:144: (SGW_Sales\controller\GenerateRecurring Object)->run()
include_once(../includes/data_checks.inc): failed to open stream: No such file or directory in file: C:\xampp\htdocs\bx242\reporting\rep107.php at line 24
C:\xampp\htdocs\bx242\reporting\rep107.php:24: include_once()
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:81: require_once('C:\xampp\htdocs\bx242\reporting\rep107.php')
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:42: (SGW_Sales\controller\GenerateRecurring Object)->emailInvoice('23')
C:\xampp\htdocs\bx242\modules\sgw_sales\generate_recurring_invoices.php:144: (SGW_Sales\controller\GenerateRecurring Object)->run()
include_once(): Failed opening '../includes/data_checks.inc' for inclusion (include_path='C:\xampp\php\PEAR') in file: C:\xampp\htdocs\bx242\reporting\rep107.php at line 24
C:\xampp\htdocs\bx242\reporting\rep107.php:24: include_once()
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:81: require_once('C:\xampp\htdocs\bx242\reporting\rep107.php')
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:42: (SGW_Sales\controller\GenerateRecurring Object)->emailInvoice('23')
C:\xampp\htdocs\bx242\modules\sgw_sales\generate_recurring_invoices.php:144: (SGW_Sales\controller\GenerateRecurring Object)->run()
include_once(../sales/includes/sales_db.inc): failed to open stream: No such file or directory in file: C:\xampp\htdocs\bx242\reporting\rep107.php at line 25
C:\xampp\htdocs\bx242\reporting\rep107.php:25: include_once()
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:81: require_once('C:\xampp\htdocs\bx242\reporting\rep107.php')
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:42: (SGW_Sales\controller\GenerateRecurring Object)->emailInvoice('23')
C:\xampp\htdocs\bx242\modules\sgw_sales\generate_recurring_invoices.php:144: (SGW_Sales\controller\GenerateRecurring Object)->run()
include_once(): Failed opening '../sales/includes/sales_db.inc' for inclusion (include_path='C:\xampp\php\PEAR') in file: C:\xampp\htdocs\bx242\reporting\rep107.php at line 25
C:\xampp\htdocs\bx242\reporting\rep107.php:25: include_once()
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:81: require_once('C:\xampp\htdocs\bx242\reporting\rep107.php')
C:\xampp\htdocs\bx242\modules\sgw_sales\includes\controller\GenerateRecurring.php:42: (SGW_Sales\controller\GenerateRecurring Object)->emailInvoice('23')
C:\xampp\htdocs\bx242\modules\sgw_sales\generate_recurring_invoices.php:144: (SGW_Sales\controller\GenerateRecurring Object)->run()
The Recurring Order has an option Auto Create:
Is this controlled through Cron Job? When and how it is executed.
I need more help on this.
I create a module with hooks.php having the above function _construct()
I have one more file in module cron.php that contains the code to automatically fetch the exchange rate and update the database of the logged in Company if accessed directly.
Now when this cron.php is called through cron job then how this function in hooks.php creates a session with the defined user login and password. Credentials are hardcoded in hooks.php
Please give some guidelines
@Apmuthu I have checked it. It is not giving error but Once merged it shall give some message that customers are now merged etc.
Still I would request to have GL Accounts Merge routine
@Apmuthu your suggestion is optimal to incorporate both situations. While defining Recurring Invoice use can select whether to pick Item price from Prices or From Template Sales Order.
@cambell I got following error when accessing your module after activation
Warning: include_once(C:\xampp\htdocs\bx242\modules\sgw_sales/vendor/autoload.php): failed to open stream: No such file or directory in C:\xampp\htdocs\bx242\modules\sgw_sales\generate_recurring_invoices.php on line 18
Warning: include_once(): Failed opening 'C:\xampp\htdocs\bx242\modules\sgw_sales/vendor/autoload.php' for inclusion (include_path='C:\xampp\php\PEAR') in C:\xampp\htdocs\bx242\modules\sgw_sales\generate_recurring_invoices.php on line 18
Class 'SGW_Sales\controller\GenerateRecurring' not found in C:\xampp\htdocs\bx242\modules\sgw_sales\generate_recurring_invoices.php on line 132
Thanks @Joe I have tested and I think its fixed now.
While Merging Customers I got following error
DATABASE ERROR : An error occured
error code : 1054
error message : Unknown column 'type' in 'where clause'
sql that failed was : DELETE FROM 0_crm_persons WHERE type = 'customer' AND id = (SELECT person_id from 0_crm_contacts WHERE type = 'customer' AND entity_id = 4 LIMIT 1)
Can we have something similar to this like Merge GL Accounts?
I have a hosting business. My standard hosting price is say Rs. 3500 for 2 GB Hosting Package. I have created this Item and set the Item Price in the Prices section to 3500.
While negotiating with a customer I had to offer him the same package for Rs. 3000.
So I created a sales order with the revised price Rs. 3000 and selected that as a template
Then I created Recurring Invoice definition.
When I executed the recurring invoice the Price defined in the Sales Order was ignored and the price defined in the Prices i.e. Rs. 3500 was picked by the system.
@Joe, @apmuthu don't you think that the Prices defined in the price section is a general reference price for the product but the Price defined in the Sales Order Template is specific for this Particular Customer or Group. So System shall pick the specifically defined price OR discount instead of general price definition.
How are you different from Online Frontaccounting offered by frontaccounting.com itself?
Hello @Joe, were you able to check it further the problem in rep108 as mentioned above.
Thanks @Joe. But I think your solution has worked for rep101 but not for rep108.
I recorded one AR and AP for a customer through JE. Compare images below
There is some problem in Aged Customer Analysis also have a look
Similarly we need to screen out the affects in Supplier Balances and Supplier Aged Analysis and If any other area, inquiry or report being affected by JE Transactions for Customers and Suppliers.
Regards
@Joe
Please check some screen shots below
Customer Balances Before JE Transaction
You will find that the JE Transaction is appearing on the Credit Side Not on Debit Side because in Code no proper condition defined to handle Customer Debit Or Credit Transactions through JE.
This Problem is also in rep108.
I guess not yet checked that Suppliers Balances must be affecting due to same logical bug.
Hope this helps to understand.
You can login here to check further
fa.boxygen.biz/fa24
id: demo
pass: password
Thanks
Great @Joe, wonderful
Thanks
While creating customer if the user has defined Customer Name very different from debtor_ref for e.g
name: AAMIR
debtor_ref: LASANI
and if there are 1000 customers and their naming pattern is similar.
It is very very difficult to search this customer. Because all reports, all inquiries are showing AAMIR while Combo Box is showing LASANI.
Solution:
If the Combo Return from the
function customer_list($name, $selected_id=null, $spec_option=false, $submit_on_change=false,
$show_inactive=false, $editkey = false)
can have two fields in the namefield parameter i.e debtor_ref and name then it will be very helpful for all FA Users.
I request the admin to think over it and commit some changes in the core to incorporate this for both Customers and Suppliers.
Thanks
Now since Transactions to customers can be recorded through Journal Entry also and It can be either Debit Or Credit to customer.
The following code is not sufficient to handle the transactions through Journal Entry
if ($myrow2['type'] == ST_SALESINVOICE || $myrow2['type'] == ST_BANKPAYMENT)
$rep->TextCol(4, 5, $DisplayTotal, -2);
else
$rep->TextCol(5, 6, $DisplayTotal, -2);
Secondly one more thing is that If we Debit the Customer through JE then it appears in the ov_amount column in debtor_trans table as -ve value while if we credit the customer through JE the value appears as +ve value.
Except from the JE all values from any other transaction whether charges or credits appear as +ve value.
rep101 is also affected through JE Transactions. Debit is appearing on Credit Side and Credit is appearing on Debit Side.
You can simply copy and paste it in Excel and take Print out.
From mobile the Line Item is not being added.
Its a good attempt to make whole theme Responsive. However since data feeding is usually done through desktop the desktop view shall be more Accountant Friendly.
There shall be table lines in different views. The columns shall be aligned properly i.e the data and heading shall either both be right aligned or left aligned.
If the space between rows in UI is reduced then it will be much better because instead of scrolling its good to see whole data entry form in visual area of window (desktop )
The login screen, dashboard is awesome. Menu style is good
The dashboard sections shall also be linked with security roles so that not all users can see all sections
I think without an option the Group Total shall be available. For Quick Account Overview we need Group Total as well.
What is the solution to it? Temporarily I just commented following line before Continue;
if (check_value('Active'.$i) && !check_src_ext_version($ext['version']))
{
display_warning(sprintf(_("Package '%s' is incompatible with current application version and cannot be activated.\n")
. _("Check Install/Activate page for newer package version."), $ext['name']));
//continue;
}
But that should not be the solution. Kindly help.
After I commented this the extension is installed and working also.
With Few modification we can have Group Total in Trial Balance. This is very needful in analyzing groups. Below is the code
<?php
/**********************************************************************
Copyright (C) FrontAccounting, LLC.
Released under the terms of the GNU General Public License, GPL,
as published by the Free Software Foundation, either version 3
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
***********************************************************************/
$page_security = 'SA_GLANALYTIC';
$path_to_root="../..";
include_once($path_to_root . "/includes/session.inc");
include_once($path_to_root . "/includes/ui.inc");
include_once($path_to_root . "/includes/date_functions.inc");
include_once($path_to_root . "/admin/db/fiscalyears_db.inc");
include_once($path_to_root . "/includes/data_checks.inc");
include_once($path_to_root . "/gl/includes/gl_db.inc");
$js = "";
if (user_use_date_picker())
$js = get_js_date_picker();
page(_($help_context = "Trial Balance"), false, false, "", $js);
$k = 0;
$pdeb = $pcre = $cdeb = $ccre = $tdeb = $tcre = $pbal = $cbal = $tbal = 0;
//----------------------------------------------------------------------------------------------------
// Ajax updates
//
if (get_post('Show'))
{
$Ajax->activate('balance_tbl');
}
function gl_inquiry_controls()
{
$dim = get_company_pref('use_dimension');
start_form();
start_table(TABLESTYLE_NOBORDER);
$date = today();
if (!isset($_POST['TransToDate']))
$_POST['TransToDate'] = end_month($date);
if (!isset($_POST['TransFromDate']))
$_POST['TransFromDate'] = add_days(end_month($date), -user_transaction_days());
date_cells(_("From:"), 'TransFromDate');
date_cells(_("To:"), 'TransToDate');
if ($dim >= 1)
dimensions_list_cells(_("Dimension")." 1:", 'Dimension', null, true, " ", false, 1);
if ($dim > 1)
dimensions_list_cells(_("Dimension")." 2:", 'Dimension2', null, true, " ", false, 2);
check_cells(_("No zero values"), 'NoZero', null);
check_cells(_("Only balances"), 'Balance', null);
submit_cells('Show',_("Show"),'','', 'default');
end_table();
end_form();
}
//----------------------------------------------------------------------------------------------------
function display_trial_balance($type, $typename)
{
global $path_to_root, $SysPrefs,
$k, $pdeb, $pcre, $cdeb, $ccre, $tdeb, $tcre, $pbal, $cbal, $tbal;
$printtitle = 0; //Flag for printing type name
$k = 0;
//Get Accounts directly under this group/type
$accounts = get_gl_accounts(null, null, $type);
$begin = get_fiscalyear_begin_for_date($_POST['TransFromDate']);
if (date1_greater_date2($begin, $_POST['TransFromDate']))
$begin = $_POST['TransFromDate'];
$begin = add_days($begin, -1);
$Apdeb=$pdeb;
$Apcre=$pcre;
$Acdeb=$cdeb;
$Accre=$ccre;
$Atdeb=$tdeb;
$Atcre=$tcre;
$Apbal=$pbal;
$Acbal=$cbal;
$Atbal=$tbal;
while ($account = db_fetch($accounts))
{
//Print Type Title if it has atleast one non-zero account
if (!$printtitle)
{
start_row("class='inquirybg' style='font-weight:bold'");
label_cell(_("Group")." - ".$type ." - ".$typename, "colspan=8");
end_row();
$printtitle = 1;
}
// FA doesn't really clear the closed year, therefore the brought forward balance includes all the transactions from the past, even though the balance is null.
// If we want to remove the balanced part for the past years, this option removes the common part from from the prev and tot figures.
if (@$SysPrefs->clear_trial_balance_opening)
{
$open = get_balance($account["account_code"], $_POST['Dimension'], $_POST['Dimension2'], $begin, $begin, false, true);
$offset = min($open['debit'], $open['credit']);
} else
$offset = 0;
$prev = get_balance($account["account_code"], $_POST['Dimension'], $_POST['Dimension2'], $begin, $_POST['TransFromDate'], false, false);
$curr = get_balance($account["account_code"], $_POST['Dimension'], $_POST['Dimension2'], $_POST['TransFromDate'], $_POST['TransToDate'], true, true);
$tot = get_balance($account["account_code"], $_POST['Dimension'], $_POST['Dimension2'], $begin, $_POST['TransToDate'], false, true);
if (check_value("NoZero") && !$prev['balance'] && !$curr['balance'] && !$tot['balance'])
continue;
alt_table_row_color($k);
$url = "<a href='$path_to_root/gl/inquiry/gl_account_inquiry.php?TransFromDate=" . $_POST["TransFromDate"] . "&TransToDate=" . $_POST["TransToDate"] . "&account=" . $account["account_code"] . "&Dimension=" . $_POST["Dimension"] . "&Dimension2=" . $_POST["Dimension2"] . "'>" . $account["account_code"] . "</a>";
label_cell($url);
label_cell($account["account_name"]);
if (check_value('Balance'))
{
display_debit_or_credit_cells($prev['balance']);
display_debit_or_credit_cells($curr['balance']);
display_debit_or_credit_cells($tot['balance']);
}
else
{
amount_cell($prev['debit']-$offset);
amount_cell($prev['credit']-$offset);
amount_cell($curr['debit']);
amount_cell($curr['credit']);
amount_cell($tot['debit']-$offset);
amount_cell($tot['credit']-$offset);
$pdeb += $prev['debit'];
$pcre += $prev['credit'];
$cdeb += $curr['debit'];
$ccre += $curr['credit'];
$tdeb += $tot['debit'];
$tcre += $tot['credit'];
}
$pbal += $prev['balance'];
$cbal += $curr['balance'];
$tbal += $tot['balance'];
end_row();
}
//Get Account groups/types under this group/type
$result = get_account_types(false, false, $type);
while ($accounttype=db_fetch($result))
{
//Print Type Title if has sub types and not previously printed
if (!$printtitle)
{
start_row("class='inquirybg' style='font-weight:bold'");
label_cell(_("Group")." - ".$type ." - ".$typename, "colspan=8");
end_row();
$printtitle = 1;
}
display_trial_balance($accounttype["id"], $accounttype["name"].' ('.$typename.')');
}
//added by faisal for group total
if (!check_value('Balance'))
{
start_row("class='inquirybg' style='font-weight:bold'");
label_cell(_("Total") ." - ".$typename, "colspan=2");
amount_cell($pdeb-$Apdeb );
amount_cell($pcre-$Apcre);
amount_cell($cdeb-$Acdeb );
amount_cell($ccre-$Accre );
amount_cell($tdeb-$Atdeb );
amount_cell($tcre-$Atcre);
end_row();
}
else
{
start_row("class='inquirybg' style='font-weight:bold'");
label_cell(_("Total") ." - ".$typename , "colspan=2");
display_debit_or_credit_cells($pbal-$Apbal);
display_debit_or_credit_cells($cbal-$Acbal );
display_debit_or_credit_cells($tbal-$Atbal);
end_row();
}
//end by faisal for group total
}
//----------------------------------------------------------------------------------------------------
gl_inquiry_controls();
if (isset($_POST['TransFromDate']))
{
$row = get_current_fiscalyear();
if (date1_greater_date2($_POST['TransFromDate'], sql2date($row['end'])))
{
display_error(_("The from date cannot be bigger than the fiscal year end."));
set_focus('TransFromDate');
return;
}
}
div_start('balance_tbl');
if (!isset($_POST['Dimension']))
$_POST['Dimension'] = 0;
if (!isset($_POST['Dimension2']))
$_POST['Dimension2'] = 0;
start_table(TABLESTYLE);
$tableheader = "<tr>
<td rowspan=2 class='tableheader'>" . _("Account") . "</td>
<td rowspan=2 class='tableheader'>" . _("Account Name") . "</td>
<td colspan=2 class='tableheader'>" . _("Brought Forward") . "</td>
<td colspan=2 class='tableheader'>" . _("This Period") . "</td>
<td colspan=2 class='tableheader'>" . _("Balance") . "</td>
</tr><tr>
<td class='tableheader'>" . _("Debit") . "</td>
<td class='tableheader'>" . _("Credit") . "</td>
<td class='tableheader'>" . _("Debit") . "</td>
<td class='tableheader'>" . _("Credit") . "</td>
<td class='tableheader'>" . _("Debit") . "</td>
<td class='tableheader'>" . _("Credit") . "</td>
</tr>";
echo $tableheader;
//display_trial_balance();
$classresult = get_account_classes(false);
while ($class = db_fetch($classresult))
{
start_row("class='inquirybg' style='font-weight:bold'");
label_cell(_("Class")." - ".$class['cid'] ." - ".$class['class_name'], "colspan=8");
end_row();
//Get Account groups/types under this group/type with no parents
$typeresult = get_account_types(false, $class['cid'], -1);
while ($accounttype=db_fetch($typeresult))
{
display_trial_balance($accounttype["id"], $accounttype["name"]);
}
}
if (!check_value('Balance'))
{
start_row("class='inquirybg' style='font-weight:bold'");
label_cell(_("Total") ." - ".$_POST['TransToDate'], "colspan=2");
amount_cell($pdeb);
amount_cell($pcre);
amount_cell($cdeb);
amount_cell($ccre);
amount_cell($tdeb);
amount_cell($tcre);
end_row();
}
start_row("class='inquirybg' style='font-weight:bold'");
label_cell(_("Ending Balance") ." - ".$_POST['TransToDate'], "colspan=2");
display_debit_or_credit_cells($pbal);
display_debit_or_credit_cells($cbal);
display_debit_or_credit_cells($tbal);
end_row();
end_table(1);
if (($pbal = round2($pbal, user_price_dec())) != 0 && $_POST['Dimension'] == 0 && $_POST['Dimension2'] == 0)
display_warning(_("The Opening Balance is not in balance, probably due to a non closed Previous Fiscalyear."));
div_end();
//----------------------------------------------------------------------------------------------------
end_page();
May be changing following line create correct result.
//if (($no_zeros && floatcmp($trans['TotalAmount'], $trans['Allocated']) == 0)) continue;
if ($no_zeros && $show_balance && $trans['TotalAmount']== 0) continue;
if (($no_zeros && !$show_balance && floatcmp($trans['TotalAmount'], $trans['Allocated']) == 0)) continue;
If a customer transaction is not fully allocated (partially allocated), Selecting
Suppress Zeros to Yes And
Show Balances to Yes
in Customer Balances Report is giving a misleading Customer Net Balance.
Ideally Suppress Zero shall Suppress only Voided Transactions from the Report But Since it is also removing Fully Settled Transactions, the running balance is not revealing correct final balance if Show Balance is Set to Yes
For Better Understanding you may check Customer Balance of 4 Dimension in the following system
fa.boxygen.biz/fa2325
id: admin
pass: Pakistan1947
company: gp
FrontAccounting forum → Posts by boxygen
Powered by PunBB, supported by Informer Technologies, Inc.
Currently installed 4 official extensions. Copyright © 2003–2009 PunBB.