Simple Invoices logo
    • CommentAuthorchuckt
    • CommentTimeFeb 23rd 2007 edited
     permalink
    Hi everyone. My name is Chuck. I live in the USA in the Pacific North West in beautiful Washington state. I "discovered" simpleinvoices the other day and I hope that I can use it in my day-to-day activities. I make Irish Pennywhistles and I also do system software consulting. I have 7 computers all running various encarnations of Linux. Not one of the buggers have a version of PHP that has xslt enabled. I have tried finding one and/or getting a build to happen, but it is a common woe with Linux. That is really hard to do with all of the dependencies. :'( There is a high probability of breaking something, too.

    I am thinking of learning a bit about PHP anyhow. Is there some (easy) way to do reports without xslt? They dont have to be pretty, though, that would be nice. Everything else seems to work just fine.

    I originally thinking of writing something in PHP from scratch. But this will get me going for now. I have a fairly detailed design spec made. I need to manage my inventory of whistles and all of the junk that I have to make them with and from. :D

    Anyhow, Cheers everyone!
    -=ChuckT=-
    • CommentAuthorjustin
    • CommentTimeFeb 24th 2007 edited
     permalink
    Hey Chuck,

    Welcome to Simple Invoices.

    re php/xls/xslt
    - if any of your PCs are debian or ubuntu just install the php5-xls or php4-xslt packages depending on what version of php you running and it'll be fine

    [code]justin@ubuntu:~$ sudo apt-cache search php5-xsl
    php5-xsl - XSL module for php5
    justin@ubuntu:~$ sudo apt-cache search php4-xslt
    php4-xslt - XSLT module for php4
    justin@ubuntu:~$ [/code]

    re reports

    a none pretty way to run the reports is to copy the sql from the report files in ./src/reports and paste them into a simple php table code as below. You'll just need to alter the info in $SQL and $db_field but it should be ok - doesn't give you headings or totals but gets the basic info out there

    [code]<?PHP

    $user_name = "root";
    $password = "";
    $database = "simple_invoices";
    $server = "localhost";

    $db_handle = mysql_connect($server, $user_name, $password);
    $db_found = mysql_select_db($database, $db_handle);

    if ($db_found) {

    $SQL = "select si_biller.b_name, sum(si_invoice_items.inv_it_total) as sum from si_biller, si_invoice_items, si_invoices where si_invoices.inv_biller_id = si_biller.b_id and si_invoices.inv_id = si_invoice_items.inv_it_invoice_id GROUP BY b_name
    ";
    $result = mysql_query($SQL);

    print "<table>";

    while ($db_field = mysql_fetch_assoc($result)) {
    print "<tr><td>";
    print $db_field['b_name'] . "</td><td>";
    print $db_field['sum'] . "</td></tr>";
    }

    print "</table>";
    mysql_close($db_handle);

    }
    else {
    print "Database NOT Found ";
    mysql_close($db_handle);
    }

    ?>[/code]


    re inventory and junk

    i recommend using Simple Invoices for the invoices and customer info and using GNUCash to handle more complex accounting info like inventory, expenses, profit etc. for more info refer:
    http://simpleinvoices.org/wiki/doku.php?id=will_there_ever_be_an_accounts_system_for_simple_invoices

    let me know how you go

    Cheers

    Justin
    • CommentAuthorchuckt
    • CommentTimeFeb 24th 2007 edited
     permalink
    Great stuff! Thanks a bunch. I am still trying to read and feel my way through running a "real" business. I am at that point, after 2 1/2 years, of going from a paying hobby to the goal of making my whistles full time. It may be that this invoicing tool is all I need for the next year or so. It does address the problem at hand.

    To whit:
    1) at the end of the year (tax time), I need to know what I sold and who I sold it to.
    2) I need to know what I bought and who I bought it from.

    What I don't need right now is:
    x) all of that crap in a package like webERP :)

    In short, what is exactly what SI provides. <<grin>> But it is useless without the reports.

    Thanks for sharing SI! I really appreciate it.
    -=Chuck=-
    • CommentAuthorjustin
    • CommentTimeFeb 24th 2007 edited
     permalink
    Thanks Chuck,

    Good luck with the whistles!

    just hack the reports using the above info or get xsl happening and it'll be all good :)

    Cheers

    Justin
    • CommentAuthormicoots
    • CommentTimeAug 7th 2007 edited
     permalink
    Hi Justin,

    [quote=justin]
    Hey Chuck,

    Welcome to Simple Invoices.

    re php/xls/xslt
    - if any of your PCs are debian or ubuntu just install the php5-xls or php4-xslt packages depending on what version of php you running and it'll be fine

    [code]justin@ubuntu:~$ sudo apt-cache search php5-xsl
    php5-xsl - XSL module for php5
    justin@ubuntu:~$ sudo apt-cache search php4-xslt
    php4-xslt - XSLT module for php4
    justin@ubuntu:~$ [/code]

    re reports

    a none pretty way to run the reports is to copy the sql from the report files in ./src/reports and paste them into a simple php table code as below. You'll just need to alter the info in $SQL and $db_field but it should be ok - doesn't give you headings or totals but gets the basic info out there

    [code]<?PHP

    $user_name = "root";
    $password = "";
    $database = "simple_invoices";
    $server = "localhost";

    $db_handle = mysql_connect($server, $user_name, $password);
    $db_found = mysql_select_db($database, $db_handle);

    if ($db_found) {

    $SQL = "select si_biller.b_name, sum(si_invoice_items.inv_it_total) as sum from si_biller, si_invoice_items, si_invoices where si_invoices.inv_biller_id = si_biller.b_id and si_invoices.inv_id = si_invoice_items.inv_it_invoice_id GROUP BY b_name
    ";
    $result = mysql_query($SQL);

    print "<table>";

    while ($db_field = mysql_fetch_assoc($result)) {
    print "<tr><td>";
    print $db_field['b_name'] . "</td><td>";
    print $db_field['sum'] . "</td></tr>";
    }

    print "</table>";
    mysql_close($db_handle);

    }
    else {
    print "Database NOT Found ";
    mysql_close($db_handle);
    }

    ?>[/code]
    [/quote]

    I run SL4.x (Scientific Linux 4.x which is a derivative of Red Hat Enterprise Linux). I've had little chance of getting the php-xslt stuff working on this platform, to get it working requires quite a bit of effort from recompiling php to pull the module out and copy it into the mod directory.

    This is very difficult to do in my case since the servers I'm using host domains for hundreds of other customers, so in that type of environment it's impossible to recompile from sources and have the risk of negatively impacting other virtual servers.

    I did think about moving Simple Invoices to another "spare" server somewhere where I could possibly recompile php from sources, but that then takes time which I have little of at the moment.

    So I've lived without the reporting functions of SI for the duration I've used it.

    What I'm suggesting here is that maybe it's an idea you make the above PHP optional within SI ? like another tab to at least allow the reports to work for people without php-xslt.

    What you think?

    Michael.
    • CommentAuthorjustin
    • CommentTimeAug 8th 2007 edited
     permalink
    Hey Michael,

    re alternate reports system that doesnt use xslt
    - interesting idea - i'll keep it in mind - no promises though as im quite happy just using current system

    1 workaround im thinking about is offering a free Simple Invoices hosting thing so people who cant install all the modules etc. can use Simple Invoices without having to install it

    Cheers

    Justin
    • CommentAuthormicoots
    • CommentTimeAug 8th 2007 edited
     permalink
    Hi Justin,


    Hey Michael,

    re alternate reports system that doesnt use xslt
    - interesting idea - i'll keep it in mind - no promises though as im quite happy just using current system


    Yes I know, I've read other posts where this has been discussed :)


    1 workaround im thinking about is offering a free Simple Invoices hosting thing so people who cant install all the modules etc. can use Simple Invoices without having to install it


    I know where you're coming from here mate and wish you the best if you were to go that route, but as a web hosting provider myself that supplies various apps on-line for customers, the ones that people are most reluctant to sign up for are the financial ones, where they feel they no longer "own" their financial data. For those people, if they do go a route of on-line financials (in a data centre I mean) they basically choose to have a dedicated server which they have "ownership" of and can "pull it out" if at anytime they wish to.

    People seem much more protective over their financials when in contrast, they don't mind Webmail for example hosted and holding possibly even more sensitive information.

    From my end, SI runs at the data centre for my company and I have no issues with that, just as long as it's protected via ssl and firewall (only allowing certain IP's in) I have no dramas with it. But I'm an IT guy, so view things a little differently.

    Thanks.

    Michael.
    • CommentAuthorjustin
    • CommentTimeAug 8th 2007 edited
     permalink
    Thanks Michael,

    i probably wouldn't sign up for any online financial app thing myself but my idea is to provide environment to use Simple Invoices on hosted servers - If you dont want your data online anymore- you can just do a backup of the Simple Invoices db and restore locally and continue using as normal. No lockins etc...

    Simple Invoices is and always will be 100% open source so nothing stopping anyone pulling out any time and using Simple Invoices locally

    basically its your data and app do what you want with it

    re own their data
    - also was thinking about providing on request virtual machines (VPS) pre-setup with Simple Invoices etc and managed/monitored by me - that way you'll know the data is 100% yours and you can do absolutely what you want - full root etc..

    any thoughts?

    Cheers

    Justin
    • CommentAuthormicoots
    • CommentTimeAug 8th 2007 edited
     permalink
    Hi Justin,


    Thanks Michael,

    i probably wouldn't sign up for any online financial app thing myself but my idea is to provide environment to use Simple Invoices on hosted servers - If you dont want your data online anymore- you can just do a backup of the Simple Invoices db and restore locally and continue using as normal. No lockins etc...

    Simple Invoices is and always will be 100% open source so nothing stopping anyone pulling out any time and using Simple Invoices locally

    basically its your data and app do what you want with it


    Yes, and that would alleviate their concerns.


    re own their data
    - also was thinking about providing on request virtual machines (VPS) pre-setup with Simple Invoices etc and managed/monitored by me - that way you'll know the data is 100% yours and you can do absolutely what you want - full root etc..

    any thoughts?


    Yes, that would really make more sense since if they want, they can just backup the VPS and pull it off onto their local site if they want.

    Client concerns with such data, as they see it, can be summarised by the following:

    * owning the data

    Client: it's mine and not yours.

    * controlling the data

    Client: I tell you where it gets backed up, if it does or I back it up myself

    * restricting who can see it and modify it

    Client: I want xx.xx.xx.xx IP to be able to access it and no one else. I want user1 user2 to have view, and user3 and user4 to have modify, and user5 and user6 to admin.

    * securing the data

    Client: I want all transactions to be secure (SSL), and the backups to be encrypted in case of theft.

    Of course meeting all these requirements still won't get everyone on board, but it would meet the majority of peoples needs when providing a hosted solution.

    Regards,

    Michael.
    • CommentAuthorjustin
    • CommentTimeAug 8th 2007 edited
     permalink
    Thanks Michael

    i agree with what your saying

    just need to get some more robust user/group rights stuff, real data export/import, and allow multiple different entities/domains to user the same install before we can really get this happening

    hopefully we can offer a hosted version of Simple Invoices soon

    Cheers

    Justin