Avalados por :

Como exibir lista de preços de produtos no SAP BO 8.82 com uma consulta personalizada.

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 3 Vistas
0
Cargando...

Olá. Sou novo no SAP BO 8.82 e gostaria de fazer uma consulta na qual preciso mostrar a lista de preços.

Por exemplo, tenho esta Query que mostra a lista de preços que desejo:

SELECT T0.[ListName], T0.[BASE_NUM], T0.[Factor], T0.[GroupCode] FROM OPLN T0 WHERE T0.[GroupCode] = 2

Esta query me mostra a lista de preços 05, mas o que realmente desejo é acessar essa lista de preços 05 com uma query que me mostre todos os produtos com seus respectivos preços, por exemplo:

Número do Artigo
Descrição do Artigo
Preço Base
Preço Unitário
PROD 1 ARTIGO A 1 4
PROD 2 ARTIGO B 2 5
PROD 3 ARTIGO C 3 6
PROD 4 ARTIGO D 4 7

Se puderem me indicar como posso fazer isso ou quais campos utilizar na query, ficaria muito grato. Estava tentando obter as colunas com $[$1.1.0] ou talvez esteja fazendo errado.

Agradeço antecipadamente pela ajuda fornecida.

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Obrigado Royer, era exatamente o que eu estava procurando. Funciona maravilhosamente!

Saudações

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Entendo, que bom que deu certo então.

with(nolock) serve para evitar bloqueios no SQL. Algumas consultas são muito extensas e o SQL demora, especialmente com bases de dados muito grandes.

O benefício desta instrução é que evita que o motor de banco de dados emita bloqueios contra as tabelas em suas consultas; isso aumenta a concorrência e o desempenho porque o motor de banco de dados não precisa manter os bloqueios compartilhados envolvidos.

Faça o teste no SQL com uma consulta extensa e adicione isso em cada FROM após o nome da tabela para ver o desempenho em milissegundos de resposta a uma consulta normal.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Roger,

Muito obrigado pela resposta! Em sua consulta, você está mostrando as listas de preços de 1 a 7, mas eu precisava mostrar apenas a lista 5.

O que eu estava tentando fazer era lidar apenas com a tabela OPLN, mas depois de revisar e pesquisar, percebi que era melhor usar as tabelas OITM e ITM1, relacioná-las e extrair os campos que preciso, como o código do artigo (ItemCode), nome do artigo (ItemName), lista de preços (PriceList) e também obter o armazém ao qual pertence esse produto usando o campo WhsCode da tabela OITW.

A consulta ficou assim:

SELECT T0.[ItemCode], T0.[ItemName], T2.[WhsCode], T1.PriceList, T0.[OnHand], T1.[Price] FROM OITM T0  INNER JOIN ITM1 T1 ON T0.ItemCode = T1.ItemCode INNER JOIN OITW T2 ON T0.ItemCode = T2.ItemCode WHERE T1.[PriceList] =5 AND T0.[InvntItem] ='Y' and T0.OnHand <> 0 and T0.U_ClaseProducto = 0004 order by T0.ItemCode

Qualquer sugestão para melhorar a consulta será bem-vinda! .

Mais uma vez, muito obrigado Roger pela resposta!

Um abraço!

PS: Você poderia me dizer para que exatamente serve o with(nolock)? Encontrei algo na internet, mas ainda não está claro para mim XD ou talvez me indicar algum site. Obrigado!

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Você prefere assim?

SELECT itemcode, itemname

,(SELECT PRICE FROM ITM1 WITH(NOLOCK) WHERE PriceList=1 AND ItemCode=OITM.ItemCode)

,(SELECT PRICE FROM ITM1 WITH(NOLOCK) WHERE PriceList=2 AND ItemCode=OITM.ItemCode)

,(SELECT PRICE FROM ITM1 WITH(NOLOCK) WHERE PriceList=3 AND ItemCode=OITM.ItemCode)

,(SELECT PRICE FROM ITM1 WITH(NOLOCK) WHERE PriceList=4 AND ItemCode=OITM.ItemCode)

,(SELECT PRICE FROM ITM1 WITH(NOLOCK) WHERE PriceList=5 AND ItemCode=OITM.ItemCode)

,(SELECT PRICE FROM ITM1 WITH(NOLOCK) WHERE PriceList=6 AND ItemCode=OITM.ItemCode)

,(SELECT PRICE FROM ITM1 WITH(NOLOCK) WHERE PriceList=7 AND ItemCode=OITM.ItemCode)

FROM OITM with(nolock)

Você prefere que eu coloque em algum formato de pesquisa específico? Não entendi bem a pergunta talvez...

Espero que seja útil.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?