Libreoffice Base: Como uma combobox vinculada a uma tabela relacionada vinculada a ou no controle de tabela de formulário

3

Eu não consegui resumir o que eu realmente quero no título. Mas aqui vou tentar explicar do que se trata. Eu mudei do MS Access para o LibreOffice Base porque é open source, livre e independente de plataforma. Eu realmente gosto do Libreoffice e, portanto, tento resolver meus problemas lá. Não consegui encontrar nada relacionado nas documentações e também não consegui encontrar exatamente a mesma pergunta (houve perguntas semelhantes, mas não funcionou para mim).

Parte do meu banco de dados consiste em 3 tabelas. A tabela Fatura está vinculada um a muitos ao Serviço (essa é uma linha no produto de remarcação da fatura envolvida e na quantidade). (Invoice.ID (1) - > Serviço.InvoiceID (n)) (n) = muitos, (1) = um

Por outro lado, tenho outra tabela para produtos que é como um catálogo de produtos vinculados um a muitos à tabela Serviço . Produto .ID (1) - > Service.ProductID (n) Também criei um controle de tabela vinculado a uma consulta, que une as tabelas Serviço e Produto. Então eu tenho as seguintes colunas: Service.ID, Invoice.ID, Product.ID, Service.Quantity, Product.Name, Product.Description, Product.Price

Eu quero colocar uma coluna com combobox nesta tabela que está vinculada à tabela Product. Assim, o usuário vê o nome do produto e seleciona o produto correto, mas o Service.ProductID será alterado para Product.ID do produto selecionado. Acho que isso é factível, mas parece que não consigo encontrar nenhum jeito.

Qualquer ajuda seria apreciada!

PS. Eu também estou programando e também posso escrever a própria aplicação Java, mas suponho que isso seja desnecessário para uma aplicação deste tipo.

Eu encontrei a resposta nos fóruns do OpenOffice .

Resumindo: o Combobox é a escolha errada aqui, pois é como uma caixa de texto de preenchimento automático. Listbox é usado em vez disso (que também se parece com uma caixa de combinação no sentido clássico). Simplesmente escreva uma consulta sql para obter o nome (campo visível) para o índice 0 e ID para o índice 1 (campo de dados). E selecione o campo de dados na tabela a ser alterada. É isso!

    
por Genom 12.01.2014 / 17:50

0 respostas