import.css=/download/attachments/327912/newLayout.css |
Ponto-de-Entrada: OPM040B7 - Validações antes da gravação do Lançamentos do Inventário
Descrição:
Ponto de Entrada na rotina Inventário de Peças (OFIPM040) executado antes da gravação da tabela SB7 (Lançamentos do Inventario), com a finalidade de checar se a tabela SB7 poderá ser gravada.
Eventos
Static Function FS_GERACSB7()
Local lRet := .t. Local cDOC := "ABCDEFGHIJKLMNOPQRSTUVWXYZ" Local ni := 0 If MsgYesNo(STR0046,STR0023) // "Deseja realmente Gerar os Lancamentos do Inventario?" / "Atencao" If ExistBlock("OPM040B7") lRet := ExecBlock("OPM040B7",.f.,.f.,{}) EndIf If lRet DbSelectArea("VPE") RecLock("VPE",.f.) VPE->VPE_GERAB7 := "1" MsUnLock() ni := FM_SQL("SELECT COUNT(DISTINCT SB7.B7_DOC) AS QTDE FROM "+RetSQLName("SB7")+" SB7 WHERE SB7.B7_FILIAL='"+xFilial("SB7")+"' AND SB7.B7_DOC>='"+dtos(VPE->VPE_DATINI)+"A' AND SB7.B7_DOC<='"+dtos(VPE->VPE_DATINI)+"Z' AND SB7.D_E_L_E_T_=' '") ni++ DbSelectArea("VPG") DbSetOrder(1) DbSeek(xFilial("VPG")+VPE->VPE_CODIGO) ProcRegua(RecCount()) While !Eof() .and. xFilial("VPG") == VPG->VPG_FILIAL .and. ( VPG->VPG_CODIGO == VPE->VPE_CODIGO ) IncProc(STR0047) // "Gerando Lancamentos do Inventario..." DbSelectArea("SB1") DbSetOrder(7) DbSeek(xFilial("SB1")+VPG->VPG_GRUITE+VPG->VPG_CODITE) DbSelectArea("SB7") RecLock("SB7",.t.) SB7->B7_FILIAL := xFilial("SB7") SB7->B7_LOCAL := VPG->VPG_ALMOX SB7->B7_TIPO := SB1->B1_TIPO SB7->B7_DOC := dtos(VPE->VPE_DATINI)+substr(cDOC,ni,1) SB7->B7_QUANT := VPG->VPG_CONTA SB7->B7_QTSEGUM := ( VPG->VPG_CONTA / SB1->B1_CONV ) SB7->B7_DATA := VPE->VPE_DATINI SB7->B7_LOTECTL := "" SB7->B7_NUMLOTE := "" SB7->B7_DTVALID := dDataBase SB7->B7_LOCALIZ := "" SB7->B7_NUMSERI := "" SB7->B7_COD := SB1->B1_COD SB7->B7_CONTAGE := strzero(1,len(SB7->B7_CONTAGE)) MsUnLock() DbSelectArea("VPG") DbSkip() EndDo MsgInfo(STR0096+CHR(13)+CHR(10)+CHR(13)+CHR(10)+STR0097+": "+dtos(VPE->VPE_DATINI)+substr(cDOC,ni,1),STR0023) // Lancamentos do Inventario gerados com sucesso! / Documento / Atencao EndIf EndIf Return
Programa Fonte
OFIPM040.PRW
Sintaxe
OPM040B7 - Validações antes da gravação do Lançamentos do Inventário ( [ ] ) --> lRet
Parâmetros:
Retorno
Observações
2User Function OPM040B7()
Local lRet := .t. MsgInfo(“Ponto de Entrada OPM040B7 executado!”,”Atencao”) return lRet
Variáveis
|