Précédent   Forum des professionnels en informatique > Bases de données > Autres SGBD > Paradox
Paradox Forum d'entraide sur Paradox, et sur Borland Database Engine
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/06/2007, 10h26   #1
Invité de passage
 
Inscription : juin 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 14
Points : 2
Points : 2
Par défaut requêtes, scripts parametrés

Bonjour à tous,

Je suis une nouvelle venue dans le monde de Paradox, donc forcement j'ai quels questions à poser
Voilà mon souci : J'ai un ensemble de script sous paradox 8 avec une date de fin de mois. Ces scripts sont à exécuter tous les mois et donc, par conséquent, ce paramètre change.
La technique mise en place actuellement, est d'ouvrir un par un les scripts qui utilisent cette date et de la changer à la main (travail laborieux )

Donc la question est, peut-on faire des script paramétrés??

Merci d'avance
dilejeu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2007, 17h07   #2
Membre chevronné
 
Inscription : mars 2006
Messages : 615
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 615
Points : 682
Points : 682
Oui c'est possible. Mets moi le source d'un script et je te montrerai comment faire.
ALWEBER est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2007, 10h23   #3
Invité de passage
 
Inscription : juin 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 14
Points : 2
Points : 2
Voila, merci beaucoup

rien que de savoir que s'est possible me rempli de joie
Vivement la suite !!!

PS: dans ce script il y a enfait deux parametres (fin de mois + fin de mois M-1)
Fichiers attachés
Type de fichier : zip ctx.zip (3,9 Ko, 2 affichages)
dilejeu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2007, 11h54   #4
Membre chevronné
 
Inscription : mars 2006
Messages : 615
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 615
Points : 682
Points : 682
Voici un exemple de code. Je peux le preciser si tu le souhaites.
Bon travail!
Code :
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
var
  D1 , D2 date
  St_Filtre string
  Tc1 Tcursor
  q4 query
endvar
{
En paradox une variable date est en fait un nombre entier exprime
en nombre de jour ecoules depuis un point de depart qui peut etre
le 01/01/1900  ou le 01/01/0000 suivant le format de TABLE Paradox.
}
 
  D1 = Today()
  D1.VIEW() ; ici tu rentres la date que tu veux
  while d1.day() <> 1 D1 = D1 - 1 endwhile
  D2 = D1 + 32
  while d2.day() <> 1 D2 = D2 - 1 endwhile
  ST_Filtre1 = ">= "+String(D1)+" , <"+String(D2)
  ST_Filtre1.VIEW()
 
; reprise de ta requete q4 modifiee
q4=Query
 
OPTIONS: NO AUXILIARY TABLES
ctx_m.DB | RADPER      | ENCTOT     | LIBELLE DR | Date debut ctx |
             | calc nombre | calc somme | DR..       | ~ST_Filtre1    |
 
ctx_m.DB | Elt struct ctx |
            | sauf 0005560   |
 
EndQuery
q4.executeqbe(":tablbord:ctfx_dr.DB")
ALWEBER est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2007, 15h46   #5
Invité de passage
 
Inscription : juin 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 14
Points : 2
Points : 2
serait-il possible plutot de faire quelque chose comme cela???

Code :
1
2
3
4
5
6
 
ctx_m.DB | RADPER      | ENCTOT     | LIBELLE DR | Date debut ctx |
           | calc nombre | calc somme | DR..       | >= String(D1) , <String(D2)|
 
ctx_m.DB | Elt struct ctx |
            | sauf 0005560   |
en effet dans certaine requete, je n'ai besoin que de D2

De plus,
il se trouve qu'en réalité j'ai un script du type:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
method run(var eventInfo Event)
 
play ("Tabl14.ssl")     ; enrichissement des partenaires CTX
; importer de "mes documents" a_pctx2.db
; !!!! changer la date en Q2 pour entrées CTX anciennes	
 
play ("ENRI_MAR.ssl")    	; enrichississement des marchés DDC
 
play ("ENRICH.ssl")   	;   enrichississement général	
; Changer la date en Q2 date sortie DRA
 
play (":tablbord:ctx.ssl")        ; stock ctx du mois total, par Caisse Locale
; et flux Caisse Locale changer le mois
 
play (":tablbord:dcg_cdl.ssl")		 ;prets et clients de moins de 4 ans pour le DCG
; et atout libre risqués
;!!!   changer les dates tous les mois
 
play (":tablbord:Création fichiers pour Access BD1.ssl")	 ;prets et dépôts du moisde moins de 4 ans pour le DCG
; et défaut du mois
;!!!   changer les dates tous les mois
 
endmethod
donc je voudrai savoir si le parametrage peu etre saisie dans ce script puis utilisé par tous les autre??

Merci encore pour ma methode de parametrage
dilejeu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2007, 17h07   #6
Membre chevronné
 
Inscription : mars 2006
Messages : 615
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 615
Points : 682
Points : 682
Dans le script principal tu mets quelque chose du genre

Code :
1
2
3
4
5
6
7
8
9
10
var
  D1 , D2 date
endvar
  D1 = Today()
  while d1.day() <> 1 D1 = D1 - 1 endwhile
  D2 = D1 + 32
  while d2.day() <> 1 D2 = D2 - 1 endwhile
 
  writeEnvironmentString("DATE1",String(D1))
  writeEnvironmentString("DATE2",String(D2))
Dans chaque script appelé tu récupère les variables globales

Code :
1
2
3
4
5
var
  st_Date1, st_Date2 string
endvar
  st_Date1 = readEnvironmentString("DATE1")
  st_Date2 = readEnvironmentString("DATE2")
Enfin tu les passes en paramètre à tes requêtes

Code :
1
2
3
4
5
ctx_m.DB | RADPER      | ENCTOT     | LIBELLE DR | Date debut ctx |
           | calc nombre | calc somme | DR..       | >= ~st_Date1 , < ~st_Date2 |
 
ctx_m.DB | Elt struct ctx |
            | sauf 0005560   |
ALWEBER est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2007, 09h47   #7
Invité de passage
 
Inscription : juin 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 14
Points : 2
Points : 2
C'est génial !!!
je te remercie beaucoup, cela va vraiment facilité le travail !!!!!

Bonne continuation et vive le forum
dilejeu est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h49.


 
 
 
 
Partenaires

Hébergement Web