Bonjour,
J'aimerais pouvoir retourner des infos qui sont stockés dans 2 tables ET aussi deux Datamodules different.
Je travaille sous Oracle avec la version delphi6.

Tout d'abord j'execute ma requete sur mon premier datamodule, je l'ouvre, et la je voudrais garder en memoire mes données recu afin que lorsque ma deuxieme requete sur mon deuxieme datamodule est ouvert, je puisse retourner les 2 "Groupes" de données.

Faut il travailler avec un tableau ???

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
 
  MDIChild.Query_Produits.close;
         MDIChild.Query_Produits.DatabaseName := 'STOCKEXT';
         MDIChild.DataSource_Produits.OnDataChange := nil;
 
  if UnitVerificationMaia.VerificationDroitsModuleApp('CONTROL_GESTION') then
    MDIChild.Query_Produits.SQL.Add('SELECT DISTINCT PRODUITS.*,(QTE_STOCK * PRIX_UNITAIRE)AS TOTAL_PRIX FROM PRODUITS,PRODUITS_HISTORIQUE')
  else
    MDIChild.Query_Produits.SQL.Add('SELECT DISTINCT PRODUITS.* FROM PRODUITS,PRODUITS_HISTORIQUE');
 
  MDIChild.Query_Produits.SQL.Add('WHERE PRODUITS.ID_LIGNE = PRODUITS_HISTORIQUE.ID_LIGNE ');
 
 
  if ComboBox_Secteur.Text <> '' then
  MDIChild.Query_Produits.SQL.Add('AND SECTEUR = '+QUotedSTr(ComboBox_Secteur.Text));
 
  MDIChild.Query_Produits.SQL.Add('ORDER BY DESIGNATION');
 
   MDIChild.Query_Produits.Open;
   nombre_ligne :=   MDIChild.Query_Produits.recordCount;
 
 
  //deuxieme datamodule
 
  MDIChild.Query_Produits.close;
  MDIChild.Query_Produits.DatabaseName := 'V6';
  MDIChild.DataSource_Produits.OnDataChange := nil;
 
  MDIChild.Query_Produits.SQL.Clear;
  if UnitVerificationMaia.VerificationDroitsModuleApp('CONTROL_GESTION') then
  begin
  MDIChild.Query_Produits.SQL.Add('select RACINE_PDT||FINIT_PDT as CODE_PRODUIT,'''' as NUM_COMMANDE');
  MDIChild.Query_Produits.SQL.Add(',DESIGN_1||Design_2 as DESIGNATION,'''' as DERNIER_MVT');
  MDIChild.Query_Produits.SQL.Add(',(STK_DEB_PER+CUMUL_ENT_PER-CUMUL_SORT_PER) as QTE_STOCK');
  MDIChild.Query_Produits.SQL.Add(',LIEU_STOCKAGE,'''' ID_LIGNE,PRIX_INVENTAIRE as Prix_unitaire,(STK_DEB_PER+CUMUL_ENT_PER-CUMUL_SORT_PER)*PRIX_INVENTAIRE as TOTAL_PRIX,'''' as LIEU_K7,''APPLI_K7'' AS SECTEUR');
  end
   else
   begin
   MDIChild.Query_Produits.SQL.Add('select RACINE_PDT||FINIT_PDT as CODE_PRODUIT,'''' as NUM_COMMANDE');
   MDIChild.Query_Produits.SQL.Add(',DESIGN_1||Design_2 as DESIGNATION,'''' as DERNIER_MVT');
   MDIChild.Query_Produits.SQL.Add(',(STK_DEB_PER+CUMUL_ENT_PER-CUMUL_SORT_PER) as QTE_STOCK');
   MDIChild.Query_Produits.SQL.Add(',LIEU_STOCKAGE,'''' ID_LIGNE,'''' as LIEU_K7,''APPLI_K7'' AS SECTEUR');
   end;
   MDIChild.Query_Produits.SQL.Add('FROM PRODUIT');
   MDIChild.Query_Produits.SQL.Add('where LIEU_STOCKAGE >= 4000 and LIEU_STOCKAGE <= 9500');
 
         if (Edit_Designation.Text <> '') then
    MDIChild.Query_Produits.SQL.Add('AND DESIGN_1||Design_2 like '+QuotedStr('%'+Edit_Designation.Text+'%'));
 
 
  MDIChild.Query_Produits.SQL.Add('ORDER BY DESIGNATION');
 
  MDIChild.Query_Produits.Open;
En espérant avoir expliqué au mieux
Merci d'avance.