Ir para conteúdo

POWERED BY:

janir.matheus

Members
  • Total de itens

    13
  • Registro em

  • Última visita

Tudo que janir.matheus postou

  1. janir.matheus

    Duvida com POO

    Bom dia, Preciso de ajuda ajuda para resolver o problema de SIGSEGV, basicamente tennho um zconection dentro de uma classe e recebo erro quando tento acessá-lo. Segue um trecho da classe: unit unt_classconexao; {$mode objfpc}{$H+} interface uses Classes, SysUtils, ZConnection, ZDataset; type { tConexao } tConexao = class private public vConector : TZConnection; function Listar_Usuarios:TZReadOnlyQuery; procedure Conectar_Banco; end; implementation { tConexao } function tConexao.Listar_Usuarios: TZReadOnlyQuery; var zrquery : TZReadOnlyQuery; begin Conectar_Banco; try zrquery := TZReadOnlyQuery.Create(nil); zrquery.Connection := vConector; zrquery.SQL.Clear; zrquery.SQL.Text := 'SELECT * from tbl_profissionais'; zrquery.Open; Listar_Usuarios := zrquery; finally end; end; procedure tConexao.Conectar_Banco; begin //vConector := TZConnection.Create(nil); vConector.HostName := 'localhost'; vConector.Port := 3306; vConector.Database := 'Caps'; vConector.Protocol := 'mysql-5'; vConector.User := 'root'; vConector.Password := ''; vConector.Connected := true; end; end. Após isso tento fazer uso dessa classe para popular um DBGrid: unit unt_frmprincipal; {$mode objfpc}{$H+} interface uses Classes, SysUtils, DB, Forms, Controls, Graphics, Dialogs, Menus, DBGrids, ZConnection, unt_classconexao; type { Tfrm_principal } Tfrm_principal = class(TForm) DataSource1: TDataSource; DBGrid1: TDBGrid; MainMenu_frmPrincipal: TMainMenu; MenuItem_AplicativoSair: TMenuItem; N1: TMenuItem; MenuItem_AplicativoLogin: TMenuItem; MenuItem_Aplicativo: TMenuItem; procedure MenuItem_AplicativoLoginClick(Sender: TObject); private public vConexao : tConexao; end; var frm_principal: Tfrm_principal; implementation {$R *.lfm} { Tfrm_principal } procedure Tfrm_principal.MenuItem_AplicativoLoginClick(Sender: TObject); begin //vConexao := tConexao.Create; DataSource1.DataSet := vConexao.Listar_Usuarios; end; end. A mensagem de erro que recebo dá a entender que o problema ocorre logo que o zconnection começa a ser configurado, como vocês podem ver pelos trechos comentados eu tentei instanciar o componente também sem sucesso. Não tenho experiencia com POO e tenho certeza que estou cometendo um erro bobo, então peço uma explicação sobre como resolver isso. Agradeço de antemão a quem puder me ajudar. PS. Estou usando o Lazarus.
  2. janir.matheus

    Dúvida com uma query

    Boa noite, o resultado que obtenho esta no Screenshot_2. Gostaria de chamar a atenção para o Screenshot_3, nele é possível notar que o produto 1 pertence a duas categorias e entretanto na saída da query ele aparece apenas uma vez. Seria interessante que o produto se repetisse para cada categoria.
  3. janir.matheus

    Dúvida com uma query

    Boa tarde, peço ajuda dos membros desse fórum pois confesso estar completamente perdido. Tomando como base o diagrama (em anexo), preciso de uma query que retorne as empresas, seus produtos e as categorias de cada produto, sendo que cada produto pode pertencer a uma ou mais categorias. select tbl_produtos.Empresa, tbl_empresas.Nome, tbl_catprod.Categoria, tbl_classproduto.Classe, tbl_produtos.Id, tbl_produtos.Produto from tbl_produtos inner join tbl_empresas on tbl_produtos.Empresa = tbl_empresas.Id left join tbl_catprod on tbl_produtos.Id = tbl_catprod.Categoria left join tbl_classproduto on tbl_catprod.Categoria = tbl_classproduto.Id; Tentei a consulta mostrada acima mas o resultado não foi o que eu esperava. Agradeço antecipadamente pela ajuda.
  4. janir.matheus

    Dúvida com uma query

    Obrigado pela ajuda Motta, mas o resultado ainda não é o pretendido por mim. Vou tentar explicar melhor: Cada empresa terá seus próprios produtos, cada um dos produtos poderá (ou não) pertencer a uma ou mais categorias (tbl_catprod), o resultado que busco é supondo o cliente A os seus produtos sejam listados e sua respectivas categorias, caso um produto pertença a mais de uma categoria ele apareça em cada uma delas. Exemplo: CLIENTE A | PRODUTO 01 | CATEGORIA A CLIENTE A | PRODUTO 01 | CATEGORIA B CLIENTE A | PRODUTO 02 | CATEGORIA C CLIENTE A | PRODUTO 03 | CATEGORIA A Deu pra entender agora? Confesso que não sei por onde começar, conto com sua ajuda.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.