Histórico da Página
...
Produto: | Backoffice TOTVS |
---|---|
Linha de Produto: | Linha Protheus |
Segmento: | Backoffice |
Módulo: | Gestão de Contratos |
Função: | CNTA200CNTA300 - Contratos |
Ponto de Entrada: | CN200SPC |
...
Descrição: | Permite customizar a marcação da Solicitação de Compras / Pedido de Compras | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Eventos: | Executado no momento de salvar ou alterar o cadastro dos Tipos de Cauçãoselecionar/marcar o item da solicitação de Compra na rotina "Importar Solicitações de Compra" | |||||||||||||||
Fonte do Programa: | CNTA200.PRW | |||||||||||||||
Função: | CN200AddMark | |||||||||||||||
Parâmetros: |
| |||||||||||||||
Retorno: |
|
Situação: No momento de criar o contrato do tipo 1 (Compra), ao selecionar/marcar o item da solicitação de compras (SC1), a rotina importa todos os itens dessa solicitação. Com esse ponto de entrada podemos customizar impedindo que a rotina selecione automaticamente todos os itens, carregando apenas um item da solicitação. Nesse exemplo, selecionarei uma solicitação com mais de 1 item e importarei sempre o último item.
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
#INCLUDE "PROTHEUS.CH"
/*/{Protheus.doc} CN200SPC
Permite customizar as marcações no momento de importar os itens da Solicitação de Compras ou Pedido de Compras
@type function
@version
@since 06/03/2024
@return Array com as marcações customizadas
/*/
User Function CN200SPC()
Local aArea := GetArea()
Local aRetorno := {}
Local cMarca := paramixb[1]
Local cValida := paramixb[3]
Local cQuery := ""
Local cAlias := GetNextAlias()
//QUERY PARA SELECIONAR O ÚLTIMO ITEM DA SOLICITAÇÃO SELECIONADA NA IMPORTAÇÃO
cQuery := " SELECT SC1.C1_FILIAL, SC1.C1_NUM, SC1.C1_ITEM, SC1.R_E_C_N_O_ "
cQuery += " FROM " + RetSqlName("SC1") + " SC1 "
cQuery += " WHERE SC1.C1_FILIAL = '" + xFilial("SC1") + "' "
cQuery += " AND SC1.C1_NUM = '" + SC1->C1_NUM + "' "
cQuery += " AND SC1.C1_ITEM = ( "
cQuery += " SELECT MAX(C1_ITEM) "
cQuery += " FROM " + RetSqlName("SC1") + " "
cQuery += " WHERE C1_FILIAL = '" + xFilial("SC1") + "' "
cQuery += " AND C1_NUM = '" + SC1->C1_NUM + "' "
cQuery += " AND D_E_L_E_T_ = '' "
cQuery += " ) "
cQuery += " AND SC1.D_E_L_E_T_ = ' ' "
cQuery := ChangeQuery(cQuery)
dbUseArea(.T., 'TOPCONN', TCGENQRY(,,cQuery),cAlias, .F., .T.)
dbSelectArea(cAlias)
If (cAlias)->(!EOF())
SC1->(DbGoTo((cAlias)->R_E_C_N_O_))
RecLock("SC1",.F.)
&(cValida) := cMarca
SC1->(MsUnlock())
aAdd(aRetorno,(cAlias)->R_E_C_N_O_)
EndIf
(cAlias)->(DbCloseArea())
RestArea(aArea)
Return(aRetorno) |
03. ASSUNTOS RELACIONADOS
- Não há