Senin, 30 November 2009

Urbanisasi dan urbanisme

Urbanisasi adalah suatu proses berpindahnya penduduk dari desa ke kota atau dapat pula dikatakan bahwa urbanisasi merupakan proses terjadinya masyarakat perkotaan

Proses urbanisasi dapat terjadi dengan lambat maupun dengan cepat, hal mana tergantung daripada keadaan masyarakat yang bersangkutan. Proses tersebut terjadi dengan menyangkut 2 aspek, yaitu :
- Perubahannya masyarakat desa menjadi masyarakat kota

- Bertambahnya penduduk kota yang disebabkan oleh mengalirnya penduduk dari desa desa .

Sehubungan dengan proses tersebut di atas, maka ada beberapa penyebab yang mengakibatkan suatu daerah tempat tinggal mempunyai penduduk yang baik. Artinya sebab utama daerah mempunyai daya tarik sedemikian rupa, sehingga orang orang pendatang semakin banyak. Secara umum dapat dikatakan bahwa sebab sebabnya adalah sebagai berikut:

1) Daerahnya termasuk jadi pusat pemerintahan atau menjadi ibukota
2) Tempat tersebut letaknyasangat strategis sekali untuk usaha usaha perdagangan/ perekonomian
3) Timbulnya industri di daerah itu

pertumbuhan

Pengertian pertmbuhan

Walaupun perbedaan pendapat diantara para ahli, namun di akui bahwa pertumbuhan itu adalah suatu perubahan yang menuju ke arah yang lebih maju dan lebih dewasa.
Perubahan ini pada lazimnya disebut dengan istilah proses

untuk selanjutnya timbul beberapa pendapat mengenai pertumbuhan dari berbagai aliran yaitu asosiasi, aliran psikologi gestalt, aliran sosilogi.

Menurut pendapat yang menganut aliran asosiasi:
Pertumbuhan dasarnya adalah proses asosiasi. Dan dapat dirumuskan suatu pengertian tentang proses asosiasi yaitu terjadinya perubahan pada seseorang secara tahap demi tahap karena engaruh baik dari pengalaman atau empiris melalui panca indera yang menimbulkan sensasi maupun pengalaman dalam megenai keadaan batin sendiri yang menimbulkan refleksionis

Menurut yang berpendapat psikologis gestalt aliran tentang pertumbuhan:

pertumuhan adalah proses diferensiasi. Dalam aliran ini disimpulkan bahwa pertumbuhan adalah proes perubahan secara perlahan lahan pada manusia dalam mengenal suatu, ang semula dari keseluruhan baru ke bagian bagiannya

menurut yang berpendapat aliran sosioloigi:

pertumbuhan adalah proses perubahan dari mula mula yang asosial atau juga sosial kemudian tahap demi tahap di sosialisasikan.

Faktor faktor yang mempengaruhi pertumbuhan

Dalam garis besarnya pertumb uhan di bagi kedalam 3 goongan:
a. Pendirian navistik
b. Pendirian empiristik dan environtment
c. Pendirian konvergen dan interksionisme

ILMU SOSIAL DASAR DAN ILMU PENGETAHUAN SOSIAL

ILMU SOSIAL DASAR DAN ILMU PENGETAHUAN SOSIAL

Ilmu sosial dasar dan ilmu pengetahuan sosial kedua duanya mempunai persamaan dan perbedaan
Diantaranya:

- Persamaan diantara keduanya :
a. Kedua duanya merupakan bahan study untuk kepentingan program pendidikan dan pengajaran
b. Keduanya bukan disiplin yang berdiri sendiri
c. Keduanya mempunyai materi yang terdiri dari kenyataan masalah sosial

- Perbedaan diantara keduanya
a. Ilmu sosial dasar diberikan di perguruan tinggi
b. Ilmu sosial dasar merupakan suatu mata kuliah tunggal
c. Ilmu sosial dasar di arahkan kepada pembentukan sikap dan kepribadian


Ruang lingkup sosial dasar

Materi ilmu sosial dasar terdiri atas masalah masalah sosial. Untuk dapat menelaah masalah masalah sosial, hendaknya terlebih dahulu mengidentifikasi kenyataan kenyataan sosial dan memahami konsep sosial tertentu. Dari paha tersebut ilmu sosial dasar dapat dibedakan menjadi 3 golongan yaitu :

