No artigo“JTL-Wawi – Resolver as vendas directas com os vendedores”, expliquei os requisitos para a avaliação das vendas dos vendedores e apresentei uma abordagem de solução. Posteriormente, no artigo “LibreOffice Base + JTL-Wawi – Ligação da base de dados JTL-Wawi” mostra como se ligar à base de dados utilizando a interface ODBC e no artigo “JTL-Wawi – Acesso seguro à base de dados SQL” mostra como a ligação é protegida de modo a que apenas os direitos de leitura estejam disponíveis para a avaliação. Agora vou começar a avaliação com o LibreOffice Calc. Mas antes de ler os dados para o Calc e de os avaliar com uma tabela dinâmica, é necessário incluir um passo intermédio.

O JTL-Wawi utiliza o servidor Microsoft SQL. Trata-se de um sistema de base de dados relacional. Para mim, isto significa que a informação está distribuída por várias tabelas na base de dados e está ligada entre si através das chamadas relações. Estas relações não são necessariamente assumidas pelo LibreOffice Base. Assim, preciso de criar uma consulta sobre as tabelas correspondentes da base de dados para poder avaliar os dados da consulta no LibreOffice Calc. Para o fazer, abro novamente o meu eazyBusiness.odb, clico em Queries (Consultas) em Database (Base de dados) à esquerda e depois em “Create query in design view…” (Criar consulta na vista de desenho).


Abre-se uma janela de desenho de consulta vazia e a janela “Adicionar tabela ou consulta”. Na janela “Adicionar tabela ou consulta”, selecciono agora as tabelas necessárias para a minha avaliação e, com um clique em adicionar, as tabelas são adicionadas à concepção da consulta. Seleccionei os seguintes quadros para a minha avaliação:

  • tOrderCornerData
  • ordem
  • trechnung
  • tkunde

Na metade superior da janela de concepção da consulta, tenho agora todas as tabelas de que necessito para a minha consulta. Aqui, organizei a tabela na janela de forma a que, no passo seguinte, possa definir as relações entre os campos correspondentes da tabela com o rato.


Uma relação é a relação entre dois campos. Se olharmos para a tabela tOrderCornerData e tOrder, vemos que o campo kBorder existe em ambas as tabelas. Nas tabelas, estes campos são fáceis de reconhecer porque normalmente têm um símbolo de chave à frente que significa chave primária (sem que eu entre em mais pormenores agora). O campo kBestellung em ambas as tabelas é utilizado para ligar os registos de modo a que possam ser exibidos posteriormente nos formulários e relatórios. Para criar a relação no LibreOffice Base, clico com o botão esquerdo do rato no campo kBestellung da tabela tBestellungEckDaten, mantenho o botão do rato premido e arrasto o rato para o campo kBestellung da tabela tbestellung e, em seguida, solto o botão esquerdo do rato. Vou repetir o processo para os campos:

  • Tabela tcustomer: kcustomer – tcustomer_kcustomer
  • Cálculo de tabela: tOrder_kOrder – kBOrder

Em seguida, a minha janela de apresentação tem o aspecto da imagem de ecrã abaixo.


Agora posso criar a minha consulta na metade inferior da janela do designer de consultas. A coluna 1 da consulta deve conter o ano da factura. Posso encontrar a data de criação da factura na tabela de facturas. Infelizmente, no entanto, apenas como uma data no formato dia mês ano. É por isso que tenho de extrair o ano da data. Faço-o com a função SQL YEAR(date). Assim, na linha Campo, introduzo a função

YEAR(trechnung.dErstellt)

e na linha Alias introduzo o valor Year. Isto dá-me o ano. Faço o mesmo na segunda coluna, excepto que utilizo aqui a função MONTH(date) e guardo-a como um mês de alias.

Ultrapassei o primeiro obstáculo com ele. Agora posso filtrar convenientemente os dados por ano e mês mais tarde na tabela dinâmica. Depois, basta arrastar o campo cInvoiceNo da tabela trechnung e os campos cOrigin e cCompany da tabela tCustomer para o meu projecto de consulta. Ligo os campos cFirstName e cName da tabela tCustomer introduzindo simplesmente o seguinte na coluna seguinte

tKunde.cVorname + „ „ + tKunde.cName

