Versões: | Microsiga Protheus 11 e 12 |
Compatível Países: | Todos |
Sistemas Operacionais: | Todos |
Compatível às Bases de Dados: | Todos |
Nível de Acesso: | Nível 1 (Acesso Clientes) |
Idiomas: | Espanhol , Inglês |
LOCALIZAÇÃO : Function UpdProMod - Função utilizada para Calcular as despesas do CC no mês especificado.
EM QUE PONTO : O ponto e chamado no momento que o sistema filtra as contas contábeis para o calculo de valor nos centros de custo que resultarão no valor da MOD.
MATA330MOD.PRX
M330FCC ( < PARAMIXB> ) --> lRet ou cRet
Nome | Tipo | Descrição | Default | Obrigatório | Referência | ||||||||||||
PARAMIXB[1] | Vetor | Recebe como parâmetro qual o alias do arquivo em que o sistema esta posicionado no momento: CT1, CT7 (v. 11) CT1 e CQ3 (v.12) | X | ||||||||||||||
PARAMIXB[2} | Vetor | Recebe como parâmetro o código do produto posicionado | X |
- Recebendo no paramixb[1] = 'CT1' o retorno deverá ser logico :
Se retornar .F. a conta será inibida
- Recebendo no paramixb[1] = 'CQ3' o retorno deverá ser um filtro de complemento da query
Exemplo pratico retorno logico :
User Function M330FCC()
Local cTabela := ParamIXB[1] //-- Recebe como parâmetro qual o alias do arquivo em que o sistema esta posicionado no momento: CT1, CT7 (v. 11) CT1 e CQ3 (v.12)
Local cProduto:= ParamIXB[2] //-- Código do produto posicionado
Local lRet := .F. //-- (.T.) - Processa registro da tabela,(.F.) -- Não processa registro
//-- Validações adicionais do Cliente
If cProduto = 'TESTE'
lret := .T.
EndIf
Return lRet
Exemplo pratico retorno caracter:
USER FUNCTION M330FCC(calis,cSB1Alias)
LOCAL CGRPCTA := POSICIONE("SB1",1,XFILIAL("SB1") + PARAMIXB[2],"B1_GCCUSTO")
LOCAL CCCUSTO := POSICIONE("SB1",1,XFILIAL("SB1") + PARAMIXB[2],"B1_CCCUSTO")
LOCAL CRET := Nil
DEFAULT calis := ""
DEFAULT cSB1Alias := ""
IF ALLTRIM(PARAMIXB[1]) $ "CT7|CQ3" .AND. !EMPTY(ALLTRIM(CGRPCTA))
CRET := "CQ3_CCUSTO = '" + CCCUSTO + "' AND CQ3_CONTA IN (SELECT CT1_CONTA FROM " + RETSQLNAME("CT1") + " CT1 WHERE "
CRET += " CT1_FILIAL = '" + XFILIAL("CT1") + "' AND CT1_GRUPO = '" + CGRPCTA + "' AND CT1.D_E_L_E_T_ = '')"
ENDIF
RETURN(CRET)