Goedendag allemaal,
ik heb een probleempje met een access bestand, welke ooit gemaakt door een stagiaire. Ik kan een beetje programmeren maar ben geen vb pro helaas.
dit bestand kan door middel van een product te selecteren, 3 bijbehorende documenten uitprinten.
een compositieblad, een blindschema en een bewerkingsvoorschrift. Bij de eerste en de derde komen deze uit de standaard printer. (welke als standaard ingesteld is dus). Maar bij blindschema komt deze uit een andere printer.
er is een knop welke een PRINT functie (of procedure noemen ze dat?) aanroept.
ik kan hierin geen verschil vinden of iets wat mij duidelijk maakt naar welke printer de data moet gaan.
de print word volgens mij uitgevoerd door: DoCmd.OpenReport "NAAM VAN REPORT", acViewNormal
Waar kan ik verder nog kijken?
ik heb al gezocht op de printernaam / ip van de afwijkende printer in het gehele script, deze is niet te vinden. Ook heb ik desbetreffende printer niet eens geinstalleerd.
schiet mij maar lek....
Welke VB / Access Held kan mij helpen?
ik heb een probleempje met een access bestand, welke ooit gemaakt door een stagiaire. Ik kan een beetje programmeren maar ben geen vb pro helaas.
dit bestand kan door middel van een product te selecteren, 3 bijbehorende documenten uitprinten.
een compositieblad, een blindschema en een bewerkingsvoorschrift. Bij de eerste en de derde komen deze uit de standaard printer. (welke als standaard ingesteld is dus). Maar bij blindschema komt deze uit een andere printer.
er is een knop welke een PRINT functie (of procedure noemen ze dat?) aanroept.
ik kan hierin geen verschil vinden of iets wat mij duidelijk maakt naar welke printer de data moet gaan.
de print word volgens mij uitgevoerd door: DoCmd.OpenReport "NAAM VAN REPORT", acViewNormal
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
| Private Sub PRINT_Click() Dim con As New ADODB.Connection Dim rstRapport As New ADODB.Recordset Set con = CurrentProject.Connection If IsNull([Type_ID]) Then MsgBox "Selecteer een type!" [Type_ID].SetFocus Else If [Compositieblad] = 0 And [Blindschema] = 0 And [Bewerkingsvoorschrift] = 0 Then MsgBox "De aantallen van alle drie de documenten staan op nul (0), er worden dan ook geen documenten geprint. Om documenten te printen dient u bij een van de drie documenten tenminste een 1 of hoger in te vullen.", , "PRINT DOCUMENTEN FOUT!" Else ' Controleer allereerst of het veld COMPOSITIEBLAD ' een waarde die hoger is als nul (0), want als dit niet het geval is ' dan hoeft dit document ook niet te worden uitgeprint If [Compositieblad] > 0 Then ' Optie staat aangevinkt en het document kan dan ook ' worden geprint. For i = 1 To [Compositieblad] DoCmd.OpenReport "COMPOSITIEBLAD", acViewNormal Next End If ' Controleer allereerst of het veld BLINDSCHEMA ' een waarde heeft die hoger dan nul (0) heeft, want als dit niet het geval is ' dan hoeft dit document ook niet te worden uitgeprint If [Blindschema] > 0 Then Dim rsBS As New ADODB.Recordset rsBS.Open "SELECT * FROM PRINTEN_DOCUMENTEN WHERE PRINTEN_DOCUMENTEN.Type_ID='" & [Type_ID] & "'", con, adOpenStatic, adLockPessimistic Dim aantal As Integer Dim teller As Integer aantal = 0 teller = 0 aantal = rsBS.RecordCount For teller = 1 To aantal ' Print de documenten die behoren bij de gekozen type ' en de juiste aantallen For i = 1 To [Blindschema] DoCmd.OpenReport rsBS!Rapport, acViewNormal Next rsBS.MoveNext Next teller = 0 aantal = 0 End If ' Controleer allereerst of het veld BEWERKINGSVOORSCHRIFT ' een waarde heeft die hoger als nul (0) is, want als dit niet het geval is ' dan hoeft dit document ook niet te worden uitgeprint If [Bewerkingsvoorschrift] > 0 Then Dim rsBV As New ADODB.Recordset Dim strBV As String Dim aantalBV As Integer rsBV.Open "SELECT * FROM PRODUCTIEVOORSCHRIFT WHERE TYPE_ID='" & [Type_ID] & "'", con, adOpenStatic, adLockPessimistic aantalBV = rsBV.RecordCount If aantalBV <> 0 Then ' Print de documenten die behoren bij de gekozen type ' en print de juiste aantallen For i = 1 To [Bewerkingsvoorschrift] DoCmd.OpenReport "Bewerkingsvoorschrift", acViewNormal Next End If ' zet de variabelen op nul aantalBV = 0 ' sluit het recordset rsBV rsBV.Close End If ' geef de gebruiker/operator een melding dat de document succesvol zijn geprint ' en geef ook aan welk document geprint is. Dim strPrintDocu As String Dim intPrintDocu As Integer intPrintDocu = 0 If [Compositieblad] > 0 Then strPrintDocu = "Compositieblad" intPrintDocu = 1 End If If [Blindschema] > 0 Then If intPrintDocu = 0 Then strPrintDocu = "Blindschema" intPrintDocu = 1 Else strPrintDocu = strPrintDocu & " & Blindschema" intPrintDocu = 2 End If End If If [Bewerkingsvoorschrift] > 0 Then If intPrintDocu = 0 Then strPrintDocu = "Bewerkingsvoorschrift" intPrintDocu = 1 Else strPrintDocu = strPrintDocu & " & Bewerkingsvoorschrift" intPrintDocu = 2 End If End If If intPrintDocu = 1 Then MsgBox "Het document (" & strPrintDocu & ") is geprint." End If If intPrintDocu > 1 Then MsgBox "De volgende documenten (" & strPrintDocu & ") zijn geprint." End If End If End If End Sub |
Waar kan ik verder nog kijken?
ik heb al gezocht op de printernaam / ip van de afwijkende printer in het gehele script, deze is niet te vinden. Ook heb ik desbetreffende printer niet eens geinstalleerd.
schiet mij maar lek....
Welke VB / Access Held kan mij helpen?