Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

VBS-ODBC-Verbindung-Insert-wird nicht ausgefuehrt

Frage Entwicklung VB for Applications

Mitglied: Huan90

Huan90 (Level 1) - Jetzt verbinden

28.01.2015, aktualisiert 29.01.2015, 669 Aufrufe, 5 Kommentare

Hallo liebe Administrator-Gemeinde,

ich habe ein Problem mit einem VB-Script (ich hoffe, da bin ich hier an der richtigen Stelle, obwohl der Bereich ausdrücklich VBA heißt).

In dem Script wird über eine ODBC-Schnittstelle eine Verbindung zu einer Access-Datenbank aufgebaut.
In der Datenbank sind 2 Tabellen enthalten.

Als erstes wird in dem Script die Verbindung wie folgt aufgebaut:
01.
cnStr = "Provider=MSDASQL;DSN=XYZ;UID=;PWD=;"  
02.
 Set cn = CreateObject("ADODB.Connection") 
03.
 cn.ConnectionString = cnStr 
04.
 cn.Open 
05.
 Set ac = CreateObject("ADODB.Command") 
06.
 Set rs = CreateObject("ADODB.RecordSet")
Später wird ein Datensatz aus einer der Tabellen ausgelesen:
01.
SQuery = "SELECT * FROM SAP_XYZ WHERE Linie = " & linie & " And Status = 1" 
02.
rs.OPEN SQuery,cn 
03.
Set rs = cn.Execute(SQuery)
Bis hierher funktioniert auch alles wunderbar.
Anschließend wird eine INSERT-Anweisung in einer Variable (SQuerry) gespeichert. Diese soll wie folgt ausgeführt werden:
01.
ac.ActiveConnection = cn 
02.
	 ac.CommandText = SQuery 
03.
	 ac.Execute
Die Insertanweisung (SQuerry) lasse ich mir mittlerweile zu testzwecken auch in eine Textdatei schreiben.
Kopiere ich die Anweisung und führe sie direkt in der Datenbank über ein Querry aus, wird der Datensatz auch korrekt eingetragen.

Mich wundert nun, dass 1.) Die Verbindung zur Datenbank funktioniert, 2.) der Insert-Befehlt funktioniert aber 3.) nicht beides zusammen?! O.o

Das Script läuft auch komplett ohne Fehler durch und ich weiß nicht mehr, wo/was ich noch suchen soll.

Ich hoffe ihr könnt mir weiter helfen und verbleibe mit freundlichem Gruß,

Huan90

p.s. Die Insertanweisung ist mit Leerzeichen 1468 Zeichen lang.
Mitglied: 114757
28.01.2015, aktualisiert um 17:58 Uhr
Moin,
dann liegt der Fehler vermutlich in der Insert-Anweisung. Eine Query aus Access kann nicht immer 1zu1 aus Access in den Code übernommen werden, deswegen ist eine Analyse hier ohne deine Insert-Query sehr schwer.

Gruß jodel32
Bitte warten ..
Mitglied: emeriks
28.01.2015 um 18:59 Uhr
Hi,
Code-Tags verwenden!

Haste schon mal versucht, die Connection zu schließen und vor dem INSERT eine neue aufzubauen?

Schon mal den Weg über die Recordset-Methoden versucht?
01.
rs.AddNew 
02.
rs.Fields("Field1").Value = Value1 
03.
rs.Fields("Field2").Value = Value2 
04.
... 
05.
rs.Update
Allerdings musst Du dann das Recordset schreibbar öffnen.

E.
Bitte warten ..
Mitglied: Huan90
29.01.2015 um 10:00 Uhr
Moin,

Ich habe nun mehrere Versuche gestartet, allerdings mache ich wohl immer noch irgend etwas falsch.
Derzeit bekomme ich folgende Fehlermeldung:

"Die Argumente sind vom falsche Typ, liegen außerhalb des Gültigkeitsbereiches oder sind miteinander unvereinbar."

