Backup mySQL dengan mysqldump

Kalau yang terdahulu saya bahas dengan membackup mysql dengan script di Visual basic sekarang akan saya bahas membackup database mysql dengan bantuan program mysqldump.exe yang merupakan bawaan dari mysql server. namun juga digabungkan dengan script2 di visual basic. Langsung aja anda kita bahas, anda harus menginstall mysql server (pati sudah terinstall kan udah punya database), kemudian anda cari program mySQLdump dan anda copykan ke folder tempat penyimpanan visual basic anda. kalau sudah langsung aja anda buat project nya.

project terdiri dari 1 project dan 1 form dan 1 commandbutton
silahkan anda copas nih kode

Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long

Private Const SYNCHRONIZE = &H100000
Private Const INFINITE = -1&
Dim FileNama As String
Sub BuatBAT()
Open App.Path + "\Backup.bat" For Output As #1
Print #1, Tab(1); "mysqldump.exe --user=root --password=dikosongi --host=localhost --databases kkpi --opt --quote-names --allow-keywords --complete-insert --add-drop-database --hex-blob> c:\kkpi.sql"
Close #1

End Sub
Private Sub ShellAndWait(ByVal program_name As String)
Dim process_id As Long
Dim process_handle As Long

process_id = Shell(program_name, vbHide)
DoEvents
' Wait for the program to finish.
' Get the process handle.
process_handle = OpenProcess(SYNCHRONIZE, 0, process_id)
If process_handle <> 0 Then
WaitForSingleObject process_handle, INFINITE
CloseHandle process_handle
End If
' Reappear.
End Sub
Private Sub Command1_Click()
BuatBAT
ShellAndWait App.Path + "\Backup.bat"
kill App.Path + "\Backup.bat"
End Sub


sekian dulu semoga aja bermanfaat

chung chin

Backup dan Restore mySQL

ini merupakan source yang saya ambil dari www.pscode.com yang mana digunakan untuk membackup dan merestore database dengan mySQL sehingga bisa untuk memindahkan data mySQL. tentunya dengan visual basic juga.
silahkan lanjutkan aja

silahkan aja di copas ni kode pada module

Option Explicit

'Translate the literals if you want...
Const MSG_01 = "Dibuat Oleh: " 'created by
Const MSG_02 = "NamaDatabase: " 'database name
Const MSG_03 = "Tanggal/Waktu: " 'Data and time
Const MSG_04 = "DD/MM/YY HH:MM:SS" 'Your prefered format to display dates
Const MSG_05 = "DBMS: MySQL v"
Const MSG_06 = "Struktur Tabel " 'Table structure
Const MSG_07 = "Data Tabel " 'Table data
Const MSG_08 = "Akhir dari Backup: " 'End of backup
Public Sub MySQLBackup(ByVal strFileName As String, cnn As ADODB.Connection)
' strFileName contains the filename where you want to backup to go...
' It will overwrite the file if it exists...
' cnn is the current conection with the database...
On Error Resume Next

Dim rss As ADODB.Recordset
Dim rssAux As ADODB.Recordset

Dim X As Long, i As Integer

Dim strTableName As String
Dim strCurLine As String
Dim strBuffer As String
Dim strDBName As String

X = FreeFile
Open strFileName For Output As X

Print #X, ""
Print #X, "#"

Print #X, "# " & MSG_01 & App.Title & " v" & App.Major & "." & App.Minor & "." & App.Revision

'Looking for the database name
strDBName = Mid(cnn.ConnectionString, InStr(cnn.ConnectionString, "DATABASE=") + 9)
strDBName = Left(strDBName, InStr(strDBName, ";") - 1)
Print #X, "# " & MSG_02 & strDBName

Set rss = New ADODB.Recordset
Set rssAux = New ADODB.Recordset

'Looking for the version of MySQL
Print #X, "# " & MSG_03 & Format(Now, MSG_04)
rss.Open "show variables like 'version';", cnn
If Not rss.EOF Then
Print #X, "# " & MSG_05 & rss.Fields(1)
End If
rss.Close

'Preventing errors by foreign key violation during the restoring process
Print #X, "#"
Print #X, ""
Print #X, "SET FOREIGN_KEY_CHECKS=0;"
Print #X, ""

strTableName = ""

With rss
.Open "SHOW TABLE STATUS", cnn

