[MS Access] Export Crediteer opdracht in txt format.

Pagina: 1
Acties:

  • jordan2k
  • Registratie: Juli 2001
  • Laatst online: 16-08 12:52
Ben bezig met een database die van alles importeerd vervolgens controleerd. En nu zou het hellemaal te gek zijn als de berekende Bonus in 1 bepaald format als txt exporteerd.

nu zijn er een aantal specificaties aan het crediteer bestandje.
bv.
begint met 48 spaties gevolgd door 9 decimale 11 spaties 21 decimalen en 47 leters omschrijving
2e regel
4 variable 4 spaties 30 omschrijving 6 decimale 1, 2 decimale

code:
1
2
                                                000000736           075052204052005600450Bonus onderdelen over de      periode 0X t/m 0X                                           AC EW
B001    Volumebonus onderdelen           268,48


Bu heb ik al wel een Query waar de juiste informatie in staat. en heb wel iets gevonden over txt export. maar het is niet hellemaal duidelijk hoe het werkt.

heb geprobeerd om regel voor regel uit een RS Query te hallen dit gaat wel goed aleen het schrijven van dit bestand kom ik niet hellemaal uit. heb wel TrasferText methode gevonden aleen hij is niet hellemaal duidelijk.

heb al gekeken of het anders kon maar het moet in dit format aangeleverd worden om het automatisch te kunnen verwerken.

hoop dat iemand me de juiste kant op kan sturen.

  • kippy
  • Registratie: September 2004
  • Laatst online: 12:53
post eens de code die je nu al hebt.

je kunt met vba ook een nieuwe textstream maken, en daarmee kun je de informatie gewoon naar een txt schrijven.

  • jordan2k
  • Registratie: Juli 2001
  • Laatst online: 16-08 12:52
Het ziet er een beetje brak uit. maar het idee is zo wel duidelijk denk ik.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Public Function Exportregel(Export, Export_file, Export_dir As String)
'Stukje inlees en verwerk error handeling.

DoCmd.TransferText acExportFixed, , , Export_dir & ExportFile

'....

End Function

Private Sub Knop2_Click()

Dim QryC As Recordset  'Creditering Tbl
Dim mydb As Database
Dim aantalRec, i As Integer
Dim Export_dir, Export_file, Schadeketen As String
Export_dir = "d:\crediteringen\"
Export_file = "Creditering_SchadeBonus_" & Schadeketen & Date & ".prn"


Set mydb = CurrentDb

aantalRec = aantal("TblBonus")

    QryC.MoveFirst  'Begin van recordset
    
    'hier iets met die transfertext
    'hier verwijzing naar een Public function
    
    '1ste regel in export bestand
    Exportregel ("                                               " & "000000000" & "           " & "075052204052005600450Bonus schadeketen over de      periode " & QryC![Periode] & "                                           AC EW")
    
    For i = 1 To aantalRec
        
        Exportregel ("B" & QryC![Dealer nummer] & "    " & "Bonus Schadeketen - " & QryC![Schadeketen])
        Exportregel ("B" & QryC![Dealer nummer] & "    " & "Bonus ondersteuning - " & QryC![ondersteuningsbedrag])
        Exportregel ("B" & QryC![Dealer nummer] & "    ")
        Exportregel ("B" & QryC![Dealer nummer] & "    " & "Voor informatie: tst. XXX")
        'Enz

        i = i + 1
    Next

End Sub

  • kippy
  • Registratie: September 2004
  • Laatst online: 12:53
humm ik zie ook niet echt een probleem, heb geen ervaring met vba in access dus das ook al weer lastiger.

een ding wat ik wel zie wat overbodig is, is de i = 1 + 1. je kan ook gewoon "Next i" doen.

Maar ook op google is hier niets over te vinden?


hoe dan ook ik kan op google genoeg over vinden.
http://groups.google.nl/g...ss+txt+export&qt_s=Zoeken

http://groups.google.nl/g...=2&hl=nl#fa67446e8f6f5af8

[ Voor 44% gewijzigd door kippy op 06-06-2005 10:28 ]


  • jordan2k
  • Registratie: Juli 2001
  • Laatst online: 16-08 12:52
Heb al wel op google gekeken aleen wordt het er niet echt duidelijker op.
kan niet iets vinden wat enigsinds op mijn probleem lijkt.
het lijkt er zelfs op dat heel deze methode niet is wat ik zoek.

en de textstream methode kan ik niet terug vinden in Access 97.

  • kippy
  • Registratie: September 2004
  • Laatst online: 12:53
jordan2k schreef op maandag 06 juni 2005 @ 13:40:
Heb al wel op google gekeken aleen wordt het er niet echt duidelijker op.
kan niet iets vinden wat enigsinds op mijn probleem lijkt.
het lijkt er zelfs op dat heel deze methode niet is wat ik zoek.

en de textstream methode kan ik niet terug vinden in Access 97.
De google zoek term die ik jou gaf kan ik toch aardig wat dingen mee vinden die op jou probleem lijken. en nee sorry textsteam is weer eens een fein vba geintje dat alleen in word en excel werkt.

je kan natuurlijk ook een word document aanmaken en daar je zooi in gooien en dan als *.rtf opslaan, dan heb je ook gewoon een text format. Moet je alleen ff een paar word objecten aanmaken en de word libary toevoegen.

Verwijderd

kippy schreef op maandag 06 juni 2005 @ 13:54:
[...]De google zoek term die ik jou gaf kan ik toch aardig wat dingen mee vinden die op jou probleem lijken. en nee sorry textsteam is weer eens een fijn vba geintje dat alleen in word en excel werkt.
com is net de kracht van windows. textstream van de scripting engine is gewoon beschikbaar door er een verwijzing naar te plaatsen (vbe->extra->verwijzingen->microsoft scripting runtime).

  • kippy
  • Registratie: September 2004
  • Laatst online: 12:53
Verwijderd schreef op maandag 06 juni 2005 @ 13:58:
[...]

com is net de kracht van windows. textstream van de scripting engine is gewoon beschikbaar door er een verwijzing naar te plaatsen (vbe->extra->verwijzingen->microsoft scripting runtime).
/oftopic
Ja heel ff niet aan gedacht, kost je wel weer 10sec meer werk :P

/ontopic
ja idd gewoon via com doen, scheeld een hoop gezijk.

  • jordan2k
  • Registratie: Juli 2001
  • Laatst online: 16-08 12:52
Het is gelukt met de Texstream methode.
Bedankt voor de hulp.


code:
1
2
3
4
5
Dim fso, MyFile 
Set fso = CreateObject("Scripting.FileSy­stemObject") 
Set MyFile= fso.CreateTextFile("c:\testfil­e.txt", True) 
MyFile.WriteLine("Testtext") 
MyFile.Close
Pagina: 1