Code from this link may help.

Ctrl-M is an alternative Carriage Return character (CR) - 0x0D.


includes/ui/ui_controls.php has a few shortcut keys defined outside of the functions at lines 443 - 457:

/* Table editor interfaces. Key is editor type
    0 => url of editor page
    1 => hotkey code
    2 => context help
*/
$popup_editors = array(
    'customer' => array('/sales/manage/customers.php?debtor_no=', 
        113,    _("Customers"), 900, 500),
    'branch' => array('/sales/manage/customer_branches.php?SelectedBranch=', 
        114, _("Branches"), 900, 700),
    'supplier' => array('/purchasing/manage/suppliers.php?supplier_id=', 
        113, _("Suppliers"), 900, 700),
    'item' => array('/inventory/manage/items.php?stock_id=', 
        115, _("Items"), 800, 600)
);

The "F#" function keys are coded in the succeeding function:

/*
    Bind editors for various selectors.
    $type - type of editor
    $input - name of related input field
    $caller - optional function key code (available values F1-F12: 112-123,
        true: default)
*/
function set_editor($type, $input, $caller=true)
{
    global $path_to_root, $Editors, $popup_editors, $Pagehelp;

    $key = $caller===true ? $popup_editors[$type][1] : $caller;

    $Editors[$key] = array( $path_to_root . $popup_editors[$type][0], $input, 
        $popup_editors[$type][3], $popup_editors[$type][4]);
    
    $help = 'F' . ($key - 111) . ' - ';
    $help .= $popup_editors[$type][2];
    $Pagehelp[] = $help;
}

What is the current status of this issue?
Where are the hot key definitions stored?
Any report to list them?

5,653

(4 replies, posted in FA Modifications)

Are they actually the same company with different profit centres or are they a Parent and subsidiary? If the former, then use Tags and / or Dimensions.

5,654

(4 replies, posted in Report Bugs here)

Signs of the Sign! There you go.

5,655

(3 replies, posted in Reporting)

As the SQL would be different, either a flag is to be used or another report done.

5,656

(5 replies, posted in Installation)

Compare the SQL dumps of both installs and check in non transactional data for differences.

Search thru FULLTEXT using phpMyAdmin is possible.

5,658

(12 replies, posted in Items and Inventory)

Look up the sql used. It will be missing a GROUP BY clause and possibly a SUM/COUNT aggregate function as well.

5,659

(10 replies, posted in Items and Inventory)

I hope so too!

5,660

(10 replies, posted in Items and Inventory)

Hence we are not following the Debit is -ve and Credit is +ve rule for all accounts like most packages do or is it only in the presentation that there exists a difference in the P&L?

Since Cash on hand will always be debit, should not the Assets be -ve and Liabilities be +ve?
The earlier post with the example of cash withdrawal from bank actually appears to support Assets being -ve and Liabilities being +ve as seen from a gl transaction record.

5,661

(10 replies, posted in Items and Inventory)

Therefore, in FA, all debits are +ve and credits are -ve - right?
Withdraw cash from bank:
Debit Cash (+ve)
Credit Bank (-ve)

Is the above okay? If so, the signs in Post 4 will all be reversed.

5,662

(10 replies, posted in Items and Inventory)

Yes Janusz, the ledger will become correct only at the year end - after all in such businesses, most of the profit gets accumulated in stocks that appreciate in time without getting taxed - when sold, the sale price cannot be disputed since it is 'old stock' and in non-recorded condition!

The real reason, however, is that there are no clerks to enter such consumption vouchers as and when it occurs. Also, such businesses do accounting just because the Govt / Statutory bodies require it - transactions being purely on trust, interest-free credit and mostly on cash and carry basis. That is why such businesses thrive - unnecessary white collar salaries that do not contribute to the bottom line. At best the ledger folio of Suppliers and Creditors would suffice for them to manage Payables and Receivables.

Yes Joe, the Calculated return bridges both Profit and Loss and both sides of the divide, but for those coming from conventional manual accounting, especially vernacular ones (an old Indian one has audit tracking using a daybook-cum-ledger accounting that the Indian money lenders of the British Empire used to transfer the pay of British troops back home - look up a building that is 4th from Buckingham Palace - 1878), it is a tad offbeat to contend with in the short run.

Thanks for the inputs and clarifications!

What sign convention do we use in FA? The loss seems +ve in the Balance Sheet - the one I am converting from Tally.....

Is this okay:

Assets +ve
Liabilities -ve
Income +ve
Expense -ve
P & L = -ve of (Income+Expense) placed alongside Liabilities in the Balance Sheet

5,663

(6 replies, posted in Wish List)

FA uses hooks. The devs can incorporated one for such email message parameter tweaks, CAPTCHA auth addons, etc., in the base code of FA.

5,664

(10 replies, posted in Items and Inventory)

In Indian Accounting for many small enterprises with just one trusted accountant / owner,
1. whenever there is a purchase it goes into the purchase account,
2. but whenever there is an issue to production / consumption, it is not accounted for till the year end
3. At the year end it is determined as:

Consumption = Opening Stock + Purchases - Closing Stock

