Академический Документы
Профессиональный Документы
Культура Документы
ch'
#Include "rwmake.ch"
#Include "Topconn.ch"
/*
������������������������������������������������
������������������������������������������������
������������������������������������������������
���P r ograma ZJOBF007 �Autor �DrillTec Solucoes � Data � 30/09/2019
������������������������������������������������
���D e sc. � Job Processo Pedido a vista ���
������������������������������������������������
���U s o � Elizabeth Ceramica ���
������������������������������������������������
�������������������������ͼ��
������������������������������������������������
�����������������������������
������������������������������������������������
�����������������������������
*
��+-------------------------------------------------------------------------+��
��� CONTROLE DE ALTERACOES REALIZADAS NO FONTE
���
��+-----------+--------------------------------+----------------+-----------+��
��� Analista � Cristina Cruz � Data Alteracao
�27/11/2019 ���
��+-----------+--------------------------------+----------------+-----------+��
��� Altera��o � Colocado para gravar a observa��o PEDIDO CANCELADO POR
FALTA���
��� � DE PAGAMENTO no campo C5_XMOTCAN
���
��+-----------+--------------------------------+----------------+-----------+��
*/
//C5_XIDPORT
Return
// ELIMINA PEDIDO RETIRA
User function ZJOBF071()
Local cQuery
//020203
RpcSetType(3)
RpcSetEnv( "01", "020203",,,'FAT')
cData1 := DtoS(date()-SuperGetMV("EL_ALPRZAV", ,5))
WHILE !TMP->(EOF())
while !TMP2->(EOF())
dbSelectArea("SC9")
SC9->(dbGoTo(TMP2->RECNO))
MaAvalSC9("SC9",8)
//conout(STR(TMP->RECNO)+" CARGA ESTORNADA")
a460Estorna()
//conout(STR(TMP->RECNO)+" LIBERACAO ESTORNADA")
TMP2->(DBSKIP())
End
//conout(STR(TMP->RECNO)+".1."+cData1)
dbSelectArea("SC6")
SC6->(dbGoTo(TMP->RECNO))
RECLOCK("SC6")
SC6->C6_OPC := 'PEDIDO CANCELADO POR FALTA DE PAGAMENTO'
//SC6->C6_QTDEMP := 0
SC6->(MsUnlock())
dbSelectArea("SC5")
SC5->(dbGoTo(TMP->C5REC))
RECLOCK("SC5")
SC5->C5_XTIPLIB := 'CA'
SC5->C5_XMOTCAN := 'PEDIDO CANCELADO POR FALTA DE PAGAMENTO'
SC5->(MsUnlock())
//conout("PEDIDO."+TMP->C6_NUM+".2."+cData1)
RemPv(TMP->RECNO)
//conout(STR(TMP->RECNO)+".3."+cData1)
TMP->(DBSKIP())
EndDo
Else
//conout("JOB PORTAL INATIVO - FILIAL 020203")
Endif
RpcClearEnv()
//***************************** 020204
RpcSetType(3)
RpcSetEnv( "01", "020204",,,'FAT')
cData1 := DtoS(date()-SuperGetMV("EL_ALPRZAV", ,2))
xELJOBPRT := SuperGetMV("EL_JOBPRT", ,"S")
WHILE !TMP->(EOF())
while !TMP2->(EOF())
dbSelectArea("SC9")
SC9->(dbGoTo(TMP2->RECNO))
MaAvalSC9("SC9",8)
//conout(STR(TMP->RECNO)+" CARGA ESTORNADA")
a460Estorna()
//conout(STR(TMP->RECNO)+" LIBERACAO ESTORNADA")
TMP2->(DBSKIP())
End
//conout(STR(TMP->RECNO)+".1."+cData1)
dbSelectArea("SC6")
SC6->(dbGoTo(TMP->RECNO))
RECLOCK("SC6")
SC6->C6_OPC := 'PEDIDO CANCELADO POR FALTA DE PAGAMENTO'
//SC6->C6_QTDEMP := 0
SC6->(MsUnlock())
dbSelectArea("SC5")
SC5->(dbGoTo(TMP->C5REC))
RECLOCK("SC5")
SC5->C5_XTIPLIB := 'CA'
SC5->C5_XMOTCAN := 'PEDIDO CANCELADO POR FALTA DE PAGAMENTO'
SC5->(MsUnlock())
//conout("PEDIDO."+TMP->C6_NUM+".2."+cData1)
RemPv(TMP->RECNO)
//conout(STR(TMP->RECNO)+".3."+cData1)
TMP->(DBSKIP())
EndDo
//***************************** 020204
RpcSetType(3)
RpcSetEnv( "01", "020103",,,'FAT')
cData1 := DtoS(date()-SuperGetMV("EL_ALPRZAV", ,2))
xELJOBPRT := SuperGetMV("EL_JOBPRT", ,"S")
WHILE !TMP->(EOF())
while !TMP2->(EOF())
dbSelectArea("SC9")
SC9->(dbGoTo(TMP2->RECNO))
MaAvalSC9("SC9",8)
//conout(STR(TMP->RECNO)+" CARGA ESTORNADA")
a460Estorna()
//conout(STR(TMP->RECNO)+" LIBERACAO ESTORNADA")
TMP2->(DBSKIP())
End
//conout(STR(TMP->RECNO)+".1."+cData1)
dbSelectArea("SC6")
SC6->(dbGoTo(TMP->RECNO))
RECLOCK("SC6")
SC6->C6_OPC := 'PEDIDO CANCELADO POR FALTA DE PAGAMENTO'
//SC6->C6_QTDEMP := 0
SC6->(MsUnlock())
dbSelectArea("SC5")
SC5->(dbGoTo(TMP->C5REC))
RECLOCK("SC5")
SC5->C5_XTIPLIB := 'CA'
SC5->C5_XMOTCAN := 'PEDIDO CANCELADO POR FALTA DE PAGAMENTO'
SC5->(MsUnlock())
//conout("PEDIDO."+TMP->C6_NUM+".2."+cData1)
RemPv(TMP->RECNO)
//conout(STR(TMP->RECNO)+".3."+cData1)
TMP->(DBSKIP())
EndDo
RpcClearEnv()
//***************************** 020201
RpcSetType(3)
RpcSetEnv( "01", "020201",,,'FAT')
cData1 := DtoS(date()-SuperGetMV("EL_ALPRZAV", ,2))
xELJOBPRT := SuperGetMV("EL_JOBPRT", ,"S")
WHILE !TMP->(EOF())
while !TMP2->(EOF())
dbSelectArea("SC9")
SC9->(dbGoTo(TMP2->RECNO))
MaAvalSC9("SC9",8)
//conout(STR(TMP->RECNO)+" CARGA ESTORNADA")
a460Estorna()
//conout(STR(TMP->RECNO)+" LIBERACAO ESTORNADA")
TMP2->(DBSKIP())
End
//conout(STR(TMP->RECNO)+".1."+cData1)
dbSelectArea("SC6")
SC6->(dbGoTo(TMP->RECNO))
RECLOCK("SC6")
SC6->C6_OPC := 'PEDIDO CANCELADO POR FALTA DE PAGAMENTO'
//SC6->C6_QTDEMP := 0
SC6->(MsUnlock())
dbSelectArea("SC5")
SC5->(dbGoTo(TMP->C5REC))
RECLOCK("SC5")
SC5->C5_XTIPLIB := 'CA'
SC5->C5_XMOTCAN := 'PEDIDO CANCELADO POR FALTA DE PAGAMENTO'
SC5->(MsUnlock())
//conout("PEDIDO."+TMP->C6_NUM+".2."+cData1)
RemPv(TMP->RECNO)
//conout(STR(TMP->RECNO)+".3."+cData1)
TMP->(DBSKIP())
EndDo
RpcClearEnv()
//***************************** 020202
RpcSetType(3)
RpcSetEnv( "01", "020202",,,'FAT')
cData1 := DtoS(date()-SuperGetMV("EL_ALPRZAV", ,2))
xELJOBPRT := SuperGetMV("EL_JOBPRT", ,"S")
WHILE !TMP->(EOF())
while !TMP2->(EOF())
dbSelectArea("SC9")
SC9->(dbGoTo(TMP2->RECNO))
MaAvalSC9("SC9",8)
//conout(STR(TMP->RECNO)+" CARGA ESTORNADA")
a460Estorna()
//conout(STR(TMP->RECNO)+" LIBERACAO ESTORNADA")
TMP2->(DBSKIP())
End
//conout(STR(TMP->RECNO)+".1."+cData1)
dbSelectArea("SC6")
SC6->(dbGoTo(TMP->RECNO))
RECLOCK("SC6")
SC6->C6_OPC := 'PEDIDO CANCELADO POR FALTA DE PAGAMENTO'
//SC6->C6_QTDEMP := 0
SC6->(MsUnlock())
dbSelectArea("SC5")
SC5->(dbGoTo(TMP->C5REC))
RECLOCK("SC5")
SC5->C5_XTIPLIB := 'CA'
SC5->C5_XMOTCAN := 'PEDIDO CANCELADO POR FALTA DE PAGAMENTO'
SC5->(MsUnlock())
//conout("PEDIDO."+TMP->C6_NUM+".2."+cData1)
RemPv(TMP->RECNO)
//conout(STR(TMP->RECNO)+".3."+cData1)
TMP->(DBSKIP())
EndDo
RpcClearEnv()
Return
Local nQtdLibSC9:= 0
Local lResiduo := .F.
Local nMCusto := 0
Local nRecnoB2 := 0
Local nVlrDep := 0
Local lAtuSGJ := SuperGetMV("MV_PVCOMOP",.F.,.F.) .And.
FindFunction("ALIASINDIC") .And. AliasIndic("SGJ")
#IFDEF TOP
Local cQuery := ""
#ENDIF
lPv := If(lPv==Nil,.T.,lPv)
lBloqueado := If(lBloqueado==Nil,.T.,lBloqueado)
nVlrRes := 0
dbSelectArea("SC6")
If ( nRegSc6 != Nil )
MsGoto(nRegSC6)
EndIf
dbSelectArea("SF4")
dbSetOrder(1)
MsSeek(xFilial("SF4")+SC6->C6_TES)
dbSelectArea("SC5")
dbSetOrder(1)
MsSeek(xFilial("SC5")+SC6->C6_NUM)
If ( lBloqueados )
#IFDEF TOP
If ( TcSrvType()!="AS/400" )
cQuery := "SELECT SUM(SC9.C9_QTDLIB) C9_QTDLIB FROM "
cQuery += RetSqlName("SC9")+" SC9 "
cQuery += "WHERE SC9.C9_FILIAL='"+xFilial("SC9")+"' AND "
cQuery += "SC9.C9_PEDIDO='"+SC6->C6_NUM+"' AND "
cQuery += "SC9.C9_ITEM='"+SC6->C6_ITEM+"' AND "
cQuery += "SC9.C9_PRODUTO='"+SC6->C6_PRODUTO+"' AND "
cQuery += "SC9.C9_BLCRED<>'10' AND "
cQuery += "SC9.C9_BLEST<>'10' AND "
cQuery += "(SC9.C9_BLEST<>' ' OR SC9.C9_BLCRED<>' ') AND
"
cQuery += "SC9.D_E_L_E_T_<>'*'"
cQuery := ChangeQuery(cQuery)
cQry := CriaTrab(,.F.)
dbUseArea(.T.,"TOPCONN",TcGenQry(,,cQuery),cQry,.T.,.T.)
TcSetField(cQry,"C9_QTDLIB","N",TamSX3("C9_QTDLIB")
[1],TamSX3("C9_QTDLIB")[2])
nQtdLibSC9 := C9_QTDLIB
dbCloseArea()
dbSelectArea("SC5")
Else
#ENDIF
dbSelectArea("SC9")
dbSetOrder(1)
MsSeek(xFilial("SC9")+SC6->C6_NUM+SC6->C6_ITEM)
cQuery := ChangeQuery(cQuery)
dbUseArea(.T.,"TOPCONN",TcGenQry(,,cQuery),cQry,.T.,.T.)
Else
#ENDIF
cQry := "SC9"
dbSelectArea("SC9")
dbSetOrder(1)
MsSeek(xFilial("SC9")+SC6->C6_NUM+SC6->C6_ITEM)
#IFDEF TOP
EndIf
#ENDIF
dbSelectArea(cQry)
EndIf
Endif
SB2->(dbGoTo(nRecnoB2))
EndIf
nVlrDep := Max(SC6->C6_QTDVEN-SC6->C6_QTDEMP-SC6-
>C6_QTDENT,0)*SC6->C6_PRCVEN
If ( SF4->F4_DUPLIC=="S" .And. !SC5->C5_TIPO$'DB' )
dbSelectArea("SA1")
dbSetOrder(1)
MsSeek(xFilial("SA1")+SC6->C6_CLI+SC6->C6_LOJA)
RecLock("SA1")
nMCusto := If(SA1->A1_MOEDALC > 0, SA1->A1_MOEDALC,
Val(SuperGetMv("MV_MCUSTO")))
SA1->A1_SALPED -= xMoeda(nVlrDep, SC5->C5_MOEDA, nMCusto,
SC5->C5_EMISSAO)
MsUnLock()
EndIf
//�������������������������������������
��������������������������������Ŀ
//�Se eliminar o res�duo do item, elimina tamb�m a OS gerada
pelo mesmo.�
//�Somente se n�o forem vendidos todos os itens.
�
//�������������������������������������
����������������������������������
If SC6->C6_QTDENT == 0
If FindFunction("Lj7HasDtEM") .And. Lj7HasDtEM()
Lj7EliProdPed( SC6->C6_NUM, SC6->C6_PRODUTO )
EndIf
EndIf
RecLock("SC6")
SC6->C6_BLQ := "R"
MsUnLock()
lResiduo := .T.
EndIf
If ( lPv )
MaLiberOk({ SC5->C5_NUM } , .T. )
EndIf
//����������������������������������������
������������������Ŀ
//� Ponto de entrada do usuario apos a eliminacao do residuo.�
//����������������������������������������
��������������������
If ExistBlock('MT500APO')
ExecBlock('MT500APO',.F.,.F.,{lResiduo})
EndIf
EndIf
RestArea(aAreaSC6)
RestArea(aAreaSC5)
RestArea(aAreaSB2)
RestArea(aAreaSA1)
RestArea(aArea)
Return(lResiduo)