Hallo zusammen,
angesichts der Tatsache das ich wohl noch ziehmlich unwissend bin renne ich mir schon seit Tagen an einer sache den Schädel ein. :pinch:
Ich möchte mir gerade ein kleines Programm bauen in dem ich unteranderem ein Dynamisches Comboboxfeld einfügen will in dem ich verbrauchtes
Material zurückbuchen kann. Und wenn es nicht nur ein Posten ist sondern zwei oder drei soll man auf hinzufügen klicken und kann im nächsten
Feld wieder ein neues Teil auswählen und die Stückzahl dazu eintragen.
Jetzt hab ich zwar schon herausgefunden wie ich ein neues Feld hinzufügen kann aber ich habe keine Ahnung wie das so hinbekomme das ich die einzelnen
Einträge dann, wenn alles ausgefüllt ist, in die Datenbank schreiben kann da es ja bis jetzt wohl immer die gleiche Variable ist ( $Co_Material und $In_Stueck_Material).
Ich kann mir schon denken das das mit einen 2 Dimentionalen Array passieren muss. Aber wie hab ich nicht verstanden.
Ich hoffe ich haben mich recht Verständlich ausgedrückt und hoffe nun auf Eure hilfe.
Hier noch das Script:
Spoiler anzeigen
#include-once
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <GUIListView.au3>
#include <ListViewConstants.au3>
#include <StaticConstants.au3>
#include <array.au3>
#include <IE.au3>
#include <Array.au3>
Opt("MustDeclareVars", 1)
[/autoit] [autoit][/autoit] [autoit]Global $MysqlConn, $IN_AUFTRAGSNUMMER, $In_MACAdresse, $In_HUEP1, $In_HUEP2, $In_VV1, $In_VV2, $In_Dose1, $In_Dose2, $In_Startzeit_H, $In_Startzeit_MIN
Global $In_Endzeit_H, $In_Endzeit_MIN, $In_Lage, $connected, $errno, $Form1_1, $La_Auftragsnummer, $La_MACAdresse, $La_HUEP1, $La_HUEP2, $La_VV1, $La_VV2
Global $La_Dose1, $La_Dose2, $Label7, $Label8, $Label9, $Label10, $Label11, $Label12, $La_Startzeit, $Label27, $Label28, $Label31, $La_Endzeit, $Label30
Global $La_WELage, $La_Wlan, $Checkbox_WLAN, $La_Empfang, $Combo_Empfang, $La_Bemerkungen, $Co_Material, $Label32, $In_Stueck_Material, $hinzufuegen
Global $In_Pos1, $In_Pos2, $In_Pos3, $In_Pos4, $In_Pos5, $In_Pos6, $In_Pos7, $In_Pos8, $In_Pos9, $In_Pos10
Global $La_Pos1, $La_Pos2, $La_Pos3, $La_Pos4, $La_Pos5, $La_Pos6, $La_Pos7, $La_Pos8, $La_Pos9, $La_Pos10
Global $OK, $Abbrechen, $Unity_IE_Add, $oIE, $TechnikerID_Form, $AutragsNr_Form, $TechnikerID_Query, $AutragsNr_Query, $nMsg
Global $anzin, $GuiMain, $La_Nr, $In_Nr
Global $i = 0
[/autoit] [autoit][/autoit] [autoit]#include "funktionen.au3"
#include "mysql.au3"
#include "libmysqldll.au3"
_MySQL_InitLibrary()
If @error Then Exit MsgBox(0, 'Init', "")
;MsgBox(0, "DLL Version:",_MySQL_Get_Client_Version()&@CRLF& _MySQL_Get_Client_Info())
$MysqlConn = _MySQL_Init()
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]$connected = _MySQL_Real_Connect($MysqlConn,"192.168.55.148","root","","")
[/autoit] [autoit][/autoit] [autoit]If $connected = 0 Then
$errno = _MySQL_errno($MysqlConn)
MsgBox(0,"Error:",$errno & @LF & _MySQL_error($MysqlConn))
If $errno = $CR_UNKNOWN_HOST Then MsgBox(0,"Error:","$CR_UNKNOWN_HOST" & @LF & $CR_UNKNOWN_HOST)
Exit
Endif
#Region ### START Koda GUI section ### Form=d:\scripte\hem\gui\gui.kxf
$Form1_1 = GUICreate("Monteur", 804, 641, 189, 114)
$IN_AUFTRAGSNUMMER = GUICtrlCreateInput("", 96, 8, 89, 21)
GUICtrlSetLimit(-1, 6)
$La_Auftragsnummer = GUICtrlCreateLabel("Auftragsnummer", 0, 12, 80, 17)
$La_MACAdresse = GUICtrlCreateLabel("MAC Adresse", -1, 41, 68, 17)
$In_MACAdresse = GUICtrlCreateInput("", 95, 37, 89, 21)
GUICtrlSetLimit(-1, 12)
;############### Pegelwerte ###########################################
$In_HUEP1 = GUICtrlCreateInput("", 40, 80, 33, 21)
GUICtrlSetLimit(-1, 3)
$In_HUEP2 = GUICtrlCreateInput("", 40, 103, 33, 21)
GUICtrlSetLimit(-1, 3)
$In_VV1 = GUICtrlCreateInput("", 40, 126, 33, 21)
GUICtrlSetLimit(-1, 3)
$In_VV2 = GUICtrlCreateInput("", 40, 149, 33, 21)
GUICtrlSetLimit(-1, 3)
$In_Dose1 = GUICtrlCreateInput("", 40, 173, 33, 21)
GUICtrlSetLimit(-1, 3)
$In_Dose2 = GUICtrlCreateInput("", 40, 197, 33, 21)
GUICtrlSetLimit(-1, 3)
$La_HUEP1 = GUICtrlCreateLabel("HÜP 1", 3, 83, 35, 17)
$La_HUEP2 = GUICtrlCreateLabel("HÜP 2", 3, 107, 35, 17)
$La_VV1 = GUICtrlCreateLabel("VV 1", 3, 130, 35, 17)
$La_VV2 = GUICtrlCreateLabel("VV 2", 3, 153, 35, 17)
$La_Dose1 = GUICtrlCreateLabel("Dose 1", 2, 176, 35, 17)
$La_Dose2 = GUICtrlCreateLabel("Dose 1", 2, 201, 35, 17)
$Label7 = GUICtrlCreateLabel("db", 76, 83, 16, 17)
$Label8 = GUICtrlCreateLabel("db", 76, 106, 16, 17)
$Label9 = GUICtrlCreateLabel("db", 76, 128, 16, 17)
$Label10 = GUICtrlCreateLabel("db", 77, 151, 16, 17)
$Label11 = GUICtrlCreateLabel("db", 77, 175, 16, 17)
$Label12 = GUICtrlCreateLabel("db", 77, 200, 16, 17)
; #####################################################################
; ##################### Start und Endzeit #############################
$In_Startzeit_H = GUICtrlCreateInput("00", 48, 232, 25, 21)
GUICtrlSetLimit(-1, 2)
$In_Startzeit_MIN = GUICtrlCreateInput("00", 83, 232, 25, 21)
GUICtrlSetLimit(-1, 2)
$La_Startzeit = GUICtrlCreateLabel("Startzeit", 0, 234, 42, 17)
$Label27 = GUICtrlCreateLabel(":", 75, 234, 7, 17)
$Label28 = GUICtrlCreateLabel("Uhr", 112, 235, 21, 17)
$Label31 = GUICtrlCreateLabel("Uhr", 112, 261, 21, 17)
$In_Endzeit_H = GUICtrlCreateInput("00", 48, 258, 25, 21)
GUICtrlSetLimit(-1, 2)
$In_Endzeit_MIN = GUICtrlCreateInput("00", 83, 258, 25, 21)
GUICtrlSetLimit(-1, 2)
$La_Endzeit = GUICtrlCreateLabel("Endzeit", 0, 260, 39, 17)
$Label30 = GUICtrlCreateLabel(":", 75, 260, 7, 17)
; #####################################################################
; ############### WE - Lage ; WLAN ; Empfang ##########################
$In_Lage = GUICtrlCreateInput("", 55, 296, 65, 21)
GUICtrlSetLimit(-1, 4)
$La_WELage = GUICtrlCreateLabel("WE-Lage", 1, 298, 49, 17)
$La_Wlan = GUICtrlCreateLabel("WLAN", 2, 323, 36, 17)
$Checkbox_WLAN = GUICtrlCreateCheckbox("", 56, 321, 33, 17)
$La_Empfang = GUICtrlCreateLabel("Empfang", 0, 344, 46, 17)
$Combo_Empfang = GUICtrlCreateCombo("BCS", 56, 342, 65, 25)
GUICtrlSetData(-1, "SAT|DBTV|ohne|sonstige")
; #####################################################################
; ############## Bemerkungen ##########################################
$La_Bemerkungen = GUICtrlCreateLabel("Bemerkungen:", 8, 384, 73, 17)
GUICtrlCreateEdit("", 8, 400, 241, 89, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_WANTRETURN,$WS_VSCROLL))
; #####################################################################
; ################### Material hinzufügen #############################
$Co_Material = GUICtrlCreateCombo("Material", 257, 8, 239, 25)
GUICtrlSetData(-1, "Mat1|Mat2|Mat3")
$Label32 = GUICtrlCreateLabel("Stück", 501, 11, 32, 17)
$In_Stueck_Material = GUICtrlCreateInput("000", 536, 8, 33, 21)
GUICtrlSetLimit(-1, 3)
$hinzufuegen = GUICtrlCreateButton("Hinzufügen", 600, 8, 57, 17, 0)
; #####################################################################
; ################## Positionen #######################################
$In_Pos1 = GUICtrlCreateInput("", 214, 80, 41, 21)
$La_Pos1 = GUICtrlCreateLabel("Position 1", 160, 83, 46, 17)
$In_Pos2 = GUICtrlCreateInput("", 214, 112, 41, 21)
$La_Pos2 = GUICtrlCreateLabel("Position 2", 160, 115, 46, 17)
$In_Pos3 = GUICtrlCreateInput("", 214, 142, 41, 21)
$La_Pos3 = GUICtrlCreateLabel("Position 3", 160, 145, 46, 17)
$In_Pos4 = GUICtrlCreateInput("", 214, 174, 41, 21)
$La_Pos4 = GUICtrlCreateLabel("Position 4", 159, 177, 46, 17)
$In_Pos5 = GUICtrlCreateInput("", 214, 205, 41, 21)
$La_Pos5 = GUICtrlCreateLabel("Position 5", 159, 208, 46, 17)
$In_Pos6 = GUICtrlCreateInput("", 214, 237, 41, 21)
$La_Pos6 = GUICtrlCreateLabel("Position 6", 158, 240, 46, 17)
$In_Pos7 = GUICtrlCreateInput("", 214, 269, 41, 21)
$La_Pos7 = GUICtrlCreateLabel("Position 7", 158, 272, 46, 17)
$In_Pos8 = GUICtrlCreateInput("", 214, 301, 41, 21)
$La_Pos8 = GUICtrlCreateLabel("Position 8", 158, 304, 46, 17)
$In_Pos9 = GUICtrlCreateInput("", 214, 333, 41, 21)
$La_Pos9 = GUICtrlCreateLabel("Position 9", 158, 336, 46, 17)
$In_Pos10 = GUICtrlCreateInput("", 214, 365, 41, 21)
$La_Pos10 = GUICtrlCreateLabel("Position 10", 158, 368, 53, 17)
; #####################################################################
; ############### OK und Abbrechen ####################################
$OK = GUICtrlCreateButton("OK", 8, 520, 81, 17, 0)
$Abbrechen = GUICtrlCreateButton("Abbrechen", 169, 520, 81, 17, 0)
; #####################################################################
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
$anzin=0
[/autoit] [autoit][/autoit] [autoit]While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE, $Abbrechen
Exit
Case $hinzufuegen
GUISwitch ( $GuiMain, $Co_Material )
GUICtrlCreateCombo("Material",257,30+$anzin*23,239,25)
GUICtrlSetData(-1, "Mat1|Mat2|Mat3")
$Label32 = GUICtrlCreateLabel("Stück", 501, 33+$anzin*23, 32, 17)
$In_Stueck_Material = GUICtrlCreateInput("000", 536, 30+$anzin*23, 33, 21)
GUICtrlSetLimit(-1, 3)
$anzin+=1
Case $OK
;_Feldtest()
ExitLoop
EndSwitch
[/autoit] [autoit][/autoit] [autoit]WEnd
[/autoit] [autoit][/autoit] [autoit]Exit
[/autoit] [autoit][/autoit] [autoit][/autoit]Mfg Jan