Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[PHP4WD] resultat different entre FB4WD et PHP4WD

8 réponses
Avatar
Jerome PAULIN
Bonjour,

Avec PHP4WD, j'obtiens le résultat suivant à une requete (apparait sur
deux lignes dans le tableau:
EROC_INTERNE TESTGG______________ON000012 16/05/2007 16/05/2007
084846 __/__/____

Alors qu'avec FB4WD j'obtiens le bon résultat (sur une seule ligne) :
EROC_INTERNE TESTGG______________ON000012 16/05/2007
16/05/2007 08:48 JP

Est ce que peux poster des copies d'écran sur le NG ? Ca serait rurement
plus clair.

J'attaque la même base, avec la même requete, depuis le même programme.
La requete est un peu complexe, mais fonctionne bien :

gg








select first 20
t_client.code__cli,
t_entete_commande_client.id__ent_com_cli,
t_entete_commande_client.num__ent_com_cli,
case when
datetostr(t_entete_commande_client.date__ent_com_cli,'%Y%m%d')='19000101'
then null else
datetostr(t_entete_commande_client.date__ent_com_cli,'%Y%m%d') end ,
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM

where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli

and t_type_caract_entete_commande.code__typ_car_ent_com='DATE_DEMANDE'),
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM

where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli

and t_type_caract_entete_commande.code__typ_car_ent_com='HEURE_DEMANDE'),
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM

where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli

and t_type_caract_entete_commande.code__typ_car_ent_com='DELAI_NEGOCIE'),
case when (
select count(*)
from t_ligne_commande_client
where solde__lig_com_cli=0
and
t_ligne_commande_client.id__ent_com_cli=t_entete_commande_client.id__ent_com_cli
)<>0 then 0 else 1 end,
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM

where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli

and t_type_caract_entete_commande.code__typ_car_ent_com='DEMANDEUR'),
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM

where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli

and t_type_caract_entete_commande.code__typ_car_ent_com='DETAILS'),
(
select first 1
case
when (select first 1 skip 0 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else (select first 1 skip 0 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)

end
||
case
when (select first 1 skip 1 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else ','||(select first 1 skip 1 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)

end
||
case
when (select first 1 skip 2 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else ','||(select first 1 skip 2 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)

end
||
case
when (select first 1 skip 3 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else ','||(select first 1 skip 3 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)

end
||
case
when (select first 1 skip 4 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else ','||(select first 1 skip 4 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)

end
from
T_CARACT_ENTETE_COMMANDE
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI

),
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM

where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli

and t_type_caract_entete_commande.code__typ_car_ent_com='COULEUR_OUTIL')
from
t_client
inner join t_entete_commande_client on
t_client.id__cli=t_entete_commande_client.id__cli
inner join t_ligne_commande_client on
t_entete_commande_client.id__ent_com_cli=t_ligne_commande_client.id__ent_com_cli

where
t_entete_commande_client.num__ent_com_cli like '%TESTGG%'
and T_LIGNE_COMMANDE_CLIENT.SOLDE__LIG_COM_CLI=0
group by
1,2,3,4
order by 5 desc,6 desc

8 réponses

Avatar
Firetox
ca vient du fait que FB4WD et l'acces convertie le formatDate renvoye alors
PHP ne le fait pas
il ya peut etre des set a faire cote php il faut cherche sur internet

car php a revoyer la dateHeure sous forme JJ/MM/AAAAHHMMSS
mais la faut faire des tests ou des recherche sur firebird php et les format
de date

@+

"Jerome PAULIN" a écrit dans le message
de news: f2ea01$vm1$
Bonjour,

Avec PHP4WD, j'obtiens le résultat suivant à une requete (apparait sur
deux lignes dans le tableau:
EROC_INTERNE TESTGG______________ON000012 16/05/2007 16/05/2007 084846
__/__/____
Alors qu'avec FB4WD j'obtiens le bon résultat (sur une seule ligne) :
EROC_INTERNE TESTGG______________ON000012 16/05/2007 16/05/2007 08:48 JP
Est ce que peux poster des copies d'écran sur le NG ? Ca serait rurement
plus clair.

J'attaque la même base, avec la même requete, depuis le même programme.
La requete est un peu complexe, mais fonctionne bien :

gg








select first 20
t_client.code__cli,
t_entete_commande_client.id__ent_com_cli,
t_entete_commande_client.num__ent_com_cli,
case when
datetostr(t_entete_commande_client.date__ent_com_cli,'%Y%m%d')='19000101'
then null else
datetostr(t_entete_commande_client.date__ent_com_cli,'%Y%m%d') end ,
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli
and t_type_caract_entete_commande.code__typ_car_ent_com='DATE_DEMANDE'),
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli
and t_type_caract_entete_commande.code__typ_car_ent_com='HEURE_DEMANDE'),
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli
and t_type_caract_entete_commande.code__typ_car_ent_com='DELAI_NEGOCIE'),
case when (
select count(*)
from t_ligne_commande_client
where solde__lig_com_cli=0
and
t_ligne_commande_client.id__ent_com_cli=t_entete_commande_client.id__ent_com_cli
)<>0 then 0 else 1 end,
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli
and t_type_caract_entete_commande.code__typ_car_ent_com='DEMANDEUR'),
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli
and t_type_caract_entete_commande.code__typ_car_ent_com='DETAILS'),
(
select first 1
case
when (select first 1 skip 0 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else (select first 1 skip 0 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
end
||
case
when (select first 1 skip 1 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else ','||(select first 1 skip 1 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
end
||
case
when (select first 1 skip 2 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else ','||(select first 1 skip 2 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
end
||
case
when (select first 1 skip 3 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else ','||(select first 1 skip 3 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
end
||
case
when (select first 1 skip 4 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else ','||(select first 1 skip 4 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
end
from
T_CARACT_ENTETE_COMMANDE
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI
),
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli
and t_type_caract_entete_commande.code__typ_car_ent_com='COULEUR_OUTIL')
from
t_client
inner join t_entete_commande_client on
t_client.id__cli=t_entete_commande_client.id__cli
inner join t_ligne_commande_client on
t_entete_commande_client.id__ent_com_cli=t_ligne_commande_client.id__ent_com_cli
where
t_entete_commande_client.num__ent_com_cli like '%TESTGG%'
and T_LIGNE_COMMANDE_CLIENT.SOLDE__LIG_COM_CLI=0
group by
1,2,3,4
order by 5 desc,6 desc


Avatar
Firetox
voir ceci pour la configuration et les format date dateHeure et heure
http://php.mirror.camelnetwork.com/manual/fr/ref.ibase.php

Bon dev
@+

"Jerome PAULIN" a écrit dans le message
de news: f2ea01$vm1$
Bonjour,

Avec PHP4WD, j'obtiens le résultat suivant à une requete (apparait sur
deux lignes dans le tableau:
EROC_INTERNE TESTGG______________ON000012 16/05/2007 16/05/2007 084846
__/__/____
Alors qu'avec FB4WD j'obtiens le bon résultat (sur une seule ligne) :
EROC_INTERNE TESTGG______________ON000012 16/05/2007 16/05/2007 08:48 JP
Est ce que peux poster des copies d'écran sur le NG ? Ca serait rurement
plus clair.

J'attaque la même base, avec la même requete, depuis le même programme.
La requete est un peu complexe, mais fonctionne bien :

gg








select first 20
t_client.code__cli,
t_entete_commande_client.id__ent_com_cli,
t_entete_commande_client.num__ent_com_cli,
case when
datetostr(t_entete_commande_client.date__ent_com_cli,'%Y%m%d')='19000101'
then null else
datetostr(t_entete_commande_client.date__ent_com_cli,'%Y%m%d') end ,
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli
and t_type_caract_entete_commande.code__typ_car_ent_com='DATE_DEMANDE'),
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli
and t_type_caract_entete_commande.code__typ_car_ent_com='HEURE_DEMANDE'),
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli
and t_type_caract_entete_commande.code__typ_car_ent_com='DELAI_NEGOCIE'),
case when (
select count(*)
from t_ligne_commande_client
where solde__lig_com_cli=0
and
t_ligne_commande_client.id__ent_com_cli=t_entete_commande_client.id__ent_com_cli
)<>0 then 0 else 1 end,
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli
and t_type_caract_entete_commande.code__typ_car_ent_com='DEMANDEUR'),
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli
and t_type_caract_entete_commande.code__typ_car_ent_com='DETAILS'),
(
select first 1
case
when (select first 1 skip 0 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else (select first 1 skip 0 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
end
||
case
when (select first 1 skip 1 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else ','||(select first 1 skip 1 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
end
||
case
when (select first 1 skip 2 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else ','||(select first 1 skip 2 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
end
||
case
when (select first 1 skip 3 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else ','||(select first 1 skip 3 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
end
||
case
when (select first 1 skip 4 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
is NULL
then ''
else ','||(select first 1 skip 4 distinct
T_CARACT_ENTETE_COMMANDE.VALEUR_txt__CAR_ENT_COM from
T_CARACT_ENTETE_COMMANDE inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where T_TYPE_CARACT_ENTETE_COMMANDE.CODE__TYP_CAR_ENT_COM='MOTCLE' and
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI)
end
from
T_CARACT_ENTETE_COMMANDE
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=t_entete_commande_client.ID__ENT_COM_CLI
),
(
select first 1
valeur_txt__car_ent_com
from
T_CARACT_ENTETE_COMMANDE
inner join T_TYPE_CARACT_ENTETE_COMMANDE on
T_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM=T_TYPE_CARACT_ENTETE_COMMANDE.ID__TYP_CAR_ENT_COM
where
T_CARACT_ENTETE_COMMANDE.ID__ENT_COM_CLI=T_ENTETE_COMMANDE_CLIENT.id__ent_com_cli
and t_type_caract_entete_commande.code__typ_car_ent_com='COULEUR_OUTIL')
from
t_client
inner join t_entete_commande_client on
t_client.id__cli=t_entete_commande_client.id__cli
inner join t_ligne_commande_client on
t_entete_commande_client.id__ent_com_cli=t_ligne_commande_client.id__ent_com_cli
where
t_entete_commande_client.num__ent_com_cli like '%TESTGG%'
and T_LIGNE_COMMANDE_CLIENT.SOLDE__LIG_COM_CLI=0
group by
1,2,3,4
order by 5 desc,6 desc


Avatar
Jerome PAULIN
Firetox a écrit :
ca vient du fait que FB4WD et l'acces convertie le formatDate renvoye alors
PHP ne le fait pas
il ya peut etre des set a faire cote php il faut cherche sur internet

car php a revoyer la dateHeure sous forme JJ/MM/AAAAHHMMSS
mais la faut faire des tests ou des recherche sur firebird php et les format
de date

@+




C'est plus embetant que blocant dans ce cas, car cela signifie que je ne
peux pas me contenter de remplacer FB4WD par PHP4WD, mais qu'il faut
reprendre le projet tel quel.

Cordialement,

gg

PS: PHP4WD reste quand même un beau produit qui permet de rapidement
faire du multi cibles (PC+pocket, peut etre meme JAVA?)
Avatar
Jerome PAULIN
Jerome PAULIN a écrit :

PS: PHP4WD reste quand même un beau produit qui permet de rapidement
faire du multi cibles (PC+pocket, peut etre meme JAVA?)




A priori ne fonctionne pas en Java (problème de tableau dynamique)...

gg
Avatar
Firetox
non il faut simplement que le cote php soit bien configure pour renvoyer les
memes choses
ce n'est pas dans le code windev que cela peche mais dans la config de php
pour firebird

bon dev
@+

"Jerome PAULIN" a écrit dans le message
de news: f2ed0p$1g9$
Firetox a écrit :
ca vient du fait que FB4WD et l'acces convertie le formatDate renvoye
alors PHP ne le fait pas
il ya peut etre des set a faire cote php il faut cherche sur internet

car php a revoyer la dateHeure sous forme JJ/MM/AAAAHHMMSS
mais la faut faire des tests ou des recherche sur firebird php et les
format de date

@+




C'est plus embetant que blocant dans ce cas, car cela signifie que je ne
peux pas me contenter de remplacer FB4WD par PHP4WD, mais qu'il faut
reprendre le projet tel quel.

Cordialement,

gg

PS: PHP4WD reste quand même un beau produit qui permet de rapidement faire
du multi cibles (PC+pocket, peut etre meme JAVA?)


Avatar
Jerome PAULIN
Firetox a écrit :
non il faut simplement que le cote php soit bien configure pour renvoyer les
memes choses
ce n'est pas dans le code windev que cela peche mais dans la config de php
pour firebird

bon dev
@+




Faut faire un peu de tuning du coté PHP ?

gg
Avatar
Firetox
regarde le lien que je t'ai donné il y a tout pour faire la config
c'est assez interressant

@+


"Jerome PAULIN" a écrit dans le message
de news: f2edtb$224$
Firetox a écrit :
non il faut simplement que le cote php soit bien configure pour renvoyer
les memes choses
ce n'est pas dans le code windev que cela peche mais dans la config de
php pour firebird

bon dev
@+



Faut faire un peu de tuning du coté PHP ?

gg


Avatar
Firetox
on pourrait faire le bon set dans le php dans le cas de firebird
si tu trouve le bon set a faire dans la config et qu'on peut le faire dans
le script php je le rajouterai dans le cas de FB
comme ca plus de tuning a faire mais il renverra les bonnes infos quand meme

@+


"Jerome PAULIN" a écrit dans le message
de news: f2edtb$224$
Firetox a écrit :
non il faut simplement que le cote php soit bien configure pour renvoyer
les memes choses
ce n'est pas dans le code windev que cela peche mais dans la config de
php pour firebird

bon dev
@+



Faut faire un peu de tuning du coté PHP ?

gg