This may be an extension of the closed post for Belgian Accounting.

The words Calculated Return need to be changed to Profit (when there is profit) or Loss (when there is a loss) and needs to appear in the appropriate side of the Balance Sheet. This is imperative for such users who wish to migrate from Tally to FA.

5,665

(38 replies, posted in Accounts Receivable)

Thank Joe. HG Changeset 3178 did it.

Now in order to leverage it, we need new config variables or sys_prefs entries to switch between
the default (current for backwards compatibility) Comapny Name and Company EMail and
the optional User Real name and User EMail
in determining the mail sender name and Reply-to name.
Sys_prefs would be preferable as they can be set on a per company basis. It should be coded to fall back to the other if one is absent.

Try the FA v2.3.14 HG Build 3175 available in post 11 of a thread[ here and see if the problem persists.

5,667

(10 replies, posted in Announcements)

FA v2.3.14 Mercurial Build 3175 dated 2013-02-01.

5,668

(6 replies, posted in Accounts Receivable)

GIT repo can also be in a normal ubuntu desktop as well. Can run a Win "Box" on Ubuntu in VMWare / Virtual Box as well or Win Apps in Wine.

5,669

(7 replies, posted in Setup)

Mere deletion of data records is insufficient.
The auto_increment counter has to be reset as well if used.
Hence a TRUNCATE command is better suited for purges.

Also, some of the data should not be purges as they may pertain to
  permissions,
  logical inter-relationships used in code,
  drop-down list and other form element choices,
  sys_prefs choices.

The recomended way: After FA is setup and tweaked (extensions, languages, roles, prefs) the way you want it. take a backup and use it to restore for purges later on. Remember the passwords as well for the restored state.

5,670

(38 replies, posted in Accounts Receivable)

@ed10: thanks for the info.

Since the users.email field is not being used anywhere in the code if acquired using get_user_by_login() (as is done here in line 81 of includes/current_user.inc), the following patch will ensure it's availability in any script that uses it:

--- old/includes/current_user.inc    Thu Jan 17 19:16:02 2013
+++ new/includes/current_user.inc    Mon Feb 04 05:42:49 2013
@@ -22,6 +22,7 @@
     var $loginname;
     var $username;
     var $name;
+    var $email;
     var $company; // user's company
     var $pos;
     var $access;
@@ -120,6 +121,7 @@
                 $this->username = $this->loginname;
                 $this->prefs = new user_prefs($myrow);
                 $this->user = @$myrow["id"];
+                $this->email = @$myrow["email"];
                 update_user_visitdate($this->username);
                 $this->logged = true;
                 $this->last_act = time();

5,671

(6 replies, posted in Accounts Receivable)

Safest way is to have your own GIT repo in a local win box. Take a WinMerge2 diff at each change pulled into GIT and upload the diffs alone. Have a set of non-fa-repo code that needs to be matched with changes in their scripts in the fa_repo and then merge carefully. Since such scripts will be only a handful, it might be better off than conflict resolution in HG. By the way IMHO, HG is not very user friendly to the newbie (YMMV). Git is fantastic. GitHub is a fine online store for it.

To make it easier for the community, I place the diffs in the FA Release Announcement posts from time to time. The Wiki has the bash scripts to do a pull and roll up of the bleeding edge HG code. My request for an online HG snapshot enablement in SF has gone unheeded till date.

5,672

(7 replies, posted in Setup)

Beware: Some new tables and data get created / modified when some extensions get installed.

5,673

(38 replies, posted in Accounts Receivable)

Please check that the logged in user has an email entry in his record in the users table and then see if the $_SESSION["wa_current_user"]->email gets populated.

Unless we try having both Reply-to in header and using the -f parameter with no error, we cannot include the code in the base repo as it has to ensure that existing installs with no postfix and just sendmail will still work.

5,674

(38 replies, posted in Accounts Receivable)

What happens if both the headers method and the -f method are used together for Reply-to - does the mail deliver as desired? Make sure the users table has the email of the logged in user and try $_SESSION["wa_current_user"]->email and see if it appears correctly.


The RFC2822  uses CRLF and FA's class.mail.inc uses LF only.

Article 3.6.2 in the RFC2822 states:

..... an optional reply-to field MAY also be
   included, which contains the field name "Reply-To" and a
   comma-separated list of one or more addresses.

from            =       "From:" mailbox-list CRLF

sender          =       "Sender:" mailbox CRLF

reply-to        =       "Reply-To:" address-list CRLF

.....

Maybe some non compliant versions of Postfix may need the additional parameters like -f.....

Caveat - in some mail systems:

It turns out that a internet/dos style newline (\r\n) in the headers were converted to \r\r\n (ie: something mindlessly replaced all \n with \r\n without seeing if \n was already preceded by \r)

_________________________
[size=8]Composed/Posted with WYSIWYG BBCode Editor[/size]

5,675

(38 replies, posted in Accounts Receivable)

Final solution:
1. Fix the reply to header variable as in Post 20 of this thread.
2. Make sure the real_name field in the users table for the logged in use is populated. Otherwise take the fix from Post 25 in this thread.