Árvore de páginas

Versões comparadas

Chave

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

...

Bloco de código
titleConfiguração
{
    "url":"https://...preco...app/api/retaguarda/precos",
    "codigotipo": "13",
    "descricaotipo": "Preco",
	"qtdEnvio": 100
}
github.com/totvs/protheus-smart-hub-layouts/blob/bb8924fafdf58498b0708af5d368a53f70c19e47/pdvsync/configuracao/envia_preco.json 
Informações
titleImportante

A tag "qtdEnvio" é utilizada para configurar a quantidade de registros que serão enviados para o PDV em uma única requisição.

Exemplo - Caso no processo de Envio de Preço esteja configurado:

  • "qtdEnvio": 1 → Será enviado para o PDV 1 preço por requisição.
  • "qtdEnvio": 100 → Será enviado para o PDV uma lista com 100 preços por requisição.

...

Preços - De \ Por
Bloco de código
titleLayout Envio
{
	"dataHoraVigenciaInicial": "&IIF( !SuperGetMv('MV_LJCNVDA', , .F.), FwTimeStamp(3), FwTimeStamp(3,SToD(Self:oPublica['DA1_DATVIG']),Self:oPublica['DA0'][1]['DA0_HORADE']) )",
	"dataHoraVigenciaFinal": "&IIF( !SuperGetMv('MV_LJCNVDA', , .F.), '9999-01-31T23:59', IIF(!Empty(Self:oPublica['DA0'][1]['DA0_DATATE']),FwTimeStamp(3,SToD(Self:oPublica['DA0'][1]['DA0_DATATE']),Self:oPublica['DA0'][1]['DA0_HORATE']),'9999-01-31T23:59') )",
	"codigoProduto": "&IIF( !SuperGetMv('MV_LJCNVDA', , .F.), Self:oPublica['B0_COD'], Self:oPublica['DA1_CODPRO'] )",
	"idRetaguardaProduto": "&IIF( !SuperGetMv('MV_LJCNVDA', , .F.), Self:oPublica['B0_COD'], Self:oPublica['DA1_CODPRO'] )",
	"valor": "&StrTran( cValToChar( IIF( Posicione('SB1', 1, xFilial('SB1') + IIF( !SuperGetMv('MV_LJCNVDA', , .F.), Self:oPublica['B0_COD'], Self:oPublica['DA1_CODPRO'] ), 'B1_PRV1') > 0, Posicione('SB1', 1, xFilial('SB1') + IIF( !SuperGetMv('MV_LJCNVDA', , .F.), Self:oPublica['B0_COD'], Self:oPublica['DA1_CODPRO'] ), 'B1_PRV1'), IIF( !SuperGetMv('MV_LJCNVDA', , .F.), Self:oPublica['B0_PRV1'], Self:oPublica['DA1_PRCVEN'] ) ) ), '.', ',' )",
	"precoPromocional": "&StrTran( cValToChar( IIF( !SuperGetMv('MV_LJCNVDA', , .F.), Self:oPublica['B0_PRV1'], Self:oPublica['DA1_PRCVEN'] ) ), '.', ',' )0",
	"situacao": "&IIF( !SuperGetMv('MV_LJCNVDA', , .F.), IIF(Empty(Self:oPublica['B0_PRV1']) .Or. Self:cEvento <> '1', 0, 1), IIF(Self:cEvento == '1' .AND. Self:oPublica['DA0'][1]['DA0_ATIVO'] == '1' .AND. Self:oPublica['DA1_ATIVO'] == '1', 1, 0) )",
	"sincronizadoEtiquetaEletronica": 0,
	"idInquilino": "&self:oConfAssin['inquilino']",
	"idRetaguarda": "&IIF( !SuperGetMv('MV_LJCNVDA', , .F.), '1' + Self:oPublica['B0_COD'], Self:oPublica['DA1_CODTAB'] + Self:oPublica['DA1_CODPRO'] + Self:oPublica['DA1_ITEM'] )",
	"dataAtualizacao": "&FwTimeStamp(3)",
	"dataCadastro": "&FwTimeStamp(3)",
	"idProprietario": "&LjRetComp()",
	"loteOrigem": "&Self:cLote",
	"configPSH": {
		"Version": "3.2"
	}
}
Aviso
title
{ "dataHoraVigenciaInicial": "&IIF( !SuperGetMv('MV_LJCNVDA', , .F.), FwTimeStamp(3), FwTimeStamp(3,SToD(Self:oPublica['DA1_DATVIG']),Self:oPublica['DA0'][1]['DA0_HORADE']) )", "dataHoraVigenciaFinal": "&IIF( !SuperGetMv('MV_LJCNVDA', , .F.), '9999-01-31T23:59', IIF(!Empty(Self:oPublica['DA0'][1]['DA0_DATATE']),FwTimeStamp(3,SToD(Self:oPublica['DA0'][1]['DA0_DATATE']),Self:oPublica['DA0'][1]['DA0_HORATE']),'9999-01-31T23:59') )", "codigoProduto": "&IIF( !SuperGetMv('MV_LJCNVDA', , .F.), Self:oPublica['B0_COD'], Self:oPublica['DA1_CODPRO'] )", "idRetaguardaProduto": "&IIF( !SuperGetMv('MV_LJCNVDA', , .F.), Self:oPublica['B0_COD'], Self:oPublica['DA1_CODPRO'] )", "valor": "&StrTran( cValToChar( IIF( Posicione('SB1', 1, xFilial('SB1') + IIF( !SuperGetMv('MV_LJCNVDA', , .F.), Self:oPublica['B0_COD'], Self:oPublica['DA1_CODPRO'] ), 'B1_PRV1') > 0, Posicione('SB1', 1, xFilial('SB1') + IIF( !SuperGetMv('MV_LJCNVDA', , .F.), Self:oPublica['B0_COD'], Self:oPublica['DA1_CODPRO'] ), 'B1_PRV1'), IIF( !SuperGetMv('MV_LJCNVDA', , .F.), Self:oPublica['B0_PRV1'], Self:oPublica['DA1_PRCVEN'] ) ) ), '.', ',' )", "precoPromocional": "&StrTran( cValToChar( IIF(

do Preço Promocional, é necessesário realizar uma alteração em seu Layout de envio do processo PRECO, para que a funcionalidade funcione corretamente. Subistitua o conteudo da tag precoPromocional como mostra o exemplo abaixo:

De: "precoPromocional": "0",

Para: "precoPromocional": "&StrTran( cValToChar( IIF( !SuperGetMv('MV_LJCNVDA',

,

.F.),

