4 Years and Going.. Thanks!

For everything that's not in any way related to PureBasic. General chat etc...
Karbon
PureBasic Expert
PureBasic Expert
Posts: 2010
Joined: Mon Jun 02, 2003 1:42 am
Location: Ashland, KY
Contact:

4 Years and Going.. Thanks!

Post by Karbon »

Just celebrated the 4th year anniversary of kBilling. Thanks to everyone here that has helped me over the years and a special thanks to the PB team. I would say that the thousands of people that have purchased over the years would thank you guys too, if they knew what PureBasic was :-)

Anyway, guys, thanks for one hell of a good job!
-Mitchell
Check out kBilling for all your billing software needs!
http://www.k-billing.com
Code Signing / Authenticode Certificates (Get rid of those Unknown Publisher warnings!)
http://codesigning.ksoftware.net
User avatar
Rook Zimbabwe
Addict
Addict
Posts: 4322
Joined: Tue Jan 02, 2007 8:16 pm
Location: Cypress TX
Contact:

Post by Rook Zimbabwe »

Way to go Karbon! I wish you continued success, fortun and fame... and may some of that rub off on me!!! 8)
Binarily speaking... it takes 10 to Tango!!!

Image
http://www.bluemesapc.com/
Karbon
PureBasic Expert
PureBasic Expert
Posts: 2010
Joined: Mon Jun 02, 2003 1:42 am
Location: Ashland, KY
Contact:

Post by Karbon »

No fame and very little fortune, but thanks! I love my job!

Best of luck to you!
-Mitchell
Check out kBilling for all your billing software needs!
http://www.k-billing.com
Code Signing / Authenticode Certificates (Get rid of those Unknown Publisher warnings!)
http://codesigning.ksoftware.net
srod
PureBasic Expert
PureBasic Expert
Posts: 10589
Joined: Wed Oct 29, 2003 4:35 pm
Location: Beyond the pale...

Post by srod »

Aye, kBilling rocks! :)
I may look like a mule, but I'm not a complete ass.
Karbon
PureBasic Expert
PureBasic Expert
Posts: 2010
Joined: Mon Jun 02, 2003 1:42 am
Location: Ashland, KY
Contact:

Post by Karbon »

And it might start using esgrid in the near future :-)
-Mitchell
Check out kBilling for all your billing software needs!
http://www.k-billing.com
Code Signing / Authenticode Certificates (Get rid of those Unknown Publisher warnings!)
http://codesigning.ksoftware.net
User avatar
Rook Zimbabwe
Addict
Addict
Posts: 4322
Joined: Tue Jan 02, 2007 8:16 pm
Location: Cypress TX
Contact:

Post by Rook Zimbabwe »

How did you manager the multiple user/network thingy... thats what is killing my POS application at the moment?
Binarily speaking... it takes 10 to Tango!!!

Image
http://www.bluemesapc.com/
Karbon
PureBasic Expert
PureBasic Expert
Posts: 2010
Joined: Mon Jun 02, 2003 1:42 am
Location: Ashland, KY
Contact:

Post by Karbon »

I used SQLite as the database and am currently (as in *right* now) making a version to work with PostgreSQL.

* I switched from using the native SQLite commands to using the ODBC subsystem within PB. It's a blessing and a curse as until 4.1 the ODBC functions didn't work when you enabled Unicode. ODBC is slower but it opens you up to a much longer list of supported databases with very little or no porting the actual data access routines.

This function might make your DB life easier, too. Pass it a database handle and text field name and it will return you the result as a string every time. The built-in ODBC data access functions are pretty hard to use since they are index based.
Procedure.s ReadDatabaseField(DatabaseHandle.l,FieldName.s)

result.s = ""

NumColumns.l = DatabaseColumns(DatabaseHandle)

For x = 0 To NumColumns-1

If DatabaseColumnName(DatabaseHandle, x) = FieldName

;1: Numeric format (a Long (.l) in PureBasic)
;2: string format (a String (.s) in PureBasic)
;3: Numeric float format (a Float (.f) in PureBasic)
;4: Numeric double format (a Double (.d) in PureBasic)
;5: Numeric quad format (a Quad (.q) in PureBasic)

type.l = DatabaseColumnType(DatabaseHandle,x)

Select type

Case 1

result.s = Str(GetDatabaseLong(DatabaseHandle,x))

Case 2

result.s = GetDatabaseString(DatabaseHandle,x)

Case 3

result.s = StrF(GetDatabaseFloat(DatabaseHandle,x))

Case 4

result.s = StrD(GetDatabaseDouble(DatabaseHandle,x))

Case 5

result.s = StrQ(GetDatabaseQuad(DatabaseHandle,x))

Default

result.s = GetDatabaseString(DatabaseHandle,x)

EndSelect

EndIf

Next

result.s = Trim(result)

ProcedureReturn result

EndProcedure
-Mitchell
Check out kBilling for all your billing software needs!
http://www.k-billing.com
Code Signing / Authenticode Certificates (Get rid of those Unknown Publisher warnings!)
http://codesigning.ksoftware.net
Dare
Addict
Addict
Posts: 1965
Joined: Mon May 29, 2006 1:01 am
Location: Outback

Post by Dare »

Congrats!
Dare2 cut down to size
User avatar
pdwyer
Addict
Addict
Posts: 2813
Joined: Tue May 08, 2007 1:27 pm
Location: Chiba, Japan

Post by pdwyer »

What tool did you use for interface design?
Paul Dwyer

“In nature, it’s not the strongest nor the most intelligent who survives. It’s the most adaptable to change” - Charles Darwin
“If you can't explain it to a six-year old you really don't understand it yourself.” - Albert Einstein
Karbon
PureBasic Expert
PureBasic Expert
Posts: 2010
Joined: Mon Jun 02, 2003 1:42 am
Location: Ashland, KY
Contact:

Post by Karbon »

PureVision, of course :-)

http://purevision.reelmedia.org
-Mitchell
Check out kBilling for all your billing software needs!
http://www.k-billing.com
Code Signing / Authenticode Certificates (Get rid of those Unknown Publisher warnings!)
http://codesigning.ksoftware.net
Post Reply