My apologies....the 2nd item should be sold for the same amount but negative, in my example above it would be -$10.00, thus cancelling the 1st $10.00, but leaving the 20% tax. You'll have to allow negative amounts in Banking & GK setup.

Oh an both the extra items need to be a service item

Yes assign each 'tax' its own GL account will help tracking and error finding

If it works add it to the wiki please

Post 4 has been edited to read correctly now

Thats all I can think of, well that and modify the tax system to accept a fixed charge.

How many of these fixed costs do you have?

Thinking out loud... create a service item 'fixed charge +adjustment' sell it for $10.00 give this item a tax that equals the fixed charge so if your fixed charge is $2.00 apply a 20% tax to it, name this new 20% tax to what the fixed charge is for, then add an another service item 'fixed charge -adjustment' sell for -$10:00 and 0% tax, you'll have to allow negative sale prices in Bankin&GL setup. Its a variation on discounts in tips & tricks. You will have to setup a few 'taxes' and items though. Try it on a training installation first. Maybe it will be less work than setting up and managing a few thousand sales kits

Maybe @apmuthu has a different idea?

1st thought would be 'sales kits'... but that would depend on how many items you have
It seems adding an additional item is the only way using FA, there's a number of posts in this forum with a similar request.

279

(1 replies, posted in Setup)

This may be similar

If you do have 'thousands of invoices' then you may want to use import transactions
The ext is available in Install/Activate Extensions and also apmuthu's github

Important: Make a training company, try the import on there 1st till you get it correct, then import to your actual accounts

Isn't cash sales meant to be for the day you make the sale? As the simplest method to write an invoice for a cash customer there and then at the time of sale. For this the due date and invoice date are the same. The system works perfectly for this.

The fact that you have not entered an invoice on the day of sale is a different issue.

A possible solution is to change the day you created the invoice directly in the database before you print it.

282

(4 replies, posted in Accounts Receivable)

You can add or delete your logo in Setup -> Company Setup

But to reiterate what apmuthu has written:-

The address is by default underneath the logo in the top lefthand corner

283

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

I may have solution to my number 8 bug

I noticed when installing/uninstalling that the path for 'module name' was /add_fields_item/. I then noticed that I didn't actually have a module called additional_fields.

So I have added a module additional_fields and moved the maintenance pages to there, my abbreviated updated hooks.php is now as follows:-

<?php

define('SS_ADDFLD_C',141<<8); // configuration
define('SS_ADDFLD',  142<<8); // transactions
define('SS_ADDFLD_A',143<<8); // analytic functions/reports/inquires

class add_fields_sales_app extends application {
    
    function __construct() {
        global $path_to_root;
        
        parent::__construct('orders', _($this->help_context = '&Sales'));
        
        //All Sales functions as per core with the following changed for Add and Manage &Customers

        $this->add_lapp_function(2, _("Add and Manage &Customers"),
            "/modules/additional_fields/manage/add_customers.php?", 'SA_CUSTOMER', MENU_ENTRY);
        
    }
}

class add_fields_supp_app extends application {
    
    function __construct() {
        global $path_to_root;
        
        parent::__construct('AP', _($this->help_context = '&Purchases'));
        
        //All Purchases functions as per core with the following changed for Suppliers ie Removed add fields maintenance

            $this->add_lapp_function(2, _("&Suppliers"),
            "/modules/additional_fields/manage/add_suppliers.php?", 'SA_SUPPLIER', MENU_ENTRY);
    }
}

class add_fields_item_app extends application {
    
    function __construct() {
        global $path_to_root;
        
        parent::__construct('stock', _($this->help_context = '&Items and Inventory'));
        
        //All Items & Inventory functions as per core with the following changed for Items

        $this->add_lapp_function(2, _("&Items"),
            "/modules/additional_fields/manage/add_items.php?", 'SA_ITEM', MENU_ENTRY);
        
    }
}
// New module added
class additional_fields_app extends application {
    
