hey victor, we user r:tango and we had this problem about a year and a half ago when i was still in my very much learning stage (still learning every day about both r:base and witango!) and so i went willy nilly stumbling into problems i didnt know were there yet.
lets say we have a series of tafs set up where you log in, and have to log out and each login/password has its own unique user id. we would do something like this: <DMBS Action> <SQL> sel userno from user where username contains 'bob' <Results> <@assign local$userlist value="@@local$resultset"> as you can see local$userlist is a list of user ids where the user has the word 'bob' in their name. next we would do something like this: <DMBS Action> <SQL> sel username from user where userno in(@@localuserlist) as you can see, we got all the user names that contain the word 'bob'. all fine and dandy right? if only userid's 3,4,5 contained bob, the sql it sends to oterro (r:base) looks like this: sel username from user where userno in(3,4,5) which is fine. Now imagine you had 20,000 userno's where username contains the word 'bob', the sql send to oterro would be HUGE!, way more than 5000 characters right? Aha! the error message actualy makes sense eh? (: Luckily theres 2 fixes we found that we like for this problem. the first one is to merely put the 1st sql into the second so it looks like this: <SQL> sel username from user where userno in(sel userno from user where username contains 'bob') as you can see, that will never be more than 5000 characters or 400 items will it? plus, oterro is handling internaly the list of userno's instead of witango which is alot alot faster. another way to fix it: <@assign local$clause value="sel userno from user where username contains 'bob'"> <SQL> sel username from user where userno in(@@local$clause) which equates to the same as the first fix. BUT! theres a benefit here that you can build your clause dynamicly from a search form so you can be like (i know its not 100%...theres an extra and at the beginning of the clause but im feeling a lil under the weather sorry, should be easy to do an <@right> to cut off the first and) <Results html before DBMS action> <@if expr="<@arg username>!=''"> <@assign local$clause value="@@local$clause and username contains '<@arg username>'"> <@If> <@if expr="<@arg userid>!=''"> <@assign local$clause value="@@local$clause and userid = <@arg userid>"> <@If> <@if expr="<@arg userswithemailaddresses>!=''"> <@assign local$clause value="@@local$clause and useremail is not null"> </@if> and after that you do the same sql as before and now magicly you have dynamic search ability <@SQL> sel username from user where userno in(@@local$clause) hope that doesnt confuse you too much, but wanted to share this info with you and hopefully save you some painful debugging time (: email me privately if you want more info or a couple tips to help you get on your way Hope this helps! Alan ----- Original Message ----- From: "Victor Timmons" <[EMAIL PROTECTED]> To: "RBASE-L Mailing List" <[EMAIL PROTECTED]> Sent: Thursday, December 04, 2003 2:11 PM Subject: [RBASE-L] - Strange Error (well at least for a newbie) > when i trace this RMD file i get this error can someone tell me what it > means. > > Break in file at line 29 for -ERROR- More than 5000 characters or 400 > items on input line ( 14) ... Do you want to madify this file > Yes No > > Victor Timmons > Tiz's Door Sales, Inc > 425-258-2391 > --- RBASE-L ================================================ TO POST A MESSAGE TO ALL MEMBERS: Send a plain text email to [EMAIL PROTECTED] (Don't use any of these words as your Subject: INTRO, SUBSCRIBE, UNSUBSCRIBE, SEARCH, REMOVE, SUSPEND, RESUME, DIGEST, RESEND, HELP) ================================================ TO SEE MESSAGE POSTING GUIDELINES: Send a plain text email to [EMAIL PROTECTED] In the message SUBJECT, put just one word: INTRO ================================================ TO UNSUBSCRIBE: Send a plain text email to [EMAIL PROTECTED] In the message SUBJECT, put just one word: UNSUBSCRIBE ================================================ TO SEARCH ARCHIVES: Send a plain text email to [EMAIL PROTECTED] In the message SUBJECT, put just one word: SEARCH-n (where n is the number of days). In the message body, place any text to search for. ================================================

