|
Sous-requête SQL - Windev 9 + AS400 |
Débuté par serge.mieville, 04 nov. 2005 15:50 - 3 réponses |
| |
| | | |
|
| |
Posté le 04 novembre 2005 - 15:50 |
J'ai une requête SQL liée à une Table. Mar requête s'exéqute très bien sur l'AS400 mais malheureusement pas à travers Windev!
Peut-on me renseigner s'il est possible de lier une Table à une requête utilisant une sous requête.
voici ma requête :
select ARCLEUNIK , NOCOL, NOPACK, DESART_001, AECLEUNIK, KEYCATPV from (Select MAX(SR2.DATDEB) DATDEB, SR1.ARCLEUNIK ARCLEUNIK , SR1.NOCOL AS NOCOL, SR1.NOPACK AS NOPACK, SR1.DESART_001 AS DESART_001, SR1.AECLEUNIK AS AECLEUNIK, SR1.KEYCATPV FROM ARTICLE SR1, ARTART SR2 where SR1.MBCLEUNIK = 435 AND SR1.ARTACTIF = 1 AND SR2.ARCLEUNIK = SR1.ARCLEUNIK AND SR2.DATDEB <= '2005-12-01' GROUP BY SR1.ARCLEUNIK, SR1.NOCOL, SR1.NOPACK, SR1.DESART_001, SR1.AECLEUNIK, SR1.KEYCATPV ) REQUDATE
voici l'erreur qui m'est retournée lors du GoTest
Le champ 'Table_Test' n'a pas pu s'initialiser, car il a rencontré l'erreur Hyper File suivante : ============================= Erreur de l'accès natif AS400. Numéro d'erreur = 1 Query execution failed. Error category 1 (SQL) Error code 0 Message: Full message:
=============================
**********************************************
Informations techniques
Projet : KOOKA_Prix
Dump de l'erreur du module <WD90OBJ.DLL> <9.00Dqv>.
- Niveau : erreur fatale (EL_FATAL)
- Code erreur : 10085
- Code erreur WD55 : 3001
- Pas de code d'erreur système
- Pas de message d'erreur système
- Que s'est-il passé ?
Le champ 'Table_Test' n'a pas pu s'initialiser, car il a rencontré l'erreur Hyper File suivante : ============================= Erreur de l'accès natif AS400. Numéro d'erreur = 1 Query execution failed. Error category 1 (SQL) Error code 0 Message: Full message:
=============================
- Pas d'info de debug
- Infos attachées : EIT_BASECODE : <73001> EIT_NATIVECODE : <1> EIT_NATIVEMESSAGE : <1 0 > EIT_LOGICALTABLENAME : <Test>
- Identifiant dans le .err : 10085 |
| |
| |
| | | |
|
| | |
| |
Posté le 04 novembre 2005 - 16:47 |
oui si j'exécute la requête en mode test et que la case est cochée "Exécuter avec hRequêteSansCorrection en mode test" le résultat s'affiche avec tester la Requête.
Par contre lorsque que je lance ma fenêtre qui contient la table liée à la requêt en mode Go (Test) là l'erreur se produit ?? |
| |
| |
| | | |
|
| | |
| |
Posté le 04 novembre 2005 - 17:20 |
As tu essayé de mettre hrequetesanscorrection ??? Christian
Serge Miéville a couché sur son écran :
J'ai une requête SQL liée à une Table. Mar requête s'exéqute très bien sur l'AS400 mais malheureusement pas à travers Windev!
Peut-on me renseigner s'il est possible de lier une Table à une requête utilisant une sous requête.
voici ma requête :
select ARCLEUNIK , NOCOL, NOPACK, DESART_001, AECLEUNIK, KEYCATPV from (Select MAX(SR2.DATDEB) DATDEB, SR1.ARCLEUNIK ARCLEUNIK , SR1.NOCOL AS NOCOL, SR1.NOPACK AS NOPACK, SR1.DESART_001 AS DESART_001, SR1.AECLEUNIK AS AECLEUNIK, SR1.KEYCATPV FROM ARTICLE SR1, ARTART SR2 where SR1.MBCLEUNIK = 435 AND SR1.ARTACTIF = 1 AND SR2.ARCLEUNIK = SR1.ARCLEUNIK AND SR2.DATDEB <= '2005-12-01' GROUP BY SR1.ARCLEUNIK, SR1.NOCOL, SR1.NOPACK, SR1.DESART_001, SR1.AECLEUNIK, SR1.KEYCATPV ) REQUDATE
voici l'erreur qui m'est retournée lors du GoTest
Le champ 'Table_Test' n'a pas pu s'initialiser, car il a rencontré l'erreur Hyper File suivante : ============================= Erreur de l'accès natif AS400. Numéro d'erreur = 1 Query execution failed. Error category 1 (SQL) Error code 0 Message: Full message:
=============================
**********************************************
Informations techniques
Projet : KOOKA_Prix
Dump de l'erreur du module <WD90OBJ.DLL> <9.00Dqv>.
- Niveau : erreur fatale (EL_FATAL)
- Code erreur : 10085
- Code erreur WD55 : 3001
- Pas de code d'erreur système
- Pas de message d'erreur système
- Que s'est-il passé ?
Le champ 'Table_Test' n'a pas pu s'initialiser, car il a rencontré l'erreur Hyper File suivante : ============================= Erreur de l'accès natif AS400. Numéro d'erreur = 1 Query execution failed. Error category 1 (SQL) Error code 0 Message: Full message:
=============================
- Pas d'info de debug
- Infos attachées : EIT_BASECODE : <73001> EIT_NATIVECODE : <1> EIT_NATIVEMESSAGE : <1 0 > EIT_LOGICALTABLENAME : <Test>
- Identifiant dans le .err : 10085
-- Bon développement à tous Christian
cciochir@ _ at _ cmii.fr |
| |
| |
| | | |
|
| | |
| |
Posté le 07 novembre 2005 - 10:04 |
En fait il semblerait qu'on ne puisse pas lié directement la table à la reqète!
il faut construire la table à l'exécution et garder le mode Sans Correction
Code pour charger la table ------------------------------
Test1.Ref_Modex = 435 Test1.Actif = 1 Test1.Date_Ref = "'2005-12-01'" Test1.Ref_Modele_Prix = 22220163 Test1.Code_Pays = "'CH'" Test1.Qte_Unitaire = 1 HExécuteRequête(Test1, gpsConnexion, hRequêteSansCorrection) SI PAS ErreurDétectée ALORS ConstruitTableFichier(Table_Dynamique,Test1,taAvecIdAuto+taRemplirTable) SINON Erreur("Erreur!" +RC + ErreurDétectée) FIN
Code de la requète ---------------------- select REQUDATE.ARCLEUNIK , REQUDATE.NOCOL, REQUDATE.NOPACK, REQUDATE.DESART_001, REQUDATE.AECLEUNIK, REQUDATE.KEYCATPV, ARTART.KEYETATP AS KEYETATP, ARTART.DATDEB AS DATDEB, PRIPUBDG.PRI_ATVA AS PRI_ATVA from (Select MAX(SR2.DATDEB) DATDEB, SR1.ARCLEUNIK ARCLEUNIK , SR1.NOCOL AS NOCOL, SR1.NOPACK AS NOPACK, SR1.DESART_001 AS DESART_001, SR1.AECLEUNIK AS AECLEUNIK, SR1.KEYCATPV FROM ARTICLE SR1, ARTART SR2 where SR1.MBCLEUNIK = {Ref_Modex} AND SR1.ARTACTIF = {Actif} AND SR2.ARCLEUNIK = SR1.ARCLEUNIK AND SR2.DATDEB <= {Date_Ref} GROUP BY SR1.ARCLEUNIK, SR1.NOCOL, SR1.NOPACK, SR1.DESART_001, SR1.AECLEUNIK, SR1.KEYCATPV ) REQUDATE, ARTART ARTART, PRIPUBDG PRIPUBDG WHERE ARTART.ARCLEUNIK = REQUDATE.ARCLEUNIK AND ARTART.DATDEB = REQUDATE.DATDEB AND PRIPUBDG.KEYETATP = ARTART.KEYETATP AND PRIPUBDG.NOMODPRIX = {Ref_Modele_Prix} AND PRIPUBDG.KEYPAY = {Code_Pays} AND PRIPUBDG.QTEDEG = {Qte_Unitaire} |
| |
| |
| | | |
|
| | | | |
| | |
|