Hello,
I will be thankfull if any body explain how to use : Font Utility package
I read the readme.txt but I couldn't arrive to apply it.
khaled
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 Kalido
Hello,
I will be thankfull if any body explain how to use : Font Utility package
I read the readme.txt but I couldn't arrive to apply it.
khaled
hi,
I am very glad that you are thinking to include this approach in 2.3.
RE : CHAR 15
0. The philosophy behind it is described as below :
suppose you have an account number 11006050
practically it is composed as : 1 100 1060
where : 1 -> refer to the Class account it belongs
100 -> refer to the Group account it belongs
1060 -> refer to the Account
1. Practically for a single company : CHAR 11 is sure enough.
2. Using CHAR 15 will be helfull in the case of having a company with multiple
branshes. In this case,
- the first 11 char will be used to the company account
- and the last 4 char are to be used for the company branshes.
- in such a case , company with multiple branshes, you will have many
accounts with the same numbers :
11001060-010
11001060-020
11001060-030
Later on, and when you decide print " Balance Sheet " of any Bransh, it
can be isolated easely by queyring the database to the selected bransh
(010 for example). A similar approach can also be developed to the
global company Balance Sheet.
Thanks,
Khaled
Errata :
* includes/ui/ui_lists.inc
'order' => array('account_code','type.id'),
// FA Original : array('type.id','account_code'),
should keep it as FA Original : array('type.id','account_code'),
khaled
Hello,
Find bellow a simple way to let the outstanding FA package support characters ID's in the Classes/Types Accounts.
1 - use en_US-Demo.sql & en_US-New.sql Supporting Classes/Types Characters
id's. This will be done easly by changing :
- all varchar(11) should be changed to varchar(15) in the .sql file
- CREATE TABLE `0_chart_class` (
`cid` varchar(3) NOT NULL default '',
`class_name` varchar(60) NOT NULL default '',
`ctype` tinyint(1) NOT NULL default '0',
`inactive` tinyint(1) NOT NULL default '0',
PRIMARY KEY (`cid`)
) TYPE=MyISAM ;
- CREATE TABLE `0_chart_master` (
`account_code` varchar(15) NOT NULL default '',
`account_code2` varchar(15) default '',
`account_name` varchar(60) NOT NULL default '',
`account_type` varchar(10) NOT NULL default '0',
`inactive` tinyint(1) NOT NULL default '0',
PRIMARY KEY (`account_code`),
KEY `account_code` (`account_code`),
KEY `account_name` (`account_name`)
) TYPE=MyISAM ;
- CREATE TABLE `0_chart_types` (
`id` varchar(10) NOT NULL default '',
`name` varchar(60) NOT NULL default '',
`class_id` varchar(3) NOT NULL default '0',
`parent` varchar(10) NOT NULL default '-1',
`inactive` tinyint(1) NOT NULL default '0',
PRIMARY KEY (`id`),
KEY `name` (`name`)
) TYPE=MyISAM;
2 - do those simple modifications in the bellow files :
* gl/includes/db/gl_db_account_types.inc
- function add_account_type
$sql = "INSERT INTO ".TB_PREF."chart_types (id, name, class_id, parent)
VALUES (".db_escape($id).", ".db_escape($name).", ".db_escape
($class_id).", ".db_escape($parent).")";
// FA original was : VALUES ( $id,.......
- function get_account_types
$sql .= " ORDER BY class_id, id, parent ";
// FA Original : " ORDER BY class_id, id"
- function get_account_classes
$sql .= " ORDER BY ctype,cid";
// FA Original : " ORDER BY cid"
* gl/manage/gl_account_classes.php
1. comment the following lines:
/* if (!is_numeric($_POST['id']))
{
display_error( _("The account class ID must be numeric."));
set_focus('id');
return false;
}
*/
2. in the delete check :
$sql= "SELECT COUNT(*) FROM ".TB_PREF."chart_types
WHERE class_id=".db_escape($selected_id)." ";
// FA Original: class_id=$selected_id
* gl/manage/gl_account_types.php
1. comment the following lines:
/* if (!input_num('id'))
{
display_error( _("The account id must be an integer and cannot
be empty."));
set_focus('id');
return false;
}
*/
2. minor changes:
- $th = array(_("Group ID"), _("Group Name"), _("Subgroup Of"),
_("Class Type"), "", ""); // khaled : ID ; Name
- if ($myrow["parent"] == "0")
//FA Original : if ($myrow["parent"]== ANY_NUMERIC)
* gl/manage/gl_accounts.php
- text_row_ex(_("Account Code:"), 'account_code', 15);
//FA Original was 11
- text_row_ex(_("Account Code 2:"), 'account_code2', 15);
//FA Original was 11
* includes/ui/ui_lists.inc
'order' => array('account_code','type.id'),
// FA Original : array('type.id','account_code'),
Should also change in config.php : $accounts_alpha = 1;
I hope you will find those modifications usefull.
Finally, This is how I use FA & in every new version I do those modifications.
Regards,
Khaled
Hello,
believe me joe, classes/types are better interpreted by the accountants when
they are characters. I think it is widely used in europe and middle east areas.
besides it facilitate the logic of hierarchy sub levels.
For myself, I made the necessary modifications. it was not so complex.
I'm always ready to send it to you if you find the idea interesting to include it in next versions.
Khaled
Hello Joe,
Can you give us please a simple example of the new Group Accounts Multi Level Feature.
And how we can profit from the new facility of :
" GL Account Types (Groups) allows up to 10 digits " ?
From other side is it possible from your side to include an option for changing :
id (chart_types) to Character in Config.php ?
Thanks
khaled
Thanks,
I will move to Ver 2.2.2
khaled
which file I need to download and update ?
khaled
Hello,
I hope you are all fine in this new year.
Does the Journal Entry Modifications was resolved (Amplification of the figures) ?
I noticed that is resolved in the demos or what ?
Thanks.
Khaled
If you check "Peachtree Accounting " software, you will find that they use 15 Char for the accounts length. Assuming that, you may use the 1st 9-11 for the account & the last 4 for referring to Company Branches/Departments :
ex : 600123-xx-yy where --> xx : Branch ; yy : Department
For this reason I prefer to use characters for the account nb, although the numeric values are more practical
--------------------------------------------------------
RE : Account Types & being Characters :
Generally, the Accountants prefer that the Initials of an active account nb are the same as their Account Types Parent group. This will help them to easily remember and classify. This is why also I prefer it to be Characters and not numeric.
ex: 1 Assets ( Class)
10 Current Assets (Type)
1060 Checking Account (Account)
1065 Petty Cash (Account)
11 Non Fixed Assets (Type)
12 Inventory Assets (Type)
13 Capital Assets (Type)
--------------------------------------------------------
RE : Account Classes :
Being numeric does not infect any concept.
--------------------------------------------------------
Anyhow I don't know what it affects FA if we do changes like I proposed. But for myself I did the modifications and I didn't find problems.
/Khaled
Hi,
I will change my discussion to Wiki.
Anyhow, I Found on the net, a free open sourced javascript tree menu which I hope it will helps :
File Download page :
http://www.softcomplex.com/products/tigra_tree_menu/download.html
Documentation Page :
http://www.softcomplex.com/products/tigra_tree_menu/docs/
/khaled
Hi,
I think we can reach the same Idea in a simpler way If we Control the way that gl_all_accounts_list display the ComboBox :
I suggest that if you can display the content of the ComboBox as a hierarchical tree with ( +/- ) sign at the right of the Group/Types level. So, when you click the ( + ) sign, it will expand its sub accounts & if you click the ( - ) it will hide them.
This will be Just a looks like : "Hierarchical Tree Menu" embedded in the ComboBox Accounts List where the Types=Level1 Menu & Accounts=Level2 Menu
In this case as an end user, you have a full control for Minimizing/Limiting the displayed accounts of the COA in the ComboBox.
By doing the approach like I suggest now, we won't need at all to modify the structure of the 0_chart_types table. And perhaps we escape from the complexity
who may cause.
Finally by searching the net, what I mentioned is known as a " Tree ComboBox "
you may see a demo example at this link :
http://demo.koolphp.net/Examples/KoolComboBox/Advances/With_TreeView/index.php
Practically, we will need only 2 levels :
- Type/Group Level & Accounts Level
- Class Levels will be an extra option. Generally it is not needed when working
on data entry transactions
Khaled
Hello,
Idea :
Control the Displayed Accounts in the " Combo Box " Accounts Lists
Way of :
in 0_chart_types add a Field : ShowSubAccounts default 'Yes'
Now, when you want to call any " Combo Box " Accounts List:
1. Call a new function : Ex. ShowGroupAccounts
- Default : Show All Types/Accounts Sub Accounts
- Select What Types/Groups Account to hide in the " Combo Box " Accounts
Lists
2. Call function "gl_all_accounts_list" based on what returns the function
ShowGroupAccounts
Advantage :
The main concept of this turn around is to provide a way to control any
Journal Voucher Data Entry Accounts Lists.
This will help to :
- develop unlimited web pages based on : gl_journal.php
- control the length of any Accounts List who may become annoying when the
COA is too long
Example of a direct application (Embed a simple PAYROLL approach based on accountants view):
Type/Group Account : 60 Wages & Salaries
Accounts : 60000 W & S General
60001 Empl_1
60002 Empl_2
60003 Empl_3
60004 Empl_4
......... etc
Regards,
Khaled
thanks for your responses:
note : I use PHP 5.2.8 & Mysql 5.1.3. w/ WAMP
The initial Problem I faced w/ JV entries, was in the past versions:
1. When I enter the JV's and go to JV's Inquity i do not see what I entered p1-2.
2. I made changes as mentioned in p.3 before. it works then.
Now I rechecked the original copy of Ver 2.2, and saw that is ok, no need at all of that. No need to comment # lines # 28 in : audit_trail_db.inc , as I did before.
Exactly as " Janusz " said.
khaled
Hello,
I faced a problem with JV Inquiries :
1. when I enter any JV via |: Transactions / Journal Entry Web Page
2. I could not see it in : Inquiries and Reports / Journal Inquiry Web Page
3. to overpass this problem, I commented the lines # 28 in " audit_trail_db.inc "
as bellow :
// all audit records beside latest one should have gl_seq set to NULL
// to avoid need for subqueries (not existing in MySQL 3) all over the code
//$sql = "UPDATE ".TB_PREF."audit_trail SET gl_seq = NULL". " WHERE type=".db_escape($trans_type)." AND trans_no=".db_escape($trans_no)." AND id!=".db_insert_id();
// db_query($sql, "Cannot update audit gl_seq");
4. it works ok, but I faced another problem :
5. if you enter a simple JV via : Transactions / Journal Entry Web Page
6. Go to : Inquiries and Reports / Journal Inquiry Web Page
7. check the Amount of the transaction you will find it ok.
8. if you Try to modify it via the editor as permitted, then add any additional
transaction to this JV
9. Go back to : Inquiries and Reports / Journal Inquiry Web Page
10. You will see now that the Amount of the voucher displayed in the JV inquiry
page is amplified.
7. If you try to modify it again, the result will be another amplification of the
Amount of the JV in the inquiry page.
Please check. because it is very important when you enter JV's to have the option to review on screen to modify it on needed demand.
I noticed that, If I check the PDF report of the JV transactions, they appear ok.
I think it means that the problem is hoovering around the way the Amount of the JV is displayed in the "JV inquiry " web page.
Regards,
Khaled
Hello,
I wish from your side, to expand the possibility of using " Characters " when defining the ID numbers in Classes & Types accounts tables.
This will help efficiently in developing reports by grouping the descendent accounts under any group type or class using simple SQL statements.
In this case , using RepGen 2.2 will be very simple to explore & report any grouping of accounts transactions & data.
I am sure that with such simple modification
Note when using character types in :
chart_class (cid)
I suggest : cid varchar(3)
chart_types (id ; class_id)
I suggest : id varchar(8) & class_id varchar(3)
chart_master (account_code ; account_type)
I suggest : account_code varchar(15) & account_type varchar(8)
So you may build an interrelated hierarchical tree for your chart of account who can be accessed at any level you want from a simple SQL Statement using RepGen2.2.
I am sure it will be a wonderfull solution for reporting.
ex. :
1 Class
11 Type
111 Sub-Type
11111 Account
Regards,
Khaled
Nice & Efficient Work Joe.
khaled
Hello Joe,
in RepGen, if you try to go :
Account List [Run] ==> then next if you try to :
press the Button [ Test the SQL Statement ], you will find a Bug.
And this is how I fix it in 2 steps :
1. Replace in : repgen_create.php ( line 203 # )
from :
-------
$txt = "<input type='button' name='test_sel' value='".TEST_SEL.
"' onclick=\"openWindow('".REPGENDIR."/repgen_test_sel.php"."', 'SQL');\" >";
to :
----
$txt = "<input type='button' name='test_sel' value='".TEST_SEL.
"' onclick=\"openWindow('".REPGENDIR."/repgen_test_sel.php?var101=".$sql."', 'SQL');\" >";
2. Add in : repgen_test_sel.php ( line 22 # )
$sql =$_GET['var101'];
So the Bug is fixed at this stage.
----------------------------------------------------------
But, If you enter a New SQL statement in the textarea & try to
press the Button [ Test the SQL Statement ], you will find that now , the $sql
variable was not passed through ( var101 ) to the pop up window like if it treats
$sql = "".
Instead of that, if you press the [Page Definition for Strings], you will find
that the page is directed to a new page and $sql now is treated well.
I could not find the clue. Can you help resolving this bug please.
Regards,
Khaled
Hello,
I think it is a nice trick to lok arround acocunts.
somehow, if it is a little bit flexible I do not know if you can define it as mini-sub account of a GL Account.
if so, you can do a wide choices of manipulations :
ex: gives a tag for each employee where this taged account transactions will be directly upward posted to the payroll account. (OR perhaps no, it is not the case)
anyhow, you are doing an extrem work with this FA.
Regards,
Khaled
Hi,
can you some how post an example of using the tags.
khaled
Hello,
I tried to go to the new feature : Dimension tags web page
( http://localhost/FA22RC/admin/tags.php?type=dimension)
I got this error :
( ! ) Notice: Undefined index: type in D:\wamp\www\FA22RC\admin\tags.php on line 14
Call Stack
# Time Memory Function Location
1 1.0035 110928 {main}( ) ..\tags.php:0
( ! ) Notice: Use of undefined constant TAG_ACCOUNT - assumed 'TAG_ACCOUNT' in D:\wamp\www\FA22RC\admin\tags.php on line 14
Call Stack
# Time Memory Function Location
1 1.0035 110928 {main}( ) ..\tags.php:0
I could not resolve it.
Regards,
Khaled
Thanks a lot
I will update you.
regards,
khaled
ok, thanks.
I check it and it is simple to immitate it.
From other side and talking about extensions/modules :
is there any Payroll System you may advise to let me Try integrate it in FA.
I will be thankfull.
Regards,
Khaled
Hi,
When duplicating the ID's of Classes, Types or Account
the system do not display the msg :
"The entered information is a duplicate. Please go back and enter different values."
as expected and as it was in FA215
Kalido
Hello,
What is the : " Access Levels Extensions "
and what is its job and how can we use it.
================================================
I tried to install : WIKI, REPGEN via the Install/Update Extensions.
WIKI, ok it works.
REPGEN :
in the Folder repgen, and in all of it (where ever it exists )
I changed all the : $page_security = 9 (or 15) ;
to : $page_security = 'SA_OPEN';
also, I changed : page("Report Generator REPGEN",true);
in the file : repgen_test_sel.php
to
page("Report Generator REPGEN);
the generation of the reports works fine.
///////////////////////////////////////////////////////////////////////////////////////
A single error I could not resolve is and I don't know if it affects some how:
the main web page of RepGen :
http://localhost/FA220Beta2-AR/modules/REPGEN/repgen_select.php?
is Open with the following error ( I use IE ver 8) :
=================================================
Webpage error details
User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; GTB6; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; InfoPath.2; OfficeLiveConnector.1.3; .NET CLR 3.0.30618; .NET CLR 3.5.30729; OfficeLivePatch.1.3)
Timestamp: Fri, 2 Oct 2009 21:19:35 UTC
Message: Invalid argument.
Line: 68
Char: 1
Code: 0
URI: http://localhost/FA220Beta2-AR/company/0/js_cache/utils.js
===================================================
When I checked with : " Google Chrome ver 3.0.195.24 "
I did not notice any error when openig the page.
Regards,
khaled
FrontAccounting forum → Posts by Kalido
Powered by PunBB, supported by Informer Technologies, Inc.
Currently installed 4 official extensions. Copyright © 2003–2009 PunBB.