Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

MTA650POK - Valida Itens do Pedido de Vendas

Linha de Produto:

Protheus

Segmento:

Manufatura

Módulo:

SIGAPCP - Planejamento e Controle da Produção

Parâmetro(s):


Nome
Tipo
Descrição
Default
Obrigatório Referência

cAlias
Caracter
Alias da tabela posicionada para geração da OP por PV.







cMarca
Caracter
Marca define quais foram os registros selecionados na MarkBrowse






Idiomas:

Espanhol, Inglês

País(es):

Todos

Banco(s) de Dados:

Todos

Sistema(s) Operacional(is):

Todos

Ponto de Entrada

Descrição:

Ponto de Entrada que valida os itens de pedido de vendas selecionados para geração de Ordem de Produção por Pedido de Vendas.

Dica
titleExemplo:

Permite verificar se o item selecionado atingiu a cota de R$1000,00, validando-o para que ele seja considerado (ou não) na geração de OP por vendas.

Localização:Function A650ProcOP() - Função responsável pela geração das Ordens de Produção a partir dos pedidos de venda selecionados.
Eventos:

Antes do processamento que gera a OP por venda para o registro posicionado.

Programa Fonte:MATA650.PRX

Sintaxe:

MTA650POK - Valida Itens do Pedido de Vendas ( [ cAlias ], [ cMarca ] ) --> lRet

Retorno:

lRet

    (logico)
  • Retorno lógico que define se gera a OP por venda, sendo:
    T - Gera as OPs e PVs
    F - Não gera
Variáveis:
Nome
Tipo
Escopo
Pode Alterar
Descrição


Array of Record
Global
Não


Observações:

A tabela SC6 - Itens do Pedido de Venda - já está filtrada conforme apresentado na MarkBrowse. É necessário efetuar um laço (loop) na tabela SC6, verificando, no campo C6_OK, se cada um dos registros está com o conteúdo igual à Marca. Dessa forma, é possível identificar quais foram os registros marcados e validá-los conforme a necessidade.

Bloco de código
languagecpp
titleExemplo:
linenumberstrue
#INCLUDE 'TOTVS.CH'
#INCLUDE 'PROTHEUS.CH'
#INCLUDE 'PARMTYPE.CH'
#INCLUDE "RWMAKE.CH"

User Function MTA650POK()
Local cAlias := PARAMIXB[1]
Local cMarca := PARAMIXB[2]
Local aArea  := (cAlias)->(GetArea()) //Guarda a area corrente

MsgInfo('Este Ponto de Entrada será executado antes da geração das OPs e PVs !!!')

dbSelectArea(cAlias)
(cAlias)->(dbSetOrder(1)) 
If (cAlias)->(dbSeek(xFilial(cAlias)))
    While !Eof() .And. SC6->C6_FILIAL == xFilial(cAlias)
        If SC6->C6_OK = cMarca
            MsgInfo('O Item '+SC6->C6_ITEM+' do pedido de Vendas ' +SC6->C6_NUM+ ' foi marcado para gerar Ordem de Produção!!!')
        EndIf
        (cAlias)->(dbSkip())
    EndDo
EndIf
(cAlias)->(dbCloseArea())

RestArea(aArea) //Restaura a area guardada
Return( .T. )