1. Kenyataan kenyataan sosial yang ada dalam masyarakat
2. Konsep konsep sosial atau pengertian pengertian tentang kenyataan kenyataan sosial dibatasi pada konsep dasar atau elementer saja yang sangat diperlukan untuk mempelajari masalah masalah sosial yang dibahas dalam ilmu pengetahuan sosial
3. Masalah masalah yang timbul di masyarakat.

ISD Sebagai salah satu MKDU

Pendahuluan

Ilmu sosial dasar adalah pengetahuan yang menelaah masalah masalah sosial khususnya yang diwujudkan oleh maskyarakat indoenesia dengan menggunakan pengertian pengertian (fakta, konsep, teori) yang berasal dari sebagian bidang pengetahuan kalian dalam laapangan ilmu ilmu sosial seperti sejarah, ekonomi, geogrfi sosial, sosiaologi, antropologi sosial

Berdasarkan ilmu filsafat yag dianggap sebagai ibu jari dari ilmu peetahuan, maka ilmu pengetahuan dadapat di kelmpokkan menjadi 3 kelompok:
a. Natural science (ilmu ilmu alamiah), meliputi : Fisika, kimia, astronomi, biologi dan lain lain
b. Sosial science (ilmu ilmu sosial), yang terdiri dari : sosiaologi Ekonomi, politik, antropologi, sejarah, psikologi, geografi, dan lain lain
c. Humanities (ilmu ilmu budaya) meliputi : bahasa, agama, kesusastraan, kesenian, dan lain lain.

Mengikuti pembagian ilmu diatas maka Ilmu sosial dasar dan ilmu budaya dasar adalah satuan pengetahuan yang dikembangkan ebagai usaha pendidikan.

ISD tidak merupakan gabungan dari ilmu ilmu sosial yang di padukan karena masing masing sebagai disiplin ilmu yang memiliki objek dan metode ilmiahnya sendiri sendiri yang tidak mungkin dipadukan .

ISD merupakan suatu bahan study atau program pengerjaan yang khuus di rancang untuk kepentingan pendidikan/ pengajaran di indonesia yang di berikan di perguruan tinggi.

Jadi mata kuliah ilmu sosial dasar diberikan dalam rangka usaha untuk memberikan pengetahuan dasar dan pengertian umum tentang konsep konsep yang di kembangkan guna megkaji masalah masalah sosial.


Tujuan ISD

Ilmu sosial dasar mempunyai tujuan pembinaan mahasiswa agar:

a. Memahami dan menyadari adanya kenyataan kenyataan sosial yang dan masalah masalah sosial yang ada dalam masyarakat
b. Pek terhadap masalah masalah sosial dan tanggap untuk ikut serta dalam usaha usahanya menanggulanginya
c. Menyadari setiap masalah sosial yang timbul dalam masyarakat selalu bersifat kompleks dan hanya dapat mendekatinya mempelajarinya secara keritis interdisipliner
d. Memahami jalan pikiran para ahli dari bidang ilmu pengetahuan lain dan dapat berkomunikasi dengan mereka dalam rangka penanggulangan masalah sosial yang timbul

Minggu, 22 November 2009

Pengenalan Komputer

Komputer


Dewasa ini kita telah tahu, komputer adalah alat elektronik yang digunakan untuk membantu manusia dalam mengerjakan tugas tugas nya.

Salah satu pengertian komputer, Komputer adalah media informasi dengan memasukan input dan memproses data dengan mengeluarkan hasil output yang kita inginkan dan bekerja secara otomatis. Dikerjakan dengan software atau applikasi dan tersimpan melalui media penyimanan data.
Data adalah bahan dasar yang akan diproses untuk menghasilkan sebuah informasi. Jadi, informasi adalah kumpulan kumpulan data yang diolah menjadi bentuk yang lebih berarti untuk penerima informasi tersebut.

Berikut adalah siklus pengolahan data









Organization : Tahap ini adalah proses dari pengumpulan data
Input : Tahap ini adalah proses memasukan data ke dalam computer
Processing : Tahap ini merupakan tempat untuk memproses data yang telah dimasukan
Storage : Penyimpanan hasil data yang telah diproses
Output : hasil dari data yang telah diproses
Distribution : Penyampaian data yang telah diproses
Penggolongan komputer

Penggolongan komputer ada 3

- menurut data yang di olah
- menurut penggunannya
- menurut ukurannya

Penggolongan komputer menurut data yang di olah, contohnya:

1. analog: datanya berupa fisik
2. digital: datanya berupa perhitungan
3. hybrid: gabungan antara data analog dan digital

penggolongan computer menurut penggunannya, contohnya:

1. special purpose computer: computer yang digunakan untuk keperluan khusus (hanya untuk 1 buah system yang di jalankan)
2. general purpose computer: computer yang di gunakan untuk keperluan umum, dengan kata lain computer dapat di gunakan untuk beberapa buah system applikasi.
System adalah suatu komponen yang saling ketergantungan dan terkait untuk mencapai tujuan.
Penggolongan computer Menurut ukuran, diantaranya:
- micro computer
- mini computer
- small computer
- medium computer
- large computer
- super computer

Sejarah Komputer


Komputer generasi pertama



Komputer generasi pertama dimulai dari tahun 1946, yang termasuk ke dalam komputer generasi pertama ialah komputer yang menggunakan konsep dasar stored program.
Stored program : operasi komputer di control oleh program yang disimpan di memori komputer. Rogram di buat dalam bahasa mesin, yang terdiri dari instruksi instruksi angka 0 dan 1 dala urutan tertentu.

Ciri komputer generasi pertama:

1. komponen yang digunakan adalah tabung hampa udara untuk sirkuitnya
2. program hanya dapat dibuat dengan bahasa mesin
3. menggunakan konsep stored program
4. menggunakan simpanan luar, berupa magnetic tape atau magnetic disk
5. ukuran fisik komputer besar
6. cepat panas
7. simpananya kecil
8. membutuhkan daya listrik yang besar
9. proses kurang cepat
10. orientasinya untuk aplikasi bisnis

Komputer generasi pertama dibuat dngan nama ENIAC (electronic numerical integrator and calculator) yang dibuat pada tahun 1942 di mmoore school of electrical engineering oleh dr. John w. Maunchly dan J.Presper Eckert. ENIAC dibuat untuk membantu US. ARMY untuk menghitung target sasaran bom dalam perang dunia ke 2.



Pada tahun 1947

Dr. John Bardeen, Dr. Walter H. Brattain dan Dr. William scockley di bell laboratories menemukan transistor yang nantinya merupakan komponen untuk generasi ke-2

Pada tahun 1948 di buat komputer yang bernama IBM selective sequence electronic calculator

Pada tahun 1949, tepatnya pada bulan mei di Cambridge university inggris, telah di operasikan sebuah komputer dengan nama EDSAC (electronic delayed storage automatic komputer), komputer yang pertama kali menggunakan stored program. Dan pada tahun ini juga HARVARD MARK III dibuat dengan menggunakan magnetic drum untuk penyimpanan program.

Pada tahun 1950 Alan M. Turing di national Physical laboratory, London, telah membuat komputer dengan nama ACE (automatic calculating engine)
Juga dibuat konstruksi dari komputer SEC (simple electronic komputer) yang menggunakan drum magnetic sebagai memory penyimpanannya di electronic computation laboratory of birkbeck college. University of London.

Pada tahun 1951 komputer yang komersial yang pertama yang di produksi di inggris yang bernama LEO (lyon elecktronic office)

Pada tahun 1952 komputer yang sepenuhnya menggunakan konsep stored program tercipta dengan nama EDVAC ( electronic discrete variable automatic komputer), di buat oleh moore school of electrical engineering. EDVAC lebih kecil dari EDSAC namun memiliki kemampuan yang lebih besar dari EDSAC.
Pada tahun ini juga lahir komputer whirlwind I yang menggunakan magnetic core memory oleh Dr. Jay W. Forrester di Massachussetts institute of technology.

Pada tahun 1953 IBM memproduksi komputer IBM 701 yang merupakan komputer komersial berukuran besar

Pada tahun 1954 komputer yag paling komersial generasi pertama paling populer.
IBM memproduksi komputer IBM 650. baik komputer IBM 701 maupun IBM 650 adalah komputer yang berorientasi pada applikasi bisnis.

Pada tahun 1956 Komputer yang menggunakan simpanan luar dengan akses secara random tercipta, RAMAC 305 (random access method for accounting and control) merupakan komputer yang pertama memungkinkan file disimpan di disk dengan akses secara random

Pada tahun 1959, IBM 705 di buat untuk mengganti IBM 701. IBM 705 telah memantapkan IBM dalam pengolahan data.