    function __construct() {
        global $path_to_root;
        
        parent::__construct('AddFields', _($this->help_context = 'Additional Fields'));
        
        $this->add_module(_('Maintenance'));
        $this->add_rapp_function(2, _('Manage Document Types'), $path_to_root.'/modules/additional_fields/manage/document_types.php?', 'SA_SUPPLIER', MENU_MAINTENANCE);
        $this->add_rapp_function(2, _('Manage Beneficiary Classes'), $path_to_root.'/modules/additional_fields/manage/customer_class.php?', 'SA_SUPPLIER', MENU_MAINTENANCE);
        $this->add_rapp_function(2, _('Manage Countries'), '/modules/additional_fields/manage/country.php?', 'SA_AFSETUP', MENU_MAINTENANCE);
        $this->add_rapp_function(2, _('Manage Departments'), $path_to_root.'/modules/additional_fields/manage/department_add_info.php?', 'SA_SUPPLIER', MENU_MAINTENANCE);
        $this->add_rapp_function(2, _('Manage Cities'), $path_to_root.'/modules/additional_fields/manage/city_add_info.php?', 'SA_SUPPLIER', MENU_MAINTENANCE);
        $this->add_rapp_function(2, _('Manage Sectors'), $path_to_root.'/modules/additional_fields/manage/sectors_add_info.php?', 'SA_SUPPLIER', MENU_MAINTENANCE);
        $this->add_extensions();
    }
}

class hooks_additional_fields extends hooks {
    function __construct() {
     $this->module_name = 'add_fields_sales';
        $this->module_name = 'add_fields_supp';
        $this->module_name = 'add_fields_item';
        $this->module_name = 'additional_fields';//NEW
     }
    
    function install_tabs($app) {
        $app->add_application(new add_fields_sales_app);
        $app->add_application(new add_fields_supp_app);
        $app->add_application(new add_fields_item_app);
        $app->add_application(new additional_fields_app);//NEW
    }
    
    function install_access() {
        $security_sections[SS_ADDFLD_C] =  _("Additional Fields Configuration");
        $security_sections[SS_ADDFLD] =  _("Additional Transactions");
        $security_sections[SS_ADDFLD_A] =  _("Additional Fields Analytics");
        $security_areas['SA_XFLD'] = array(SS_ADDFLD|1, _("AddFields entry"));
        $security_areas['SA_AFSETUP'] = array(SS_ADDFLD_C|2, _("AddFields setup3"));
        // $security_areas['SA_AFSETUP'] = array(SS_PURCH|9, _("AddFields setup2"));
        return array($security_areas, $security_sections);
    }

    function activate_extension($company, $check_only=true) {
        global $db_connections;
        
        $updates = array( 'update.sql' => array('frontadd'));
 
        return $this->update_databases($company, $updates, $check_only);
    }
    
    function deactivate_extension($company, $check_only=true) {
        global $db_connections;

        $updates = array('remove.sql' => array('frontadd'));

        return $this->update_databases($company, $updates, $check_only);
    }
}

Update sql & Remove sql now work

I've not updated the demo or repro yet as would like to wait for any comments or alternative solution where an additional tab is not necessary

No solution to security issues even with above changes and a clean install.

@apmuthu I'm guessing it was you who added the screenshots - Thank you

Go to Banking and General Ledger -> General Ledger Reports -> Audit Trail...It may give you a clue how the CN was created

285

(9 replies, posted in Reporting)

Again study the existing reports - including the Ext's... at least 2 of them use Header3

286

(9 replies, posted in Reporting)

Look at existing reports - study them...

You may find a line similar to:-

$rep->SetHeaderType('Header2');

Available is Header, Header2, Header3
Or you could write your own Header4 based on one of the originals

In /reporting rename the existing rep108.php to something like rep108OLD.php, then copy the new file into the /reporting directory/folder

@kvvaradha Additional Fields ext is here

289

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

