Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
ListView Data Format
Message
From
29/05/2008 02:31:25
 
 
To
29/05/2008 02:06:39
General information
Forum:
Visual FoxPro
Category:
ActiveX controls in VFP
Environment versions
Visual FoxPro:
VFP 9 SP1
OS:
Windows XP SP2
Network:
Windows XP
Database:
Visual FoxPro
Miscellaneous
Thread ID:
01320164
Message ID:
01320166
Views:
16
>I use following codes to populate ListView
>I want to show numeric field3 as 1,28,695 but it does not show with transform function.

Transform() is not effectively used in your code snippet, you only have a string containing the word:
> lcFields = "FieldName1;FieldName2;TRANSFORM(FieldName3,99,99,999)"

In that line, the Transform() part would not evaluate to a valid expression:
? TRANSFORM(FieldName3,99,99,999) && Too many arguments (Error 1230)
? TRANSFORM(FieldName3,"99,99,999") && this one would work
After creating the "lcFields" variable, your code does not use it anymore.



hth
-Stefan


>Dear Experts
>
>I use following codes to populate ListView
>I want to show numeric field3 as 1,28,695 but it does not show with transform function.
>
>Please help
>
>create cursor table1 (code n(7),party c(20),qty n(8))
> insert into table1 values (1,'Eric',15)
> insert into table1 values (2,'Boris',281)
> insert into table1 values (3,'Cetin',2484)
> insert into table1 values (4,'Tushar',12585)
> insert into table1 values (5,'Tariq Mehmood',128695)
>
>lcHeaderT = "Code;Party;Qty"
>lcHeaderW = "50;100;70"
>lcHeaderA = "0;0;1" && 0 Left,1 Right, 2 Center
>lcFields = "FieldName1;FieldName2;TRANSFORM(FieldName3,99,99,999)"
>lnFldcnt = 3
>
>cALIAS = 'Table1'
>LOCAL I,lnHeaderWidth
>
>FOR I = 1 TO lnFldcnt
>      lcHeaderText = GETWORDNUM(lcHeaderT,I,";")
>      lcHeaderWidth = VAL(GETWORDNUM(lcHeaderW,I,";"))
>      lcHeaderAlign = VAL(GETWORDNUM(lcHeaderA,I,";"))
>      THISform.oListView.ColumnHeaders.Add(, ,lcHeaderText,lcHeaderWidth ,lcHeaderAlign,0)
>NEXT I
>
>THISform.oListView.View= 3  && lvwReport
>thisform.oListView.gridLines= .T.
>
>DECLARE INTEGER LockWindowUpdate IN user32 INTEGER hWndLock
>v = LockWindowUpdate(THISform.oListView.hWnd)
>thisform.oListView.Enabled= .F.
>SELECT &cALIAS
>SCAN
>	**** EVALUATE FIRST ITEM
>	cFIELD1 = FIELD(1)
>	*cFIELD1VALUE = &cFIELD1
>	cFIELD1VALUE = EVALUATE(cFIELD1)
>	DO CASE
>		CASE TYPE("cFIELD1VALUE")="N"
>			cFIELD1VALUE = ALLTRIM(STR(cFIELD1VALUE))
>		CASE TYPE("cFIELD1VALUE")="G"
>			cFIELD1VALUE = "Gen"
>	ENDCASE
>	loListItem = thisform.oListView.ListItems.Add(,,AllTrim(cFIELD1VALUE),,)
>	**** EVALUATE REST ITEMS
>	FOR J = 2 TO FCOUNT()+1-1
>			cFIELDNAME = FIELD(j)
>			DO CASE
>			CASE TYPE("&cFIELDNAME")="N"
>				cFIELDVALUE = ALLTRIM(STR(&cFIELDNAME))
>			CASE TYPE("&cFIELDNAME")="G"
>				cFIELDVALUE = "Gen"
>			CASE TYPE("&cFIELDNAME")="C" OR TYPE("&cFIELDNAME")="M"
>				cFIELDVALUE = ALLTRIM(&cFIELDNAME)
>			CASE TYPE("&cFIELDNAME")="D"
>				cFIELDVALUE = DTOC(&cFIELDNAME)
>			CASE TYPE("&cFIELDNAME")="L"
>				cFIELDVALUE = IIF(&cFIELDNAME=.t.,"Y","N")
>			ENDCASE
>		loListItem.subitems(J-1)=ALLTRIM(cFIELDVALUE)
>	NEXT
>ENDSCAN
>v = LockWindowUpdate(0)
>thisform.oListView.Enabled= .T.
>
Previous
Reply
Map
View

Click here to load this message in the networking platform