Share My Creation Invoicer WebApp using BVAD3 - Generate PDF Invoices for your businesses [NOW FREE]

Ola

[BANanoVuetifyAD3] Legacy projects that DO NOT use the abstract designer Now FREE


UPDATE: PLEASE RUN THIS EXERCISE FIRST
BVAD PHP Connection Tester

Update: Please keep watch of the BVAD3 library as this gets updated from time to time.


InvoiceCapture.png


PayPal

The PayPal email address is [email protected]

Alipay


alipay.jpg



Watch This


It does the following & uses

1. MySQL backend using PHP.
2. Developed with BANano+Vuetify+Abstract Designer aka BVAD3.
3. CRUD Businesses
4. CRUD Clients
5. CRUD Taxes
6. CRUD Invoices including Line Items
7. Print Data-Tables to PDF
8. Print individual invoice to PDF
9. Save Invoices to MySQL backend

NB: 10. Whilst you are creating your invoices, it is saved to LocalStorage up until you save it to the database.

Running it

1. mysqli extension should be activated on your PHP running webserver.
2. import the attached .SQL file to MySQL - this can be done via phpMyAdmin
3. update the myconfig.php file with your connection settings.
4. update the config.properties file with your actual webserver address for BANanoPHP.
5. Open and run the BANanoVuetifyAD3 project and run it in release mode. DO NOT COMPILE TO JAR.
6. Open the BVAD3Invoicer project and run it.

Source code @ $11.

If you bundle this with the House Rental WebApp, the cost is $16 for both.
If you had procured the House Rental WebApp before, the cost for this for you is $8 instead of $11.


Watch this space!

Reference

BANanoVuetifyAD3
 
Last edited:

Mashiane

Expert
Licensed User
Longtime User
Hi, I`ve added a dropdown showing a list of items from an SQL table. When I select one how do I get it to update the text in the 'Description' filed under Add Line? I tried everything i can think of, but nothing happens.

1. When a user clicks the edit button on the line items, a map of that item is passed to EditLineItem sub.

B4X:
Private Sub dtLineItems_edit (LineItemM As Map)                'ignoredeadcode 
    EditLineItem(LineItemM) 
End Sub

This updates the state variable called "lineitem", meaning that anything that is linked to this state will be updated. Now

2. The description field is coded like this.

B4X:
Dim description As VueElement = vuetify.AddTextField1(Me, licont.MatrixID(1, 1), "description", "lineitem.description", "Description", Null)

With a v-model of lineitem.description, so the description field will be updated with whatever is on the lineitem.get("description")

What you need to do in your case is fire a change event when an item changes. An example of this is here

B4X:
Sub cboBusiness_change(item As String)
    ChangeBusiness(item)
End Sub

Your change item however should update the lineitem map with the new values, along the lines of what EditLineItem is doing.
 

james_sgp

Active Member
Licensed User
Longtime User
Thanks for the explanation, it does help with some overall understanding but not sure if it's useful for my workflow...

1. Click [New Invoice]
2. Select Company
3. Select Client
4. Select Product (if you want to)
5. Click [+] button on the right drawer, if nothing selected in 'cboproducts' skip steps 6 & 7
6. Put 'cboproducts' selected item text into the 'description' field of the right drawer
7. From products map, find product price; and place into 'price' field of the right drawer
8. From productsA map, find product item; and place into 'item' field of the right drawer

Hope my workflow makes sense, and I`m not being stupid?

James
 

Mashiane

Expert
Licensed User
Longtime User
I get you, from the look of this, your work flow is like a wizard approach. Actually I like it. I'm sure we can add it to the list if feature requests.

The second part is then on the drawer itself. Where one can change line items by selecting a product from the combo. Great stuff.

Thanks a lot. These are brilliant ideas.
 

Mashiane

Expert
Licensed User
Longtime User
Hello mashiane,
I'm trying the project you sent me, but it gives me this error.
Hi, it seems you have not set up connections to your db correctly. In the first post there is a connection test exercise that you have to undertake, have you done that to see if that works first?

You can PM me if you experience further issues.
 

medifor

Member
Licensed User
Hi, it seems you have not set up connections to your db correctly. In the first post there is a connection test exercise that you have to undertake, have you done that to see if that works first?

You can PM me if you experience further issues.
OK thanks;
i upgraded php to 7.4 in my laragon and now it works
 

microbox

Active Member
Licensed User
Longtime User
This is looking very good...

One can create an invoice for any company and any client based on already defined settings. For example, we have a prefix and a starting number for invoices.

View attachment 110371

Watch this space!!!!
Good day Mashiane, I made my payment with Transaction ID: 3AN30117MV897690B.
Thank you so much for sharing your talent specially to newbie like me in B4J.
 

Mashiane

Expert
Licensed User
Longtime User
Good day Mashiane, I made my payment with Transaction ID: 3AN30117MV897690B.
Thank you so much for sharing your talent specially to newbie like me in B4J.
Please note that if you join our Telegram Channel, you are eligible to receive our ICT Asset Manager Source code for free. The only thing we kindly request you to do is just test it.


You can join here: https://t.me/bananovuematerial
 

Mashiane

Expert
Licensed User
Longtime User
IMPORTANT BREAKING CHANGE

Please note that with BANanoVuetifyAD3 Version 5.73+ you need to add this line before vuetify.Serve.

This was an automated process before.

B4X:
    vuetify.UseJsPDF

Add it before vuetify.Serve on pgIndex

Thank you

PS

You can download the latest library source code here: https://github.com/Mashiane/BANanoVuetifyAD3/tree/main/Library

Run the project (DO NOT COMPILE TO LIBRARY) to generate your own b4xlib.
 

medifor

Member
Licensed User
hello Mashiane,
hello, I bought the source, because every time I run the program the "reference invoice" always starts from "invoice start"?
 
Top