Eventos: | aVetInsB1 := {} aAdd(aVetInsB1,{"SB1", "B1_FILIAL","C",cFilSB1}) aAdd(aVetInsB1,{"SB1", "B1_COD","C",""}) // <<<<< 2 aAdd(aVetInsB1,{"SB1", "B1_GRUPO","C",cGruIte}) aAdd(aVetInsB1,{"SB1", "B1_CODITE","C",""}) // <<<<< 4 aAdd(aVetInsB1,{"SB1", "B1_TIPO","C","ME"}) aAdd(aVetInsB1,{"SB1", "B1_UM","C","PC"}) aAdd(aVetInsB1,{"XXX", "B1_SEGUM","C","PC"}) aAdd(aVetInsB1,{"SB1", "B1_LOCPAD","C",cAlmox}) aAdd(aVetInsB1,{"XXX", "B1_PICM","N",0}) aAdd(aVetInsB1,{"XXX", "B1_TE","C",cTesEnt}) aAdd(aVetInsB1,{"XXX", "B1_TS","C",cTesSai}) aAdd(aVetInsB1,{"SB1", "B1_TIPOCQ","C","M"}) aAdd(aVetInsB1,{"SB1", "B1_FABRIC","C",cFabric}) aAdd(aVetInsB1,{"SB1", "B1_CONTRAT","C","N"}) aAdd(aVetInsB1,{"SB1", "B1_LOCALIZ","C","N"}) aAdd(aVetInsB1,{"SB1", "B1_IRRF","C","N"}) aAdd(aVetInsB1,{"SB1", "B1_CONTSOC","C","N"}) aAdd(aVetInsB1,{"SB1", "B1_ENVOBR","C","0"}) aAdd(aVetInsB1,{"SB1", "B1_SITPROD","C","N"}) aAdd(aVetInsB1,{"SB1", "B1_MONO","C","N"}) aAdd(aVetInsB1,{"SB1", "B1_FLAGSUG","C","1"}) aAdd(aVetInsB1,{"SB1", "B1_CLASSVE","C","1"}) aAdd(aVetInsB1,{"SB1", "B1_APROPRI","C","D"}) aAdd(aVetInsB1,{"SB1", "B1_FANTASM","C","N"}) aAdd(aVetInsB1,{"SB1", "B1_TIPODEC","C","N"}) aAdd(aVetInsB1,{"SB1", "B1_UREV","C",dtos(ddatabase)}) aAdd(aVetInsB1,{"SB1", "B1_PERINV","N",180}) aAdd(aVetInsB1,{"SB1", "B1_GRADE","C","N"}) aAdd(aVetInsB1,{"SB1", "B1_PROC","C",cCodFor}) aAdd(aVetInsB1,{"SB1", "B1_LOJPROC","C",cLojFor}) aAdd(aVetInsB1,{"SB1", "B1_FORAEST","C",cFestCo}) aAdd(aVetInsB1,{"SB1", "B1_ANUENTE","C","2"}) aAdd(aVetInsB1,{"SB1", "B1_BALANCA","C","0"}) aAdd(aVetInsB1,{"SB1", "B1_IMPZFRC","C","N"}) aAdd(aVetInsB1,{"XXX", "B1_CONV","N",1}) // <<<< 35 aAdd(aVetInsB1,{"SB1", "B1_ORIGEM","C"," "}) aAdd(aVetInsB1,{"SB1", "B1_DTREFP1","C",dtos(ddatabase)}) aAdd(aVetInsB1,{"SB1", "B1_DESC","C",""}) // <<<<< 38 aAdd(aVetInsB1,{"SB1", "B1_IPI","N",0}) // <<<<< 39 aAdd(aVetInsB1,{"SB1", "B1_CONTA","C",cCtaCtb}) aAdd(aVetInsB1,{"SB1", "B1_QE","N",0}) // <<<<< 41 aAdd(aVetInsB1,{"SB1", "B1_GRUDES","C",""}) // <<<<< 42 aAdd(aVetInsB1,{"SB1", "B1_ATIVO","C",""}) // <<<<< 43 aAdd(aVetInsB1,{"SB1", "B1_CLASSE","C",""}) // <<<<< 44 aAdd(aVetInsB1,{"SB1", "B1_POSIPI","C",""}) // <<<<< 45 aAdd(aVetInsB1,{"SB1", "B1_PICMENT","N",0}) // <<<<< 46 aAdd(aVetInsB1,{"SB1", "B1_CC","C",cCenCus}) aAdd(aVetInsB1,{"SB1", "B1_PRV1","N",0}) // <<<<< 48 aAdd(aVetInsB1,{"SB1", "B1_PIS","C",""}) // <<<<< 49 aAdd(aVetInsB1,{"SB1", "B1_COFINS","C",""}) // <<<<< 50 aAdd(aVetInsB1,{"SB1", "R_E_C_N_O_","N",0}) // <<<<< 51 aAdd(aVetInsB1,{"SB1", "B1_MSBLQL","C","2"}) aAdd(aVetInsB1,{"XXX", "B1_CODFAB","C",""}) // <<<<< 53 aAdd(aVetInsB1,{"SB1", "B1_PESO","N",0}) // <<<<< 54 aAdd(aVetInsB1,{"SB5","B5_FILIAL","C",cFilSB5}) aAdd(aVetInsB1,{"SB5","B5_DTREFP2","C",DTOS(dDataBase)}) aAdd(aVetInsB1,{"SB5","B5_DTREFP3","C",DTOS(dDataBase)}) aAdd(aVetInsB1,{"SB5","B5_COD","C", ""}) // <<<<< 58 aAdd(aVetInsB1,{"SB5","R_E_C_N_O_","N",0}) // <<<<< 59 aAdd(aVetInsB1,{"SB5","B5_PRV2","N",0}) // <<<<< 60 aAdd(aVetInsB1,{"SB5","B5_PRV3","N",0}) // <<<<< 61 aAdd(aVetInsB1,{"SB5","B5_PRV4","N",0}) // <<<<< 62 aAdd(aVetInsB1,{"SB5","B5_PRV5","N",0}) // <<<<< 63 aAdd(aVetInsB1,{"SB5","B5_PRV6","N",0}) // <<<<< 64 aAdd(aVetInsB1,{"XXX", "B1_CRICOD","C",""}) // <<<<< 65 aAdd(aVetInsB1,{"SB5","B5_CEME","C",""}) // <<<<< 66 aAdd(aVetInsB1,{"SB1","B1_GARANT","C","2"}) // <<<<< 66 // FT_FGotop() While ! FT_FEof() cStr := FT_FReadLN() while AT("'",cSTR) > 0 nChar := AT("'",cSTR) cStr := Left(cSTR,nChar-1)+" "+Subs(cSTR,nChar+1) enddo // nCont++ // if nCont > (nQtdReg / 200) nCont = 0 IncRegua() Endif // Armazena codigo do item do arquivo /* ITEM 1 15 DESCRIÇÃO 16 33 ORIGEM Ver Tabela 43 1 <<<<------ CLASSIFICAÇÃO FISCAL 44 10 IPI 15,5 54 4 <<<<------ PESO 58 9 PREÇO 67 13 EMBALAGEM 80 3 LINHA DE PRODUTO Ver Tabela 83 3 DESCONTO 0,1,2 ... 9 86 1 GRUPO-MATERIAL 87 4 DESCONTO MP/EME 20,5 91 3 DESCONTO EST/PROG 20,5 94 3 MODELO 97 10 UNIDADE MEDIDA pc,kg,pe,ml,m 107 2 */ cItem := Subs(cStr,1,15) cDescricao := Subs(cStr,16,27) cOrigem := Subs(cStr,43,1) cClassFis := Subs(cStr,44,8) nIPI := VAL(Alltrim(Subs(cStr,54,4)))/100 nPeso := VAL(Alltrim(Subs(cStr,58,9)))/1000 nPreco := VAL(Alltrim(Subs(cStr,67,13)))/100 nEmbalagem := VAL(Subs(cStr,80,3)) cLinhaProd := Subs(cStr,83,3) cDesconto := Subs(cStr,86,1) cGrupoMaterial := Subs(cStr,87,4) nDescMP := Subs(cStr,91,3) nDescEST := Subs(cStr,94,3) cModelo := Subs(cStr,97,10) cUniMedida := Subs(cStr,107,2) nPrePub := Round(nPreco * (1 + MV_PAR03/100),2) /////////////////////////////////////////// // Verificação da existência dos registros /////////////////////////////////////////// lExisteSB1 := .f. lExisteSB5 := .f. lExisteGrp := .f.
nRecWhere1 = 0 nRecWhere5 = 0 cQryAl001 := GetNextAlias() cQuery := "SELECT R_E_C_N_O_ CNT ,B1_COD, B1_GRUPO FROM "+RetSqlName("SB1") cQuery += " WHERE B1_FILIAL ='" + cFilSB1 + "' AND B1_COD ='" + Alltrim(cItem) + "' AND" cQuery += " D_E_L_E_T_=' '" dbUseArea( .T., "TOPCONN", TcGenQry( ,, cQuery ), cQryAl001, .F., .T. ) if !(cQryAl001)->(eof()) nRecWhere1 = (cQryAl001)->(CNT) lExisteSB1 := .t. if !Empty((cQryAl001)->(B1_GRUPO)) lExisteGrp := .t. endif endif (cQryAl001)->(dbCloseArea()) cQryAl001 := GetNextAlias() cQuery := "SELECT R_E_C_N_O_ CNT FROM "+RetSqlName("SB5") cQuery += " WHERE B5_FILIAL ='" + cFilSB5 + "'AND B5_COD ='" + Alltrim(cItem) + "' AND" cQuery += " D_E_L_E_T_=' '" dbUseArea( .T., "TOPCONN", TcGenQry( ,, cQuery ), cQryAl001, .F., .T. ) if !(cQryAl001)->(eof()) nRecWhere5 = (cQryAl001)->(CNT) lExisteSB5 := .t. endif (cQryAl001)->(dbCloseArea()) if !lExisteSB1 cAliasSB1 := GetNextAlias() BeginSql Alias cAliasSB1 SELECT MAX(R_E_C_N_O_) NRO FROM %Table:SB1% SB1 EndSql nRecNoB1 := (cAliasSB1)->(NRO) (cAliasSB1)->(DBCloseArea()) nRecNoB1++ aVetInsB1[2,4] := cItem // "CPCJD"+STRZERO(nProx,TamSx3("B1_COD")[1] - 6) aVetInsB1[51,4] := nRecNoB1 else aVetInsB1[2,4] := "" aVetInsB1[51,4] := 0 endif if !lExisteSB5 cAliasSB5 := GetNextAlias() BeginSql Alias cAliasSB5 SELECT MAX(R_E_C_N_O_) NRO FROM %Table:SB5% SB5 EndSql nRecNoB5 := (cAliasSB5)->(NRO) (cAliasSB5)->(DBCloseArea()) nRecNoB5++ aVetInsB1[58,4] := cItem // "CPCJD"+STRZERO(nProx,TamSx3("B1_COD")[1] - 6) aVetInsB1[59,4] := nRecNoB5 else aVetInsB1[58,4] := "" aVetInsB1[59,4] := 0 endif // aVetInsB1[4,4] := cItem aVetInsB1[36,4] := cOrigem aVetInsB1[38,4] := cDescricao // aAdd(aVetInsB1,{"SB1", "B1_DESC","C",""}) // <<<<< 38 aVetInsB1[39,4] := 0 // TODO: aAdd(aVetInsB1,{"SB1", "B1_IPI","N",0}) // <<<<< 39 aVetInsB1[41,4] := nEmbalagem // aAdd(aVetInsB1,{"SB1", "B1_QE","N",0}) // <<<<< 41 aVetInsB1[42,4] := cDesconto // TODO: aAdd(aVetInsB1,{"SB1", "B1_GRUDES","C",""}) // <<<<< 42 aVetInsB1[43,4] := "S" // TODO: aAdd(aVetInsB1,{"SB1", "B1_ATIVO","C",""}) // <<<<< 43 aVetInsB1[44,4] := "" // aAdd(aVetInsB1,{"SB1", "B1_CLASSE","C",""}) // <<<<< 44 aVetInsB1[45,4] := cClassFis // aAdd(aVetInsB1,{"SB1", "B1_POSIPI","C",""}) // <<<<< 45 aVetInsB1[46,4] := 0 // TODO: aAdd(aVetInsB1,{"SB1", "B1_PICMENT","N",0}) // <<<<< 46 aVetInsB1[48,4] := nPrePub // aAdd(aVetInsB1,{"SB1", "B1_PRV1","N",0}) // <<<<< 48 aVetInsB1[49,4] := "S" // TODO: aAdd(aVetInsB1,{"SB1", "B1_PIS","C",""}) // <<<<< 49 aVetInsB1[50,4] := "S" // TODO: aAdd(aVetInsB1,{"SB1", "B1_COFINS","C",""}) // <<<<< 50 aVetInsB1[53,4] := cItem // aAdd(aVetInsB1,{"SB1", "B1_CODFAB","C",""}) // <<<<< 53 aVetInsB1[54,4] := nPeso // aAdd(aVetInsB1,{"SB1", "B1_PESO","N",""}) // <<<<< 54 aVetInsB1[66,4] := cDescricao If ExistBlock("ONNH01AV") ExecBlock("ONNH01AV",.f.,.f.) EndIf INSUPDPEC(aVetInsB1, if(lExisteSB1, "R_E_C_N_O_ =" + Alltrim(STR(nRecWhere1)) ,NIL),"SB1",lExisteGrp) INSUPDPEC(aVetInsB1, if(lExisteSB5, "R_E_C_N_O_ =" + Alltrim(STR(nRecWhere5)) ,NIL),"SB5") ft_fskip() End // ConfirmSX8() FClose(nHnd) |