Komputer generasi pertama yang lainnya :

- UNIVAC II
- Datamatic 1000
- Mark II, Mark III, IBM 702, IBM 709
- CRC,NCR 102A, NCR 102D
- BIZMAC I, BIZMAC II

Rabu, 05 November 2008

Ekspor Txt ke Excel

Hallo-hallo, sudah lama ngga ngisi blog ini, semoga teman semua tidak pada bosen dan semoga tambah pinter pemrograman VBnya. Untuk posting kali ini saya mencoba memenuhi permintaan salah satu pengunjung mengenai peng-Eksporan data dari format .txt diekspor ke format excel.



Langsung saja yang dibutuhkan dalam pembuatan aplikasi ini adalah ListView untuk menampung data dari file data.txt, 1 Commandbutton untuk melihat dan sekaligus menyimpan file dalam format xls ataupun txt, dan combo box untuk menampung pilihan format yang ingin dilihat yaitu .txt atau .xls, Agar lebih jelas lagi lihat gambar di atas. Tanpa basa-basi silahkan dipelajari code-code dibawah ini.

Masukan code dibawah ini pada form
Option Explicit
Public Enum DataSiswa
Nama = 1
Kelas
JenisKelamin
NIS
Alamat
Tempatlahir
TanggalLahir
End Enum

Private Const SE_ERR_NOASSOC = 31
Private Declare Function timeGetTime Lib "winmm.dll" () As Long
Private Declare Function GetDesktopWindow Lib "user32" () As Long
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Declare Function GetSystemDirectory Lib "kernel32" Alias "GetSystemDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long


Private Sub LoadHeader()
On Error GoTo Salah

'mengeset columnheaders
With lvwDataSiswa

.ColumnHeaders.Add , "Nama", "Nama"
.ColumnHeaders.Add , "Kelas", "Kelas"
.ColumnHeaders.Add , "JenisKelamin", "JK"
.ColumnHeaders.Add , "NIS", "NIS"
.ColumnHeaders.Add , "Alamat", "Alamat"
.ColumnHeaders.Add , "Tempatlahir", "Lahir"
.ColumnHeaders.Add , "TanggalLahir", "Tanggal Lahir"


'Nama
.ColumnHeaders.Item(DataSiswa.Nama).Width = 2500
.ColumnHeaders.Item(DataSiswa.Nama).Alignment = lvwColumnLeft
'Kelas
.ColumnHeaders.Item(DataSiswa.Kelas).Width = 700
.ColumnHeaders.Item(DataSiswa.Kelas).Alignment = lvwColumnLeft
'JenisKelamin
.ColumnHeaders.Item(DataSiswa.JenisKelamin).Width = 500
.ColumnHeaders.Item(DataSiswa.JenisKelamin).Alignment = lvwColumnLeft
'NIS
.ColumnHeaders.Item(DataSiswa.NIS).Width = 700
.ColumnHeaders.Item(DataSiswa.NIS).Alignment = lvwColumnLeft
'Alamat
.ColumnHeaders.Item(DataSiswa.Alamat).Width = 2500
.ColumnHeaders.Item(DataSiswa.Alamat).Alignment = lvwColumnLeft
'Tempatlahir
.ColumnHeaders.Item(DataSiswa.Tempatlahir).Width = 1000
.ColumnHeaders.Item(DataSiswa.Tempatlahir).Alignment = lvwColumnLeft
'TanggalLahir
.ColumnHeaders.Item(DataSiswa.TanggalLahir).Width = 1200
.ColumnHeaders.Item(DataSiswa.TanggalLahir).Alignment = lvwColumnLeft
End With


Exit Sub
Salah:
MsgBox Err.Number & vbCrLf & Err.Description
End Sub

Private Sub CmdView_Click()

ShowItemList lvwDataSiswa, 100, "Data Siswa", , True, cboExt.Text

End Sub

Private Sub Form_Load()
LoadHeader
PopulateLvw
cboExt.ListIndex = 0
End Sub

Private Sub PopulateLvw()
On Error GoTo Salah
Dim Item As ListItem
Dim sData As String
Dim saryData() As String
Dim lCount As Long
Dim saryColData() As String
Dim lColPos As Long

sData = GetFileData(App.Path & "\Data.txt")

saryData() = Split(sData, vbCrLf)