'For each table...
Do While Not .EOF
strTableName = .Fields.Item("Name").Value
With rssAux
.Open "SELECT * FROM " & strTableName & "", cnn
If Not .EOF Then
Print #X, "INSERT INTO `" & strTableName & "` VALUES "

Do While Not .EOF
strCurLine = ""
For i = 0 To .Fields.Count - 1
strBuffer = .Fields.Item(i).Value

If .Fields.Item(i).Type = 131 Then
strBuffer = Replace(Format(strBuffer, "0.00"), ",", ".")
End If

'Some safe replacements...
strBuffer = Replace(strBuffer, "\", "\\")
strBuffer = Replace(strBuffer, "'", "\'")
strBuffer = Replace(strBuffer, Chr(10), "")
strBuffer = Replace(strBuffer, Chr(13), "\r\n")

If strCurLine <> "" Then
strCurLine = strCurLine & ", "
End If
strCurLine = strCurLine & "'" & strBuffer & "'"
Next i
.MoveNext

strCurLine = "(" & strCurLine & ")"
If .EOF Then
Print #X, strCurLine & ";"
Else
Print #X, strCurLine & ","
End If
Loop

End If

.Close
End With

Print #X, "unlock tables;"
Print #X, "#--------------------------------------------"

.MoveNext
Loop

'Setting the DB to its normal behavior...
Print #X, ""
Print #X, "SET FOREIGN_KEY_CHECKS=1;"
Print #X, ""
Print #X, "# " & MSG_08 & Format(Now, MSG_04)

.Close
End With

Close #X
End Sub
Public Sub MySQLRestore(ByVal strFileName As String, cnn As ADODB.Connection)
' strFileName contains the filename of the backup...
' cnn is the current conection with the database...

Dim lngTotalBytes As Long, lngCurrentBytes As Long
Dim X As Integer, strCurLine As String, strAux As String
Dim blnPassLines As Boolean
Dim blnAnalizeIt As Boolean

X = FreeFile

On Error GoTo ErrDrv

Open strFileName For Input As #X
lngTotalBytes = LOF(X)

blnPassLines = False
Do While Not EOF(X)
Line Input #X, strCurLine
lngCurrentBytes = lngCurrentBytes + Len(strCurLine)

'If you want to inform the user about the progress of the restoring process...
' do so with UpdateProgressBar (or whatever name you gave it to this function).
'Call UpdateProgressBar(lngTotalBytes, lngCurrentBytes)
'DoEvents

'Avoiding comments...
blnAnalizeIt = True
strCurLine = Trim(strCurLine)
If Not blnPassLines Then
If Left(strCurLine, 1) = "#" Then
blnAnalizeIt = False
ElseIf Left(strCurLine, 2) = "/*" Then
blnAnalizeIt = False
blnPassLines = True
End If
ElseIf Right(Trim(strCurLine), 2) = "*/" Then
blnPassLines = False
blnAnalizeIt = False
End If

'if the line should be proccessed...
If blnAnalizeIt And strCurLine <> "" Then

'Do it... Searching for a whole SQL statment
' (those with a trailing semicolon)
While Mid(strCurLine, Len(strCurLine), 1) <> ";"
strAux = strCurLine
Line Input #X, strCurLine
lngCurrentBytes = lngCurrentBytes + Len(strCurLine)
strCurLine = Trim(strCurLine)

'Call UpdateProgressBar(lngTotalBytes, lngCurrentBytes)
'DoEvents

strCurLine = strAux & strCurLine
Wend

'Execute the sentence...
cnn.Execute strCurLine
End If

'Call MyDoEvents
Loop

Close #X
'Call UpdateProgressBar(lngTotalBytes, lngTotalBytes)
HackPesan "Penambahan OK"
Exit Sub
ErrDrv:

Debug.Print "ERROR:" & Err.Number & vbNewLine & Err.Description & vbNewLine, vbCritical
Err.Clear

End Sub


nah kalau ini di taruh pada command
Call MySQLBackup(App.Path + "\Backup\backup" + Format(Now, "hhmmss") + ".sql", cn)


demikian semoga bermanfaat

Pelatihan Kepala Sekolah SMP se-Kab Rembang

pada tanggal 14 sampai 15 Juli kemarin diadakan pelatihan kepala sekolah SMP se-Kabupaten Rembang di SMP 1 Pamotan dengan materi Internet dan Powerpoint. saya dan teman saya Irawan karyo Utomo di tunjuk sebagai pemakalah dalam acara tersebut. berikut aku beri Modul Pelatihan tersebut. silahkan klik disini


Windows Seven X-Waja

ni windows yang udah aku modified bagi yang pengin bisa copy ke saya
Photobucket


didalamnya sudah include
Office 2009 (pakainya KingSoft Office mirip office 2003)
7zip
winrar
Smadav 2009 rv5.1
CorelDraw 11
Nero
FoxitReader
Yahoo Messenger
Mozilla Firefox 3.7
Client dan Server (untuk warnet)
ViStart
Viglance
KLite MegaCodec
IDM 5.14
GadGet

Buat Program dengan tampilan pakai ribbon office2007

Udah lama ga posting karena ngoprek buat source code dengan aplikasi codejock, setelah sekian lama ngoprek akhirnya berhasil buat tampilan yang sesuai dengan keinginan.
berikut akan aku sertakan tampilannya biar semua lihat. dan untuk source codenya menyusul.



source code akan aku berikan jika ada min 10 komentar di posting ini
sebenernya nunggu sampai 10 komentar, tapi aku ga tega karena mungkin akan lama aku ga bisa OL karena sekolah udah liburan jadi ikutan libur deh. biar ga di uber2 utang ama temen-teman aku posting source codenya deh. lihat di bawah.
ni source code nya beserta ocxnya : klik disini

Buat DSN untuk database mySQL

Posting ini saya buat karena pada waktu aku buat suatu project kesulitan gimana cara memanggil database mySQL untuk di taruh report sehingga report bisa menggunakan database tersebut. akan tetapi pada waktu buat DSN di komputer langsung maka setelah aku pidah project kita di komputer lain maka DSN juga ga ikut sehingga report tidak bisa memanggil database kita.
DSN bisa dibuat dengan sendirinya. setelah gogling dan membongkar source code yang aku miliki sehingga mendapatkan source create DSn dengan fungsi API.
kali ini akan aku share source code yang telah aku buat.

pertama-tama buat dulu module yang berisi fungsi untuk menuliskan ke registry
ni sourcenya silahkan di copas

Public Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long
Public Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long
Public Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Public Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Public Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long ' Note that if you declare the lpData parameter as String, you must pass it By Value.
Public Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Public Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long ' Note that if you declare the lpData parameter as String, you must pass it By Value.
Public Declare Function RegSetValue Lib "advapi32.dll" Alias "RegSetValueA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal dwType As Long, ByVal lpData As String, ByVal cbData As Long) As Long
Private Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long
Enum REG
HKEY_CURRENT_USER = &H80000001
HKEY_CLASSES_ROOT = &H80000000
HKEY_CURRENT_CONFIG = &H80000005
HKEY_LOCAL_MACHINE = &H80000002
HKEY_USERS = &H80000003
End Enum
Public Const READ_CONTROL = &H20000
Public Const KEY_QUERY_VALUE = &H1
Public Const KEY_SET_VALUE = &H2
Public Const KEY_CREATE_SUB_KEY = &H4
Public Const KEY_ENUMERATE_SUB_KEYS = &H8
Public Const KEY_NOTIFY = &H10
Public Const KEY_CREATE_LINK = &H20

'Tipe Reg Key ROOT ...
Public Const ERROR_SUCCESS = 0
Public dsnDriver As String
Enum TypeStringValue
REG_SZ = 1
REG_EXPAND_SZ = 2
REG_MULTI_SZ = 7
End Enum
Enum TypeBase
TypeHexadecimal
TypeDecimal
End Enum
Public Type SECURITY_ATTRIBUTES
nLength As Long
lpSecurityDescriptor As Long
bInheritHandle As Long
End Type
Public Declare Function CreateDirectory Lib "kernel32" Alias "CreateDirectoryA" (ByVal lpPathName As String, lpSecurityAttributes As SECURITY_ATTRIBUTES) As Long
Public Declare Function NdamelAnak Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long

Public Keamanan As SECURITY_ATTRIBUTES
Public Sub GaweAnakManeh(Ibu As String, Anak As String)
NdamelAnak Ibu, Anak, 0
End Sub
Public Function NdamelTulisan(hKey As REG, Subkey As String, RTypeStringValue As TypeStringValue, strValueName As String, strData As String) As Long

On Error Resume Next
Dim ret As Long

RegCreateKey hKey, Subkey, ret
NdamelTulisan = RegSetValueEx(ret, strValueName, 0, RTypeStringValue, ByVal strData, Len(strData))
RegCloseKey ret

End Function
Public Sub GaweDSN(dsnName As String, dsnServer As String, dsnPort As String, dsnUser As String, dsnPass As String)
If Not cekDrivermySQL(dsnDriver) Then
MsgBox "Tidak ada driver mySQL silahkan di install dulu", vbOKOnly + vbCritical, "Error.!!"
MsgBox "Program sementara di tutup", vbOKOnly + vbCritical, "Error.!!"
End
End If
NdamelTulisan HKEY_LOCAL_MACHINE, "SOFTWARE\ODBC\ODBC.INI\" & dsnName, REG_SZ, "Description", "MySQL for Education"
NdamelTulisan HKEY_LOCAL_MACHINE, "SOFTWARE\ODBC\ODBC.INI\" & dsnName, REG_SZ, "Database", dsnName
NdamelTulisan HKEY_LOCAL_MACHINE, "SOFTWARE\ODBC\ODBC.INI\" & dsnName, REG_SZ, "Server", dsnServer
NdamelTulisan HKEY_LOCAL_MACHINE, "SOFTWARE\ODBC\ODBC.INI\" & dsnName, REG_SZ, "Port", dsnPort
NdamelTulisan HKEY_LOCAL_MACHINE, "SOFTWARE\ODBC\ODBC.INI\" & dsnName, REG_SZ, "User", dsnUser
NdamelTulisan HKEY_LOCAL_MACHINE, "SOFTWARE\ODBC\ODBC.INI\" & dsnName, REG_SZ, "Password", dsnPass
NdamelTulisan HKEY_LOCAL_MACHINE, "SOFTWARE\ODBC\ODBC.INI\" & dsnName, REG_SZ, "Server", dsnServer
NdamelTulisan HKEY_LOCAL_MACHINE, "SOFTWARE\ODBC\ODBC.INI\" & dsnName, REG_SZ, "Driver", dsnDriver
NdamelTulisan HKEY_LOCAL_MACHINE, "SOFTWARE\ODBC\ODBC.INI\" & dsnName, REG_SZ, "Stmt", ""
NdamelTulisan HKEY_LOCAL_MACHINE, "SOFTWARE\ODBC\ODBC.INI\" & dsnName, REG_SZ, "Option", ""
NdamelTulisan HKEY_LOCAL_MACHINE, "SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources", REG_SZ, dsnName, "MySQL ODBC 3.51 Driver"
End Sub
Public Function AdaDriver(RegKeyPath As String, _
RegKeyName As String, _
ByRef RegKeyValue As String) As Boolean
Dim DoesIt As Boolean
Dim Result As Long
Dim hKey As Long
Result = RegOpenKeyEx(HKEY_LOCAL_MACHINE, RegKeyPath, 0&, KEY_QUERY_VALUE, hKey)
If Result <> ERROR_SUCCESS Then
AdaDriver = False
Exit Function
End If
Result = RegQueryValueEx(hKey, RegKeyName, 0&, REG_SZ, ByVal RegKeyValue, Len(RegKeyValue))
RegCloseKey (hKey)


If Result <> ERROR_SUCCESS Then
AdaDriver = False
Exit Function
End If
AdaDriver = True
End Function


Public Function cekDrivermySQL(ByRef dsnDriver As String) As Boolean
Dim RegKeyPath As String
Dim RegKeyName As String
Dim RegKeyValue As String
Dim DoesIt As Boolean


DoesIt = False
'edit here to change the driver information
RegKeyPath = "SOFTWARE\ODBC\ODBCINST.INI\MySQL ODBC 3.51 Driver"
RegKeyName = "Driver"
RegKeyValue = String(255, Chr(32))



If AdaDriver(RegKeyPath, RegKeyName, RegKeyValue) Then
dsnDriver = RegKeyValue
DoesIt = True
Else
DoesIt = False
End If

cekDrivermySQL = DoesIt
End Function

Install Puppy Linux di Anoa 212 Zyrex

Kemarin aku di suruh memperbaiki laptop merk Anoa 212 Zyrex yang berhardisk cuma 2 GB, tidak ada CDRoom, DVD. malah tambah bingung lagi di dalamnya udah ada windows dan ternyata blue screen. aku coba install windows XP SP1 setelah proses copy file install lasi dan restart ternyata blue screen lagi. aku coba beberapa kali lagi ternyata sama. aku coba pakai live cd windows ternyata juga sama bluescreen. sehingga aku putuskan untuk install linux. aku coba pakai ubuntu 9.04 versi livecdnya ternyata berjalan dengan sukses (ga ada blue screennya) eh aku coba install ternyata HD ga cukup. pusing dehhhhh
setelah aku browsing n cari linux yang kecil tapi tampilannya bagus aku nemuin yang namanya Puppy Linux dan aku coba download versi yang terakhir dengan besar kurang lebih 100 MB.
setelah itu aku burn di cd dan aku coba ternyata sukses berjalan, yang jadi pertanyaannya gimana cara memasukkan ke HD laptopnya. aku coba beberapa kali mungkin sampai 10 x lebih, karena selama 2 hari aku coba sampai jam 1 malam terus ga berhasil, aku browsing cari di mbah google juga masuh ga bisa2. kemudian aku coba utak utik dan berhasil.....
mau tau caranya:
gini....

Langsung aja ya
1. format HDnya pakai gparted (klik start --> system -- gparted)
2. format dengan ext2 (katanya puppy belum kenal dengan ext3)
3. kemudian klik appply tunggu beberapa menit
4. kemudian klik kanan area HD kemudian klik manage flag
5. kemudian pilih yang boot
6. tunggu kemudian tutup program gparted
7. klik start --> setup --> remastering cdlive
8. ikuti langkah selanjutnya sampai selesa
9. klik start --> setup --> install universal..
10. ikuti langkahnya....
11. sampai cd installnya keluar
12. kemudian restart....
13. kalau ada perintah simpan klik aja simpan
14. tunggu beberapa saat karena biasanya sedikit lama
15. selasai deh anda bisa menikmati puppy linux

pasti anda bertanya kog bisa install pakai cd padahal ga ada cd. anda bisa pakai cd external atau anda buat booting dengan FD.

maaf jika ada kesalahan maklum newbie dalam hal linux.

semoga aja bermanfaat

Chung Chin

Install Ubuntu 9.04 di Laptop BYON M31W

setelah nunggu akhirnya aku selesai juga download ubuntu 9.04 setelah aku coba di laptop BYON M31W juga harus menyisipkan acpi=off noapic nolapic. dan tidak mendukung VGA SIS, akhirnya aku coba untuk install terus, setelah selesai ternyata ga usah mengedit grub karena secara otomatis juga udah tertulis acpi=off, noapic, nolapic. selain itu Wireless juga langsung ke detect ga harus memakai ndiwswrapper. sekian ya hasil review install ubuntu.9.04 di laptop byon m31w.
semoga aja bermanfaat.


Cetak struk pakai printer star tipe cutter 2

Yang tadi ada source code yang aku buat, sekarang akan aku berikan source code dengan vb yang di buat oleh team support dari pembuat printernya (star). Silahkan di ikuti ya.... (lanjutkan aja)

source code ini di gabungkan dengan metode rawprinter yang pernah aku bahas di posting yang terdahulu. langsung aja ya ni sourcenya

Call StartPagePrinter(lhPrinter)
' Sending raw data to the printer
sWrittenData = Chr(&H1B) + Chr(&H1D) + Chr(&H61) + Chr(&H1) 'Center Alignment - Refer to Pg. 3-29
sWrittenData = sWrittenData + Chr(&H5B) + "If loaded.. Logo1 goes here" + Chr(&H5D) + vbCrLf
sWrittenData = sWrittenData + Chr(&H1B) + Chr(&H1C) + Chr(&H70) + Chr(&H1) + Chr(&H0) + vbCrLf 'Stored Logo Printing - Refer to Pg. 3-38
sWrittenData = sWrittenData + "Star Clothing Boutique" + vbCrLf
sWrittenData = sWrittenData + "1150 King Georges Post Rd." + vbCrLf
sWrittenData = sWrittenData + "Edison, NJ 08837" + vbCrLf
sWrittenData = sWrittenData + vbCrLf
sWrittenData = sWrittenData + Chr(&H1B) + Chr(&H1D) + Chr(&H61) + Chr(&H0) 'Left Alignment - Refer to Pg. 3-29
sWrittenData = sWrittenData + Chr(&H1B) + Chr(&H44) + Chr(&H2) + Chr(&H10) + Chr(&H22) + Chr(&H0) 'Setting Horizontal Tab - Pg. 3-27
sWrittenData = sWrittenData + "Date: 12/31/2008 " + Chr(&H9) + " Time: 9:10 PM" 'Moving Horizontal Tab - Pg. 3-26
sWrittenData = sWrittenData + "------------------------------------------------" + vbCrLf + vbCrLf
sWrittenData = sWrittenData + Chr(&H1B) + Chr(&H45) 'Select Emphasized Printing - Pg. 3-14
sWrittenData = sWrittenData + "SALE" + vbCrLf
sWrittenData = sWrittenData + Chr(&H1B) + Chr(&H46) 'Cencel Emphasized Printing - Pg. 3-14
sWrittenData = sWrittenData + "SKU " + Chr(&H9) + " Description " + Chr(&H9) + " Total" + vbCrLf
sWrittenData = sWrittenData + "300678566 " + Chr(&H9) + " PLAN T-SHIRT" + Chr(&H9) + " 10.99" + vbCrLf
sWrittenData = sWrittenData + "300692003 " + Chr(&H9) + " BLACK DENIM" + Chr(&H9) + " 29.99" + vbCrLf
sWrittenData = sWrittenData + "300651148 " + Chr(&H9) + " BLUE DENIM" + Chr(&H9) + " 29.99" + vbCrLf
sWrittenData = sWrittenData + "300642980 " + Chr(&H9) + " STRIPE DRESS" + Chr(&H9) + " 49.99" + vbCrLf
sWrittenData = sWrittenData + "300638471 " + Chr(&H9) + " BLACK BOOT" + Chr(&H9) + " 35.99" + vbCrLf
sWrittenData = sWrittenData + vbCrLf
sWrittenData = sWrittenData + "Subtotal " + Chr(&H9) + "" + Chr(&H9) + " 156.95" + vbCrLf
sWrittenData = sWrittenData + "Tax " + Chr(&H9) + "" + Chr(&H9) + " 00.00" + vbCrLf
sWrittenData = sWrittenData + "------------------------------------------------" + vbCrLf
sWrittenData = sWrittenData + "Total" + Chr(&H6) + "" + Chr(&H9) + Chr(&H1B) + Chr(&H69) + Chr(&H1) + Chr(&H1) + " $156.95" + vbCrLf 'Character Expansion - Pg. 3-10
sWrittenData = sWrittenData + Chr(&H1B) + Chr(&H69) + Chr(&H0) + Chr(&H0) 'Cancel Character Expansion - Pg. 3-10
sWrittenData = sWrittenData + "------------------------------------------------" + vbCrLf + vbCrLf
sWrittenData = sWrittenData + "Charge" + vbCrLf + "$159.95" + vbCrLf
sWrittenData = sWrittenData + "Visa XXXX-XXXX-XXXX-0123" + vbCrLf + vbCrLf
sWrittenData = sWrittenData + Chr(&H1B) + Chr(&H34) + "Refunds and Exchanges" + Chr(&H1B) + Chr(&H35) + vbNewLine 'Specify/Cencel White/Black Invert - Pg. 3-16
sWrittenData = sWrittenData + "Within " + Chr(&H1B) + Chr(&H2D) + Chr(&H1) + "30 days" + Chr(&H1B) + Chr(&H2D) + Chr(&H0) + " with receipt" + vbCrLf 'Specify/Cancel Underline Printing - Pg. 3-15
sWrittenData = sWrittenData + "And tags attached" + vbCrLf + vbCrLf
sWrittenData = sWrittenData + Chr(&H1B) + Chr(&H1D) + Chr(&H61) + Chr(&H1)
sWrittenData = sWrittenData + Chr(&H1B) + Chr(&H62) + Chr(&H6) + Chr(&H2) + Chr(&H2) + " 12ab34cd56" + Chr(&H1E) + vbCrLf 'Barcode - Pg. 3-39 - 3-40
sWrittenData = sWrittenData + Chr(&H1B) + Chr(&H64) + Chr(&O2) 'Cut - Pg. 3-41
sWrittenData = sWrittenData + Chr(&H7)



aku aja bngung tu untuk apa aja. hehe
buanyak kode untuk printer dot matrix
bagi yang bisa kasih komentar ya, buat sharing ilmu aja. maklum newbie tinggal copas