Razzak You amazin man you - can't wait for that latest build and the LISTOF function!!!
Thanks! David Blocker ----- Original Message ----- From: "A. Razzak Memon" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Thursday, October 04, 2001 2:14 AM Subject: From The Edge: Creating Dynamic CHOOSE Options > > October 4, 2001 > > ==================================================================== > From the Edge: Creating Dynamic CHOOSE Options > Section: New Aggregate Function > Chapter: Running R:BASE Your Way! > Platform: R:BASE 2000 (ver 6.5++) for Windows > Build: 1.843xRT03 and Higher > ==================================================================== > > With the introduction of new LISTOF aggregate function in R:BASE > 2000 (version 6.5++) for Windows, In-Line Patch-1, Build:1.843xRT03, > to be released shortly, now you can create Dynamic CHOOSE Options! > > The aggregate functions (AVG, COUNT, MAXIMUM, MINIMUM, STDEV, SUM, > VARIANCE) used in SELECT commands now have a new member of their > family called "LISTOF" which creates a text string of the values > separated by the current comma delimiter character. > > The LISTOF function can be used with the "SELECT ... INTO ..." to > populate a variable with a list of values which can then be used > in a CHOOSE command with the #LIST option. It can also be used > in Forms, Reports or Labels to look up values from multiple rows. > > Syntax: > > At the R> prompt or in a command file: > > SELECT (LISTOF(ColumnName)) INTO VariableName INDICATOR IndVar + > FROM TableView WHERE ... > > In a Form, Report or Label Expression: > > VariableName = (LISTOF(ColumnName)) IN LookUpTableView WHERE + > KeyColumn = KeyColumn > > Example 01: > > SET VAR vValueList TEXT = NULL > SELECT (LISTOF(ColumnName)) INTO vValueList INDIC IvValueList + > FROM TableName WHERE ... > > The variable vValueList will be a text string of the values > separated by the current comma delimiter character. > > Example 02: > > CONNECT Concomp IDENTIFIED BY NONE > SET CAPTION ' ' > SET AUTODROP OFF > SET RBGSIZE CENTER CENTER 800 600 > SET VAR vLines INTEGER = 0 > SET VAR vValueList TEXT = NULL > SET VAR vLastName TEXT = NULL > SET VAR vTitle TEXT = 'List Created Using LISTOF Function' > SET VAR vCaption TEXT = 'Using #LIST Options in CHOOSE Command!' > > CLS > PAUSE 3 USING 'Collecting Values ...' CAPTION .vCaption AT 16 30 > SELECT (COUNT(*)), (LISTOF(EmpLName)) INTO + > vLines INDIC IvLines, vValueList INDIC IvValueList FROM Employee > IF vLines > 18 THEN > SET VAR vLines = 18 > ENDIF > > CLS > CHOOSE vLastname FROM #LIST .vValueList AT 6 30 + > TITLE .vTitle CAPTION .vCaption LINES .vLines FORMATTED > > IF vLastName IS NULL OR vLastName = '[Esc]' THEN > GOTO Done > ELSE > CLEAR ALL VAR EXCEPT vLastName > ENDIF > > -- Do what you have to do here ... > > LABEL Done > CLS > CLEAR ALL VAR > QUIT TO MainMenu.RMD > RETURN > > > Stay tuned for more .... > > Very Best Regards, > > Razzak. > > > ===================================-============================ > Official R:BASE List Server: mailto:[EMAIL PROTECTED] > RBTI Events/Training: http://www.rbase2000.com/events > R:DCC Members: http://www.rbase2000.com/rdcc > ================================================================ > R:BASE, Oterro & R:Tango are registered trademarks of RBTI. > ==================================-============================= >