This is my first full extension, so it’s a learning process for me.

I originally created this for myself to satisfy the demands of my local tax authority, but realised with changes that it could be useful for other FA users. I’m willing to make changes should anyone have suggestions that would benefit a reasonable number of users.

I’ve added additional fields for customers/suppliers and items (CIS), which other users may find beneficial; also adding four ‘custom fields’ to each.  The custom fields can also be used for ‘niche’ users who wish to add info that is fairly specific for their business. Eg. A book seller could add ‘Author’, ‘Publisher’, etc. in items.

Currently the extra fields are integrated into the existing CIS pages, the maintenance links are in their own module and the reports are in their relevant reports pages.

The ext is currently work in progress so therefore is not ready for production and I would welcome any help, suggestions or comments.

ThreeFour reports so far:-
1.    Item stock check plus bin number
2.    Full customer listing with additional field info – excel download only
3.    Full supplier listing with additional field info – excel download only
4.    Full item listing with additional field info – excel download only

Todo:-
1.    Bug as referenced in this post(Should this be irrevocable, then I will rewrite ext. as a separate module.) This now works thanks to @notrinos's fix in same post
2.    Security codes: For development I used notrinos's codes from his HRM module, but when I changed to my own codes, I had no access?? - using existing security codes - Done
3.    Report - full item listing with additional field info – excel download only Done
4.    Code review.
5.    Check text strings are enabled for translation - Done
6.    Put custom fields in separate columns for customer/supplier reports - Done
7.    Change Spanish labels to English Done
8.    Update sql & Remove sql notworking - Possible fix below Done
9.    Dates not being saved - Done, added date2sql to update item function

Possible discussion points for future development
1.    Inquiry report X 3 for each of CIS
2.    Additional fields for customer branches.
3.    Additional integration with FA core
4.    Countries, departments, and cities. This data is unlikely to change once the user has entered their locale, should this be included in the database or as a lookup file? Bulk upload? Is this info necessary given the existing Address text box? I included as needed for myself
5.    Manage custom field names (Instead of using a translation) Done

Demo is here
Username: demouser
Password: 12345678

Code is here

@hannelie can you please confirm if you void transactions and if there is any relation between voided transactions and customer balances; i.e. customer balances that are wrong - were any of their transactions voided.

Can you also state what version of FA you are using.

291

(24 replies, posted in Reporting)

??? you do want to modify /sales/inquiry/sales_orders_view.php don't you?
1st you need a new type as given in post 2 above by kvvaradha
Then add you new type, and change the code in sales_orders_view.php -
Study the existing code for a sales order - add similar for the new type you have defined.

292

(5 replies, posted in Reporting)

What theme are you using?
The pagination font color is white, try pressing Ctrl + A and see what shows up

293

(24 replies, posted in Reporting)

What errors are showing?
Have you set:-

33:     $debug             = 1;    // show sql on database errors
34: 
35:     $show_sql         = 1;    // show all sql queries in page footer for debugging purposes
36:     $go_debug         = 2;    // set to 1 for basic debugging, or 2 to see also backtrace after failure.

In File: \config.php

Don't forget to change them back when you have completed your changes

294

(24 replies, posted in Reporting)

Study the code to print rep109... copy and rename

@kvvaradha, everything is viewed as intergrated...though no core files modified...just an ext.

Should be able to put what I have up by end of week.

296

(24 replies, posted in Reporting)

I've had  a brief look, maybe you need to create a new function similar to order_link or invoice_link

297

(24 replies, posted in Reporting)

Follow the function calls

298

(24 replies, posted in Reporting)

Of course you can add it, but you will be modifying core files, which is not best practice, and you will have to change the code everytime you update the core software.

I'm in the process of creating an ext. that features custom fields for customers, suppliers and items, should be ready within 2 weeks

300

(24 replies, posted in Reporting)

Works orders are produced in the manufacturing module.

Please read the wiki, and set up a training company.