Self:oPublica['B0_PRV1'],

Self:oPublica['DA1_PRCVEN

'] ) ), '.', ',' )", "situacao": "&IIF( !SuperGetMv('MV_LJCNVDA', , .F.), IIF(Empty(Self:oPublica['B0_PRV1

'] )

.Or. Self:cEvento <> '1', 0, 1

),

IIF(Self:cEvento ==

'

1'

.

AND. Self:oPublica['DA0'][1]['DA0_ATIVO'] == '1' .AND. Self:oPublica['DA1_ATIVO'] == '1', 1, 0) )", "sincronizadoEtiquetaEletronica": 0, "idInquilino": "&self:oConfAssin['inquilino']", "idRetaguarda": "&IIF( !SuperGetMv('MV_LJCNVDA

'

, , .F.)

,

'1' + Self:oPublica['B0_COD

'

]

,

Self:oPublica['DA1_CODTAB'] + Self:oPublica['DA1_CODPRO

'

] + Self:oPublica['DA1_ITEM']

)",

"dataAtualizacao": "&FwTimeStamp(3)", "dataCadastro": "&FwTimeStamp(3)", "idProprietario": "&LjRetComp()", "loteOrigem": "&Self:cLote", "configPSH": { "Version": "3.2" } }

Para utilização no PDV Omni da funcionalidade de preços De - Por, utilize as tags valor (referente o campo "De" no PDV OMNI) e precoPromocional (referente o campo "Por" no PDV OMNI).

A tag valor ("De") será definida pelo cadastro de produto campo B1_PRV1, já o precoPromocional ("Por") pelo campo B0_PRV1 ou DA1_PRCVEN. Dependendo da utilização do parâmetro MV_LJCNVDA.

Obs: A regra acima é uma configuração padrão sugerida, cada cliente pode definir quais campos deseja utilizar. Caso possua campo customizado para definição desses valores, basta alterar o layout de envio.

Dica
titlePreço Promocional

Como funciona o Preço Promocional no PDV OMNI?

No PDV OMNI o Preço Promocional é composto da forma, De - Por, exemplo: De 10,00R$ Por 5,00R$.


E como integramos esses dados?

Se você utiliza o cenário de Vendas MV_LJCNVDA = .T., é necessario que no cadastro do Produto preencha o camp B1_PRV1 com um valor que será considerado como De. Em seguida na tabela de Preços preencha o campo DA1_PRCVEN do produto com um valor que será considerado como Por.


Caso você não utilize o cenário de Vendas MV_LJCNVDA = .F., é necessario que no cadastro do Produto preencha o camp B1_PRV1 com um valor que será considerado como De. Em seguida na grid de preço do Produto, tabela SB0 preencha o campo B0_PRV1 com um valor que será considerado como Por.


Prontinho agora Agora que você sabe das regras utilize o Layout abaixo, pois o Layout mencionado acima não contempla a funcionalidade de Preço Promocional.

Expandir
titleVer Layout de Preço Promocional.
Bloco de código
titleLayout Envio



Layout Publicação: Não há.

...