Código PHP:
PROCEDURE TFcashshop.F_GERA_AXES;
LABEL PULA,PULA2,FIM_AXES;
BEGIN
WHILE WX < MEMOITEM.Lines.Count +1 DO BEGIN
IF TRIM(COPY(MEMOITEM.Lines.Strings[WX],1,100)) = '1' THEN BEGIN //LENDO OS AXES
WX:=WX+1;
PULA2:
IF ((TRIM(COPY(MEMOITEM.Lines.Strings[WX],1,1))) <> '0') AND
((TRIM(COPY(MEMOITEM.Lines.Strings[WX],1,1))) <> '1') AND
((TRIM(COPY(MEMOITEM.Lines.Strings[WX],1,1))) <> '2') AND
((TRIM(COPY(MEMOITEM.Lines.Strings[WX],1,1))) <> '3') AND
((TRIM(COPY(MEMOITEM.Lines.Strings[WX],1,1))) <> '4') AND
((TRIM(COPY(MEMOITEM.Lines.Strings[WX],1,1))) <> '5') AND
((TRIM(COPY(MEMOITEM.Lines.Strings[WX],1,1))) <> '6') AND
((TRIM(COPY(MEMOITEM.Lines.Strings[WX],1,1))) <> '7') AND
((TRIM(COPY(MEMOITEM.Lines.Strings[WX],1,1))) <> '8') AND
((TRIM(COPY(MEMOITEM.Lines.Strings[WX],1,1))) <> '9') THEN BEGIN
WX:=WX+1;
GOTO PULA2;
END;
//Index Slot Skill X Y Serial Opt Drop Nombre
WTAMANHO_LINHA:=LENGTH(MEMOITEM.Lines.Strings[WX]);
WX_COLUNA:=0;
WINDEX:=''; WSLOT:=''; WSKILL:=''; WTX:=''; WTY:=''; WSERIAL:='';
WOPT:=''; WDROP:=''; WNOME:='';
WINICIO:=STRTOINT(AXE_INICIAL.Text);
WFIM:=STRTOINT(AXE_FINAL.Text);
WHILE WX_COLUNA < WTAMANHO_LINHA DO BEGIN
PULA:
WX_COLUNA:=WX_COLUNA+1;
//PEGANDO INDEX
IF (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) AND (WINDEX = '') THEN BEGIN
WHILE (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) DO BEGIN
WINDEX:=WINDEX+COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1);
WITEM:=STRTOINT(TRIM(WINDEX));
WX_COLUNA:=WX_COLUNA+1;
END;
END;
IF (WITEM < WINICIO) OR (WITEM > WFIM) THEN BEGIN
WX_COLUNA:=WTAMANHO_LINHA;
WX:=WX+1;
WX_COLUNA:=0;
WINDEX:='';
GOTO PULA;
END;
//PEGANDO SLOT
IF (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) AND (WSLOT = '') THEN BEGIN
WHILE (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) DO BEGIN
WSLOT:=WSLOT+COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1);
WX_COLUNA:=WX_COLUNA+1;
END;
END;
//PEGANDO SLkill
IF (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) AND (WSKILL = '') THEN BEGIN
WHILE (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) DO BEGIN
WSKILL:=WSKILL+COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1);
WX_COLUNA:=WX_COLUNA+1;
END;
END;
//PEGANDO POSICAO X
IF (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) AND (WTX = '') THEN BEGIN
WHILE (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) DO BEGIN
WTX:=WTX+COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1);
WX_COLUNA:=WX_COLUNA+1;
END;
END;
//PEGANDO POSICAO Y
IF (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) AND (WTY = '') THEN BEGIN
WHILE (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) DO BEGIN
WTY:=WTY+COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1);
WX_COLUNA:=WX_COLUNA+1;
END;
END;
//PEGANDO NUMERO DE SERIE
IF (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) AND (WSERIAL = '') THEN BEGIN
WHILE (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) DO BEGIN
WSERIAL:=WSERIAL+COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1);
WX_COLUNA:=WX_COLUNA+1;
END;
END;
//PEGANDO OPTION
IF (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) AND (WOPT = '') THEN BEGIN
WHILE (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) DO BEGIN
WOPT:=WOPT+COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1);
WX_COLUNA:=WX_COLUNA+1;
END;
END;
//PEGANDO DROP
IF (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) AND (WDROP = '') THEN BEGIN
WHILE (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) DO BEGIN
WDROP:=WDROP+COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1);
WX_COLUNA:=WX_COLUNA+1;
END;
END;
//PEGANDO NOME DO ITEN
IF (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) AND (WNOME = '') THEN BEGIN
WHILE (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> ' ') AND (COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1) <> #9) DO BEGIN
WNOME:=WNOME+COPY(MEMOITEM.Lines.Strings[WX],WX_COLUNA,1);
WX_COLUNA:=WX_COLUNA+1;
END;
END;
IF (WINDEX <> '') AND (WSLOT <> '') AND (WTX <> '') AND (WTY <> '') AND (WSERIAL <> '') AND (WOPT <> '') AND (WDROP <> '') AND (WNOME <> '') THEN BEGIN
IF (EDIT1IAXE.Text <> '') AND (EDIT1FAXE.Text <> '') AND (EDIT1CAXE.Text <> '') THEN BEGIN
IF (WITEM >= STRTOINT(EDIT1IAXE.Text)) AND (WITEM <= STRTOINT(EDIT1FAXE.Text)) THEN WVALOR:=EDIT1CAXE.TEXT;
END;
IF (EDIT2IAXE.Text <> '') AND (EDIT2FAXE.Text <> '') AND (EDIT2CAXE.Text <> '') THEN BEGIN
IF (WITEM >= STRTOINT(EDIT2IAXE.Text)) AND (WITEM <= STRTOINT(EDIT2FAXE.Text)) THEN WVALOR:=EDIT2CAXE.TEXT;
END;
IF (EDIT3IAXE.Text <> '') AND (EDIT3FAXE.Text <> '') AND (EDIT3CAXE.Text <> '') THEN BEGIN
IF (WITEM >= STRTOINT(EDIT3IAXE.Text)) AND (WITEM <= STRTOINT(EDIT3FAXE.Text)) THEN WVALOR:=EDIT3CAXE.TEXT;
END;
IF (EDIT4IAXE.Text <> '') AND (EDIT4FAXE.Text <> '') AND (EDIT4CAXE.Text <> '') THEN BEGIN
IF (WITEM >= STRTOINT(EDIT4IAXE.Text)) AND (WITEM <= STRTOINT(EDIT4FAXE.Text)) THEN WVALOR:=EDIT4CAXE.TEXT;
END;
IF (EDIT5IAXE.Text <> '') AND (EDIT5FAXE.Text <> '') AND (EDIT5CAXE.Text <> '') THEN BEGIN
IF (WITEM >= STRTOINT(EDIT5IAXE.Text)) AND (WITEM <= STRTOINT(EDIT5FAXE.Text)) THEN WVALOR:=EDIT5CAXE.TEXT;
END;
MEMOCASHSHOP.Lines.Add('1'+#9+WINDEX+#9+EDITWLVLAXES.Text+#9+'1'+#9+WTX+#9+WTY+#9+'63'+#9+'0'+#9+WVALOR+#9+'50'+#9+'//'+WNOME);
WX_COLUNA:=0;
WINDEX:=''; WSLOT:=''; WSKILL:=''; WTX:=''; WTY:=''; WSERIAL:='';
WOPT:=''; WDROP:=''; WNOME:='';
WX:=WX+1;
IF COPY(MEMOITEM.Lines.Strings[WX],1,3) = 'end' THEN BEGIN
GOTO FIM_AXES;
END;
END;
END;
WX:=WX+1;
END;
WX:=WX+1;
END;
FIM_AXES:
END;