'menghilangkan Header Name yang pertama pada data.txt
For lCount = LBound(saryData, 1) + 1 To UBound(saryData, 1)
If saryData(lCount) = vbNullString Then
Exit For
End If
saryColData() = Split(saryData(lCount), vbTab)

Set Item = lvwDataSiswa.ListItems.Add(, , saryColData(DataSiswa.Nama - 1))
'Kelas
Item.SubItems(DataSiswa.Kelas - 1) = saryColData(DataSiswa.Kelas - 1)
'JenisKelamin
Item.SubItems(DataSiswa.JenisKelamin - 1) = saryColData(DataSiswa.JenisKelamin - 1)
'NIS
Item.SubItems(DataSiswa.NIS - 1) = saryColData(DataSiswa.NIS - 1)
'Alamat
Item.SubItems(DataSiswa.Alamat - 1) = saryColData(DataSiswa.Alamat - 1)
'Tempatlahir
Item.SubItems(DataSiswa.Tempatlahir - 1) = saryColData(DataSiswa.Tempatlahir - 1)
'TanggalLahir
Item.SubItems(DataSiswa.TanggalLahir - 1) = saryColData(DataSiswa.TanggalLahir - 1)
Item.Selected = False
Next

Exit Sub
Salah:
MsgBox Err.Number & vbCrLf & Err.Description
End Sub

Private Sub ShowItemList(poLstView As Object, _
Optional plMaxColLen As Long = 100, _
Optional psOutPutName As String = vbNullString, _
Optional psOutPutPath As String = vbNullString, _
Optional pbUseTempPrefix As Boolean = False, _
Optional psExt As String)
On Error GoTo Salah
'Error
Dim lRet As Long
Dim lErrNum As Long
Dim sErrDesc As String
'File names
Dim sFileName As String
Dim sFullPathName As String
Dim sTempDir As String
Dim sExt As String
Dim bValidExt As Boolean
Dim bDelAppApthFile As Boolean
'Objects
Dim Item As ListItem
Dim oLstView As ListView
'Build Print Data
Dim lColPos As Long
Dim lFillLen As Long
Dim aryColMaxLen() As Long
Dim sHeader As String
Dim sData As String
Dim sTemp As String


'Set nama file menggunakan ekstensi .txt atau .xls
'hanya Support .txt dan .xls
If psExt = vbNullString Then
psExt = ".txt"
Else
sExt = psExt
End If

'mengecek validnya ekstensi
If StrComp(sExt, ".txt", vbTextCompare) = 0 Then
bValidExt = True
End If

If StrComp(sExt, ".xls", vbTextCompare) = 0 Then
bValidExt = True
End If

If Not bValidExt Then
Exit Sub
End If

'mengeset List View Object
Set oLstView = poLstView

If psOutPutName = vbNullString Then
sFileName = "Daftar Item" & sExt
Else
If pbUseTempPrefix Then
sFileName = psOutPutName & sExt
Else
sFileName = psOutPutName & sExt
End If
End If

'mengeset Output path
If psOutPutPath = vbNullString Then
sTempDir = App.Path & "\"
Else
sTempDir = psOutPutPath
End If

sFullPathName = sTempDir & sFileName

If Not utFileExists(sTempDir, True) Then
bDelAppApthFile = True
sTempDir = App.Path & "\"
End If

'menyusun Data
Screen.MousePointer = VBRUN.MousePointerConstants.vbHourglass

'1. menyusun Header
ReDim aryColMaxLen(1 To oLstView.ColumnHeaders.Count)
For lColPos = 1 To oLstView.ColumnHeaders.Count
If oLstView.ColumnHeaders(lColPos).Width > 0 Then
If StrComp(sExt, ".txt", vbTextCompare) = 0 Then
aryColMaxLen(lColPos) = GetMaxLenthForCol(oLstView, lColPos)
End If
sTemp = oLstView.ColumnHeaders(lColPos).Text
sTemp = "[" & sTemp & "]" 'wrap the col name
If StrComp(sExt, ".txt", vbTextCompare) = 0 Then
If aryColMaxLen(lColPos) < Len(sTemp) Then aryColMaxLen(lColPos) = Len(sTemp) End If lFillLen = aryColMaxLen(lColPos) lFillLen = (lFillLen - Len(sTemp)) If lFillLen > 0 Then
sTemp = sTemp & String(lFillLen, Chr(32))
End If
End If
'tambahkan ke header
sHeader = sHeader & sTemp & vbTab
End If
Next
If sHeader <> vbNullString Then
'menambahkan spasi pada header
sHeader = sHeader & vbCrLf
End If

