Hallo Leute,
ich habe nun das kleine Prog. fast fertig. Ich würde ganz gerne noch eine Möglichkeit einarbeiten in der man die Schnittbreite vom Sägeblatt berücksichtigt, in der Regel wären das ca. 3,00 mm.
Wäre echt nett.
Lg
Hallo Leute,
ich habe nun das kleine Prog. fast fertig. Ich würde ganz gerne noch eine Möglichkeit einarbeiten in der man die Schnittbreite vom Sägeblatt berücksichtigt, in der Regel wären das ca. 3,00 mm.
Wäre echt nett.
Lg
ist doch eigentlich recht einfach
Schnittbreite := 3 FileRead,p,%1% l:=[],k:=[],sk:=[],s:=1,in:=1,m:=6000+Schnittbreite if(!ErrorLevel){ while(RegExMatch(p,"sm)(.*?(\d+)\D+(\d+|\d+\.\d+)([dcm]+?m?).*?)(\d|)",o,s)) ,s+=Strlen(o1),x.= o3*(O4="m"?1000:(O4="dm"?100:(O4="cm"?10:1)))+Schnittbreite " " o2 "`n"{ }Sort x,RN Loop,parse,x,%A_Space%`n if(!(A_Index&1&&l.Insert(tg:=A_LoopField))) loop % A_LoopField-1 l.Insert(tg) for i,v in l while(v),(in>=sk.MaxIndex())?(sk.Insert(0),k[in,1]:=0):""{ ((v+sk[in])<=m)?(k[in].Insert(v),sk[in]+=v,in:=1,v:=0):++in } Loop % k.MaxIndex(){ r .= "stange " (i:=A_Index) " ->zuschnitte->" Loop % k[i].MaxIndex()-1 r .= k[i,A_Index+1]-Schnittbreite " | " r .= " rest = " m-sk[i] "mm`n" } msgbox % r }else msgbox feher beim öffnen von datei %1%
was ist den das für zeugs was du da zerschnippelst ?
Wenn ich einen Stab der Länge 6000 mm habe und ich 60 x 100 mm Stücken brauche würde das ja in der Praxis mit einem Stab nicht ausreichen da wie gesagt 3 mm pro Schnitt dazu kommen dh.
Stab 1 ->Zuschnitte-> | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | Rest = 0mm
würde nicht funktionieren, da allein die Schnittbreite in der Summe schon 180 mm betragen würde.
sage mal hast du überhaubt meinen code oben probiert ???
geht genau auf
@ Babba richtig beim rest sollte es sebstverfreilich so sein ...
r .= " rest = " ( m-sk[i] -Schnittbreite ) "mm`n"
Ja das stimmt, ich hatte die zwei entscheidenden Zeilen übersehen da Ich den Code nicht per Copy and Paste verwendet hatte.
Funktioniert super...
Danke.
Ps: ich benötige das Prog. für die Kalkulation von Stabstahl, um halt die Bestellmengen so gering wie möglich zu halten.
So nun habe ich mal ein wenig rum probiert und mir ist da folgendes aufgefallen...
Das Ergebnis ist noch nicht ganz optimal.
Stab 1 ->Zuschnitte-> | 1000 | 1000 | 1000 | 1000 | 1000 | 985 | rest = -3mm
bekommt man das auch irgendwie gelöst? (den negativen Wert)
sowas hier sollte gehen
r .= ( m-sk[i] <= 0 ? (" kein Verschnitt`n") : (" rest = " (m-sk[i]-Schnittbreite) "mm`n") ) } msgbox % r
So habe ich´s jetzt gelöst...
r .= ( (m-sk[i]-Schnittbreite) < 0 ? ( "Rest = " m-sk[i] " mm`n`n") : (" Rest = " (m-sk[i]-Schnittbreite) " mm`n`n") ) }
Hey lasso,
ich hätte bezüglich des o.g. Skriptes noch ne Frage. Gibt es ne Möglichkeit die einzelnen Längen mit Positionsnummern zu versehen?
z.B.
Pos 1 = 4 x 812mm
Pos 2 = 5 x 1210mm
Pos 3 = 3 x 23cm
Pos 4 = 12 x 341mm