e introduza o valor Nome como alias. Agora faltam duas colunas para a minha avaliação. Uma vez que o valor da encomenda deduzido das notas de crédito e dos vales e a comissão calculada a partir deste valor. Por isso, introduzo a seguinte fórmula na coluna seguinte da linha Campo:

tBestellungEckDaten.fWert – tBestellungEckDaten.fGutschrift – tBestellungEckdaten.fGutschein

Introduzo um valor na linha Alias. Calculo a comissão do representante comercial da mesma forma. Neste caso, basta pegar na fórmula da coluna Valor, colocá-la entre parênteses e multiplicá-la por 0,03 para obter uma comissão de vendas de 3%. A coluna seguinte contém assim a seguinte fórmula na linha Campo:

(tBestellungEckDaten.fWert – tBestellungEckDaten.fGutschrift – tBestellungEckdaten.fGutschein) * 0.03

Note-se que na fórmula está escrito um ponto em vez da vírgula! Na linha Alias, introduzo o valor Commission.

O conjunto tem o seguinte aspecto:


Se quiser facilitar as coisas, mude para a vista SQL em View – Switch Design View On/Off e copie o seguinte código para a janela de texto:

SELECT YEAR( trechnung . dErstellt ) AS Jahr , MONTH( trechnung . dErstellt ) AS Monat , trechnung . cRechnungsNr AS ReNr , tkunde . cHerkunft AS Herkunft , tkunde . cFirma AS Firma , cVorname + + cName AS Name , tBestellungEckDaten . fwert - tBestellungEckdaten . fGutschrift - tBestellungEckdaten . fGutschein AS Wert , ( tBestellungEckDaten . fwert - tBestellungEckdaten . fGutschrift - tBestellungEckdaten . fGutschein ) * 0.003 AS Provision FROM eazybusiness . dbo . tbestellung AS tbestellung , eazybusiness . dbo . trechnung AS trechnung , eazybusiness . dbo . tkunde AS tkunde , eazybusiness . dbo . tBestellungEckDaten AS tBestellungEckDaten WHERE tbestellung . kBestellung = trechnung . tBestellung_kBestellung AND tbestellung . tKunde_kKunde = tkunde . kKunde AND tbestellung . kBestellung = tBestellungEckDaten . kBestellung

Em seguida, volte a activar a vista de concepção e guarde a consulta como qryUmsaetze. Agora a base de dados pode ser fechada novamente.

O último passo é agora criar uma tabela dinâmica para a avaliação num livro de trabalho vazio do LibreOffice Calc. Abro o Calc e selecciono Dados → Tabela dinâmica → Criar… no menu.

Na janela Seleccionar fonte, selecciono“Fonte de dados registada no LibreOffice” e clico em OK.
Selecciono o eazyBusiness como base de dados, restrinjo o tipo de consulta e selecciono a minha fonte de dados qryUmsaetze.
Agora posso arrastar os campos dos Campos disponíveis para as áreas correctas da minha tabela dinâmica. Arrasto os campos de ano por página e os campos de origem por coluna. Arrasto os campos mês, empresa e nome por linha. O valor e a comissão vão para os campos de dados e eu deixo a definição Total na frente. Removo os dados clicando na entrada e, em seguida, na tecla Delete do teclado. Agora já posso clicar em OK para criar a minha tabela dinâmica.


Era isso. Agora posso guardar esta tabela. Já não tenho de me preocupar com os dados. Uma simples actualização em Dados → Tabela dinâmica → Actualizar é suficiente para actualizar os dados da tabela. Assim, nem sequer é necessário introduzir a palavra-passe.

  • 0/5
  • 0 ratings
0 ratingsX
Very bad! Bad Hmmm Oke Good!
0% 0% 0% 0% 0%

Haben Sie Fragen oder brauchen ein individuelles Angebot? Zögern Sie nicht, uns zu kontaktieren.


    O eBakery necessita das informações de contacto que nos fornece para o contactar sobre os nossos produtos e serviços. Pode anular a subscrição destas notificações em qualquer altura. Para obter informações sobre o cancelamento da subscrição, bem como sobre as nossas práticas de privacidade e o nosso empenho em proteger a sua privacidade, consulte a nossa Política de Privacidade.*.

    Related Posts

    Leave a Comment

    Hat dir der Artikel gefallen?

    Dann melde dich doch zu unserem Newsletter an!

    Neben unseren Blog Themen informieren wir dich darin regelmäßig zu neuen Features und Tutorials