'Set Header ke Data
sData = sHeader

'2. menyusun isi
For Each Item In oLstView.ListItems
For lColPos = 1 To oLstView.ColumnHeaders.Count
If oLstView.ColumnHeaders(lColPos).Width > 0 Then
If lColPos = 1 Then
sTemp = Item.Text
Else
sTemp = Item.ListSubItems(lColPos - 1).Text
End If
'dibutuhkan untuk membersihkan banyaknya enter pada data
'Replace with 2 spaces
sTemp = Replace(sTemp, vbCrLf, String(2, Chr(32)))
'tidak memiliki banyak extra tab,
sTemp = Replace(sTemp, vbTab, " ")
'tambah 3 account untuk "..."
If Len(sTemp) > (plMaxColLen + 3) Then
sTemp = Left(sTemp, plMaxColLen) & "..."
End If
'Hanya dibutuhkan untuk mendapatkan banyaknya Len pada format .txt
If StrComp(sExt, ".txt", vbTextCompare) = 0 Then
lFillLen = aryColMaxLen(lColPos)
lFillLen = lFillLen - Len(sTemp)
If lFillLen > 0 Then
sTemp = sTemp & String(lFillLen, Chr(32))
End If
End If
sData = sData & sTemp & vbTab
End If
Next
sData = sData & vbCrLf
Next


'Simpan ke temp directory
SaveFileData sFullPathName, sData

If utFileExists(sFullPathName) Then
lRet = utShellExecute(GetDesktopWindow, "OPEN", sFullPathName, vbNullString, App.Path, vbNormalFocus, False, False, True)
End If

Screen.MousePointer = VBRUN.MousePointerConstants.vbDefault

Set oLstView = Nothing
Set Item = Nothing
Exit Sub
Salah:
lErrNum = Err.Number
sErrDesc = Err.Description
Screen.MousePointer = VBRUN.MousePointerConstants.vbDefault
Err.Raise lErrNum, , sErrDesc & vbCrLf & "Private Sub ShowItemList"
End Sub

Private Function GetMaxLenthForCol(poLstView As Object, _
lColPos As Long, _
Optional plMaxColLen As Long = 100) As Long
On Error GoTo Salah
Dim lErrNum As Long
Dim sErrDesc As String
Dim Item As ListItem
Dim oLstView As ListView
Dim sTemp As String
Dim lThisLen As Long
Dim lLen As Long

Set oLstView = poLstView

For Each Item In oLstView.ListItems
If lColPos = 1 Then
sTemp = Item.Text
Else
sTemp = Item.ListSubItems(lColPos - 1).Text
End If
lThisLen = Len(sTemp)
If lThisLen > lLen Then
lLen = lThisLen
End If
Next

If lLen > plMaxColLen Then
' Tambahkan maksimal 3 Length untuk account "..."
lLen = plMaxColLen + 3
End If

GetMaxLenthForCol = lLen

Set Item = Nothing
Set oLstView = Nothing

Exit Function
Salah:
lErrNum = Err.Number
sErrDesc = Err.Description
Screen.MousePointer = VBRUN.MousePointerConstants.vbDefault
MsgBox lErrNum & vbCrLf & sErrDesc
End Function


Public Function utFileExists(strFile As String, Optional pbDirOnly As Boolean) As Boolean
On Error GoTo Salah
Dim FSO As Scripting.FileSystemObject

Set FSO = New Scripting.FileSystemObject


If strFile <> vbNullString Then
If Not pbDirOnly Then
utFileExists = FSO.FileExists(strFile)
Else
utFileExists = FSO.FolderExists(strFile)
End If
End If

Set FSO = Nothing

Exit Function
Salah:
Set FSO = Nothing
utFileExists = False
End Function

Public Sub SaveFileData(psFilePath As String, psFileData As String, Optional psDelimeter As String, Optional pbLock As Boolean = False, Optional piFFile As Integer)
On Error GoTo Salah
Dim lMyFileLen As Long
Dim iFFile As Integer
Dim lErrNum As Long
Dim sErrDesc As String


iFFile = FreeFile
piFFile = iFFile
Open psFilePath For Binary Access Write As #iFFile
Put #iFFile, 1, psFileData & psDelimeter
If Not pbLock Then
Close #iFFile
End If
Exit Sub
Salah:
lErrNum = Err.Number
sErrDesc = Err.Description
Close #iFFile
Err.Raise lErrNum, , App.EXEName & vbCrLf & "Public Sub SaveFileData" & vbCrLf & "Error # " & lErrNum & vbCrLf & sErrDesc & vbCrLf
End Sub

Public Function GetFileData(psFilePath As String, Optional pbLock As Boolean = False, Optional piFFile As Integer, Optional pbSkipMess As Boolean = True) As String
On Error GoTo Salah
Dim lMyFileLen As Long
Dim iFFile As Integer

iFFile = FreeFile
piFFile = iFFile
If pbLock Then
Open psFilePath For Binary Access Read Lock Read As #iFFile
Else
Open psFilePath For Binary Access Read As #iFFile
End If
lMyFileLen = FileLen(psFilePath) + 2
GetFileData = Input(lMyFileLen, #iFFile)
If Not pbLock Then
Close #iFFile
End If

Exit Function
Salah:
Close #iFFile
If Not pbSkipMess Then
If MsgBox("Tidak Dapat Membaca File... " & vbCrLf & psFilePath & vbCrLf & "(" & Err.Description & ")" & vbCrLf & vbCrLf & _
"Jaringan atau File Sedang Sibuk." & vbCrLf & "Tekan ""Yes"" untuk mencoba lagi." & vbCrLf & "Tekan ""No"" untuk menghentikan proses", vbYesNo, "File Sibuk") = vbYes Then
Resume
End If
End If

End Function

Public Function utShellExecute(Optional plHwnd As Long = -1, _
Optional pslpOperation As String = "OPEN", _
Optional pslpFile As String, _
Optional pslpParameters As String = vbNullString, _
Optional pslpDirectory As String = "App.Path", _
Optional plnShowCmd As VBA.VbAppWinStyle = vbNormalFocus, _
Optional pbUseTimeStampFileName As Boolean = False, _
Optional pbShowMessage As Boolean = False, _
Optional psTempFileCaption As String) As Boolean
On Error GoTo Salah
Dim lHwnd As Long
Dim slpOperation As String
Dim slpFile As String
Dim slpParameters As String
Dim slpDirectory As String
Dim lnShowCmd As VBA.VbAppWinStyle
Dim sErrorMess As String
Dim sTmpExt As String
Dim sTmpFile As String
Dim lRet As Long
Dim sDir As String
Dim lErrNum As Long
Dim sErrDesc As String

utShellExecute = False

'mendapatkan info dari Parameter
If plHwnd = -1 Then
lHwnd = GetDesktopWindow
End If
slpOperation = pslpOperation
If pslpFile = vbNullString Then
Exit Function
Else
slpFile = pslpFile
End If

slpParameters = pslpParameters
If pslpDirectory = "App.Path" Then
slpDirectory = App.Path
Else
slpDirectory = pslpDirectory
End If

lnShowCmd = plnShowCmd

'Jika file tdk ada kemudian keluar
If utFileExists(slpFile) Or InStr(1, slpFile, "MAPIMAIL", vbTextCompare) > 0 Then
sTmpFile = slpFile
lRet = ShellExecute(lHwnd, slpOperation, sTmpFile, slpParameters, slpDirectory, lnShowCmd)
If lRet = SE_ERR_NOASSOC Then
sDir = Space(260)
lRet = GetSystemDirectory(sDir, Len(sDir))
sDir = Left(sDir, lRet)
lRet = ShellExecute(lHwnd, vbNullString, "RUNDLL32.EXE", "shell32.dll,OpenAs_RunDLL " & sTmpFile, sDir, lnShowCmd)
End If
Else
SHOW_ERROR:
If pbShowMessage Then
If sErrorMess = vbNullString Then
sErrorMess = "File Tidak diketemukan!" & vbCrLf & psTempFileCaption & vbCrLf & slpFile
End If
MsgBox sErrorMess, vbExclamation + vbOKOnly, "File Error"
End If
End If
utShellExecute = True
Exit Function
Salah:
lErrNum = Err.Number
sErrDesc = Err.DescriptionErr.Raise lErrNum, , App.EXEName & vbCrLf & "Public Function utShellExecute" & vbCrLf & "Error # " & lErrNum & vbCrLf & sErrDesc & vbCrL

End Function


Selesai, Semoga bermanfaat.
Bagikan