Die Verbindung wird mittlerweile vorher geschlossen und für den Insert neu geöffnet.

01.
Set rs = CreateObject("ADODB.RecordSet") 
02.
cn.Open 
03.
With rs 
04.
  .Open "PalTrans",cnStr ,adOpenForwardOnly,adLockOptimistic,adCmdTable 
05.
  If Not .eof Then 
06.
    .AddNew 
07.
.Fields("FELD1").Value = tmpParts(1) 
08.
09.
10.
11.
.update 
12.
    .Close 
13.
  End If 
14.
End With 
15.
cn.Close
Und hier noch einmal der Insert (bei dem Versuch mit ac.CommandText = SQuerry / ac.Execute:
01.
INSERT INTO PalTrans(ZZ_WERKS, ZZ_RESOURCE, ZZ_MATNR, ZZ_MHD, ZZ_GAMNG, ZZ_KUNCHARGE, ZZ_PALETTE, ZZ_TEID, ZZ_STEUERKZ, ZZ_BELADART, ZZ_PALSTATUS, ZZ_TYPTRAEGER, ZZ_TYP1TOCHTER, ZZ_MENGE1TOCHTER, ZZ_TYP2TOCHTER, ZZ_MENG2TOCHTER, ZZ_AUFNR, ZZ_ERDAT, ZZ_UZEIT, ZZ_BUTEXT, ZZ_STRETCH, ZZ_FEVOR, ZZ_MAKTX, ZZ_ENDKZ, ZZ_AUSBU, ZZ_MENGE, ZZ_MEINH, ZZ_IEDD, ZZ_IEDZ, ZZ_BUDAT, ZZ_CHARGE, Dateiname, ZZ_PACKBILD, ZZ_LAGENANZAHL, ZZ_PACKVORSCHRIFT, ZZ_INSMK, ZZ_KAR, ZZ_BESTQ, ZZ_VBELN, ZZ_KUNNR, ZZ_SERNR, ZZ_SERNRVERW, ZZ_HAUPTCHARGE, ZZ_EGALISIERUNG, Anwahl_Egalisierung, ZZ_FAKTURAGEW, ZZ_FAKTGEWEINH, ZZ_NENNFUELLM, ZZ_NENNFUELLEINH, ZZ_TOLERANZMENGE, ZZ_TOLERANZEINH, ZZ_TARA, ZZ_TARAGEWEINH, ZZ_HANDTARA, ZZ_NETTOGEWICHT, ZZ_NETTOGEWEINH, ZZ_BRUTTOGEWICHT, ZZ_BRUTTOGEWEINH, ZZ_MMCID, ZZ_CONTAINERDRUCK, ZZ_METALLDET_TEST, ZZ_SATZART, PV_TRAEGERTYP, PV_TOCHTERTYP1, PV_TOCHTERTYP2, Linie, Status, MHD2, test, Sollpaletten, Istmenge, Kundenartikelnummer, Kundenartikelbezeichnung, ZZ_TEID_TOCHTER1, ZZ_TEID_TOCHTER2) VALUES('2000','00001234','000000000000000970','20130107','     24000.000','0','30','','0','0','','01','','','','','000001083860','28012015','155627','','01','Z06','WALZEN-VMP STAND.    25KG-SACK','','','           750','KG','28012015','155627','28012015','0100086583','','','1','00970S750','','             0','','','','',0,'','',0,'         0.000','KG','','','','','','','','','','','','','','01','1','2','3','4',1,1,'07.01.2013','','32','','','','','')
LG Huan90
Bitte warten ..
Mitglied: Huan90
29.01.2015 um 10:08 Uhr
Hey,

hat sich erledigt...
SQuerry = "INSE......

ac.CommandText = SQuery


... schoenen Tag noch und Danke fuer eure Mühe!
Bitte warten ..
Mitglied: 114757
29.01.2015, aktualisiert um 10:38 Uhr
SQuerry = "INSE......

Diese verdammten r's

Den Beitrag dann noch auf gelöst setzen.
Bitte warten ..
Ähnliche Inhalte
JavaScript
VBS-Script wird nicht vollständig ausgeführt
Frage von HousefrauJavaScript3 Kommentare

Hallo zusammen, wir lassen über eine Gruppenrichtlinie einen Script ausführen, welcher die Drucker der einzelnen Parteien mappen soll. Leider ...

Windows Server
Vbs-Anmeldescript wird nicht ausgeführt
Frage von julienmuWindows Server4 Kommentare

Hallo liebe Admins, ich habe ein kleines Problem, bei dem ich nicht dahinter komme woran es ganu hackt. Bei ...

Bibliotheken & Toolkits
Keine Verbindung über ODBC (Firebird) über ein Netzlaufwek
Frage von marcthesharkBibliotheken & Toolkits4 Kommentare

Hallo Zusammen, ich versuche vergeblich eine Verbindung zu einer Datenbank auf einen Netzlaufwerk herzustellen. Habe ein Laufwerk hinzugefügt auf ...

Microsoft Office
ODBC Verbindung Problem mit Excel
Frage von 3jojojoMicrosoft Office5 Kommentare

Hallo Leute Ich habe ein Problem mit Excel 2007. Ich importiere Daten direkt von einem SQL Server mit der ...

Neue Wissensbeiträge
Internet

USA: Die FCC schaff die Netzneutralität ab

Information von Frank vor 12 StundenInternet2 Kommentare

Jetzt beschädigt US-Präsident Donald Trump auch noch das Internet. Der neu eingesetzte FCC-Chef Ajit Pai ist bekannter Gegner einer ...

DSL, VDSL

ALL-BM200VDSL2V - Neues VDSL-Modem mit Vectoring von Allnet

Information von Lochkartenstanzer vor 16 StundenDSL, VDSL1 Kommentar

Moin, Falls jemand eine Alternative zu dem draytek sucht: Gruß lks

Windows 10

Microsoft bestätigt DMA-Policy-Problem in Win10 v1709

Information von DerWoWusste vor 16 StundenWindows 10

Wer sein Gerät mit der DMA-Policy absichert, bekommt evtl. Hardwareprobleme in v1709 von Win10. Warum? Weil v1709 endlich "richtig" ...

Verschlüsselung & Zertifikate

Die Hölle friert ein weiteres Stück zu: Microsoft integriert OpenSSH in Windows

Information von ticuta1 vor 19 StundenVerschlüsselung & Zertifikate

Interessant Die Hölle friert ein weiteres Stück zu: Microsoft integriert OpenSSH in Windows SSH-Kommando in CMD.exe und PowerShell

Heiß diskutierte Inhalte
Netzwerkmanagement
Mehrere Netzwerkadapter in einem PC zu einem Switch zusammenfügen
Frage von prodriveNetzwerkmanagement21 Kommentare

Hallo zusammen Vorweg, ich konnte schon einige IT-Probleme mit Hilfe dieses Forums lösen. Wirklich klasse hier! Doch für das ...

Hardware
Links klick bei Maus funktioniert nicht
gelöst Frage von Pablu23Hardware16 Kommentare

Hallo erstmal. Ich habe ein Problem mit meiner relativ alten maus jedoch denke ich nicht das es an der ...

Windows Server
Anmeldung direkt am DC nicht möglich
Frage von ThomasGrWindows Server16 Kommentare

Hallo, ich habe bei unserem Server 2016 Standard ein Problem. Keine Ahnung wie das auf einmal passiert ist. Ich ...

TK-Netze & Geräte
VPN-fähige IP-Telefone
Frage von the-buccaneerTK-Netze & Geräte14 Kommentare

Hi! Weiss noch jemand ein VPN-fähiges IP-Telefon mit dem man z.B. einen Heimarbeitsplatz gesichert anbinden könnte? Habe nur einen ...