🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.bazy-danych.msaccess
Article #137273

Do BraZby'ego.

#137273
From: Jacek
Date: Fri, 02 Sep 2016 10:24
58 lines
2761 bytes
Cześć Zbyszku.

Pisałem na mejla, ale wrócił.
Pozwolę sobie zamieścić tutaj.

Napisałem taki prosty programik do robienia archiwizacji.
Pierwotnie używałem Shell(xcopy…), ale że folderów Buchaltera jest jakieś
80, to uruchamiało się tyle ‘hostcon.exe’ i mój
komunikat o skończonym kopiowaniu był nieprawdziwy.

Próbuję ze scripting, ale mi się wywala.
Ścieżka do plików źródłowych istnieje, tworzy się pierwszy katalok poprzez
MkDir, ale samo kopiowanie wywala błąd.

P.S. Jako że baza Płatnika i pliki Rewizora nie są duże, to stosuję Shell.

Oto kod:

Private Sub Polecenie2_Click()
DoCmd.Hourglass True
Dim fobj As Object
Set fobj = CreateObject("Scripting.FileSystemObject")
Dim Data As String, s As String, d As String
Data = Format(Date, "yyyy-MM-dd")
If Dir("G:\" & Data & "\", vbDirectory) <> "." Then
    MkDir ("G:\" & Data)
    MkDir ("G:\" & Data & "\Platnik")
    MkDir ("G:\" & Data & "\Rewizor")
    MkDir ("G:\" & Data & "\Buchalter")
End If
q = Shell("Xcopy P:\Baza G:\" & Data & "\Platnik\ /E /Y /H", vbHide)
q = Shell("Xcopy R:\ G:\" & Data & "\Rewizor\ /E /Y /H", vbHide)

Dim db As Database
Set db = CurrentDb
Dim rs As DAO.Recordset
Set rs = db.OpenRecordset("Buchalter")
rs.MoveLast
rs.MoveFirst
For x = 1 To rs.RecordCount
    If rs.Fields("Archiwizowac") = True Then
        Kat = rs.Fields("Katalog")
        MkDir ("G:\" & Data & "\Buchalter\" & Kat)
        k = "Xcopy F:\Buch\" & Kat & " G:\" & Data & "\Buchalter\" & Kat &
\ /E /Y /H"
        s = "F:\Buch\" & Kat & "\"
        d = "G:\" & Data & "\Buchalter\" & Kat & "\"
        fobj.CopyFolder s, d, True ' tu się wywala, że nie znalazł ścieżki
        Exit For
        'q = Shell(k, vbHide)
        'Sleep (1000)
        qq = SysCmd(acSysCmdSetStatus, Kat)
    End If
    rs.MoveNext
Next
inf = MsgBox("Archiwizacja wykonana pomyślnie.", vbOKOnly, "UWAGA")
DoCmd.Hourglass False
End Sub
Technical Details
Message-ID: <1vgbj07534ww9$.1sl0ks9vb4qus$.dlg@40tude.net>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
From: Jacek <ala@ola.pl>
Subject: Do BraZby'ego.
Newsgroups: pl.comp.bazy-danych.msaccess
User-Agent: 40tude_Dialog/2.0.15.1pl
MIME-Version: 1.0
Date: Fri, 2 Sep 2016 12:24:02 +0200
Message-ID: <1vgbj07534ww9$.1sl0ks9vb4qus$.dlg@40tude.net>
Lines: 58
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 37-128-35-110.adsl.inetia.pl
X-Trace: 1472811841 unt-rea-a-02.news.neostrada.pl 15208 37.128.35.110:15240
X-Complaints-To: abuse@news.neostrada.pl
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit