Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Condition in code text endtext
Message
De
12/06/2005 12:56:48
 
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Versions des environnements
Visual FoxPro:
VFP 9
Divers
Thread ID:
01022574
Message ID:
01022598
Vues:
13
This message has been marked as a message which has helped to the initial question of the thread.
>Fabio,
>
>i have a new problem...
>
...
>*-- Here i have a problem because rowsource is limited to 254 caracters...
>THIS.ListResident.ROWSOURCE = cSql
>
...

You have two problems here:
- a issue : ListBox.RowSource don't support ";" line splitter
- a bug : when you read ListBox.RowSource, it read 256 characters only

Solution:
LOCAL cOrdre,;
  nOrdre,;
  cSql

nOrdre = THIS.cboordre_resident_chambre1.VALUE

SET TEXTMERGE TO MEMVAR THIS.ListResident.ROWSOURCE NOSHOW ON
\SELECT  LEFT( T.cnomteleph , 20 )  + ' - F.' + TRANSFORM( Ve.cnofact , "99999999" ) AS cName,
\\ Ve.iid,;
\\ PADR( IIF( ISNULL( Chambre.iid ) , '' , ALLTR( Chambre.cnom )+
\\ IIF( Chambre.nnolit > 1 , '-' + TRANS( R.nnolit , '@KZR 9'  ) , '' )  )  , 6 ) AS cchambre
\\ FROM amline!cfiltre cf INNER JOIN amline!Vente Ve ON Ve.iid = cf.itelephoneid
\\ JOIN amline!Teleph T ON  Ve.itelephoneid = T.iid
\\ JOIN amline!Resident R ON  T.iid = R.itelephoneid
\\ LEFT JOIN amline!Chambre ON  Chambre.iid = R.ichambreid
\\ WHERE Cf.lactif = .T. AND cf.ireport == <<goapp.noreport>>
\\ ORDER BY
DO CASE
  CASE nOrdre = 3
\\ cNofact
  CASE nOrdre = 2
\\ cChambre
  OTHERWISE
\\ cName
\\ INTO CURSOR cNames
SET TEXTMERGE TO && This fill ROWSOURCE 

* THIS.ListResident.REQUERY() remove this

* IF THIS.ListResident.LISTCOUNT > 0 remove this
  THIS.ListResident.LISTINDEX = 1
* ENDIF 
The limit is 8192, therefore you must be thrifty.
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform