Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Drucker aus Tabelle ziehen

Begonnen von maniaspets, November 23, 2010, 08:30:13

⏪ vorheriges - nächstes ⏩

maniaspets

Also ich habe ein Modul das mir den Druckereinstellt.

Public Function EPL_File_export(Etikett As String, P1 As String, P2 As String, P3 As String, P4 As String, P5 As String, P6 As String, P7 As String, P8 As String, P9 As String, P10 As String, Anzahl As String)
   
    Dim dbs As DAO.Database, rst As DAO.Recordset
    Dim strSQL_EPL As String, EPL_Code As String
    Dim Dateiname As String
    Dim mat1 As String, mat2 As String, mat3 As String
   
   
    Set dbs = CurrentDb

'Etikett EPL-Code holen
    strSQL_EPL = "SELECT EPL from TAB_Stam_Etiketten WHERE Etikett = '" & Etikett & "'"
    Set rst = dbs.OpenRecordset(strSQL_EPL)

'Variablen ersetzen
    If rst.EOF = False Then
        EPL_Code = rst!EPL
        EPL_Code = search_change(EPL_Code, "%1%", P1)
        EPL_Code = search_change(EPL_Code, "%2%", P2)
        EPL_Code = search_change(EPL_Code, "%3%", P3)
        EPL_Code = search_change(EPL_Code, "%4%", P4)
        EPL_Code = search_change(EPL_Code, "%5%", P5)
        EPL_Code = search_change(EPL_Code, "%6%", P6)
        EPL_Code = search_change(EPL_Code, "%7%", P7)
        EPL_Code = search_change(EPL_Code, "%8%", P8)
        EPL_Code = search_change(EPL_Code, "%9%", P9)
        EPL_Code = search_change(EPL_Code, "%10%", P10)
       
       
    End If

    rst.Close: Set rst = Nothing
    dbs.Close: Set dbs = Nothing

'Dateiname Etk löschen wenn vorhanden
    Dateiname = "C:\Temp\Etk.txt"
    If Dir(Dateiname) <> "" Then
        Kill (Dateiname)
    End If
   
    intFileNumber_out = FreeFile
    Open Dateiname For Output As #intFileNumber_out
'Datei erstellen
    While (Anzahl <> 0)
        Print #intFileNumber_out, EPL_Code
        Anzahl = Anzahl - 1
    Wend
    Close #intFileNumber_out
'Etikett drucken
        Shell "cmd /c copy " & Dateiname & " " & "\\rprint01\riteti1"
   
End Function


und das wurde bis jetzt per Hand eingetragen
Zitat"\\rprint01\riteti1"

doch jetzt habe ich eine Tabelle angefertigt wo man diese Namen speichern kann und jetzt bräuchte ich hilfe denn ich weiß nicht wie ich  diesen Wert hier reinbekomme.

in der Tabelle habe ich 2 Spalten. die Erste ist Parameter in dem Fall heißt er Drucker aber kann auch für was anderes verwendet werden.
und in der 2 Spalte ist der "Wert" in diesem Fall ist hier der Drucker Name eingetragen.

DF6GL

Hallo,

wie wär es erst mal mit einem Guten Morgen?   ::)

Shell "cmd /c copy " & Dateiname & " " & nz(Dlookup("Wert","tblParameter","Parameter='Drucker'"),"\\rprint01\riteti1")

maniaspets

Morgen ;)

aber so  steht es ja wieder hier
Zitat"\\rprint01\riteti1"
?

das ist ja das das ich aus der Tabelle haben will

mfg

Jonny

Moin,

versuch mal folgendes:
Dim Db as dao.database
Dim Para as dao.recordset
Set Db = currentdb
Set Para= Db.OpenRecordset("Parameter", dbOpenDynaset)
Para.Findfirst "Parameter = '" & "Drucker" & "'"
If Para.nomatch then
    msgbox("Fehler Lesen Parametertabelle"
else
    Shell "cmd /c copy " & Dateiname & " " & Para!Feldname
end if

Achtung habe ich nicht getestet bitte auf Tippfehler achten.

Gruß

Johann

DF6GL

Hallo,

??

WO steht der String?


Es wird aus der Tabelle tblParameter  der Inhalt des Feldes Wert im Datensatz mit Parameter ="Drucker"  ausgelesen und im Shell-Statement weiter benutzt.   Gibt es in der tblParameter den Eintrag "Drucker" nicht, oder ist Wert leer, dann wird "\\rprint01\riteti1"   als Ersatz hergenommen.


Hast Du die Namen an Deine angepaßt??

maniaspets

man wie Bblöd bin ich? :D

es hat doch funktioniert^^

Jonny werde deine arbeit auch nocht testen ;)

Danke

maniaspets

Hallo,
doch ich habe die namen angepasst

aber wenn ich jetzt etwas drucken will bekomme ich im Call befehl immer diese Meldung:

"Ungültiger Prozeduraufruf oder ungültiges Argument"

mfg

Jonny

Hallo,
setz doch mal einen Haltepunkt und lass dir den Inhalt vom Feld anzeigen. Vieleicht ist da irgenwas falsch eingegeben.

Gruß
Johann

maniaspets

hallo,

ja das war der Fehler ;)

Danke