[U2] Help diagnosing mysterious database "hangs" (UV 10.1.25, HP-UX 11.11)
We are experiencing periodic "hangs" (up to 5 minutes in duration) accessing the UV database. These hangs are manifesting when accessing the database through JDBC, sometimes when calling a stored procedure, sometimes when running queries directly through JDBC. The problem has appeared in two different, unrelated sub-systems (no common tables are accessed by both). Of course, we first suspected locking issues, but we have not been able to find any evidence that this is the case. In most cases, only one process seems to be accessing the table(s) in question at the time of the problem. Any ideas on how to go about diagnosing this? Or thoughts as to what might be the problem? It would be awfully nice to have a log of all of the queries being executed and how long they took, such as you can easily get from other databases, like mysql, or PostGresql. -- Geoffrey Mitchell Programmer/Analyst Home Decorator's Collection 314-684-1062 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Green Software -> Green Business
Ultimately, there's only one kind of "green" that companies care about (though for those of you outside the US, they print it in more than one color), and the other kind of green won't happen unless it facilitates making more of the first kind. Susan Joslyn wrote: Don Verhagen made the point that we do what comes naturally (conveniently) and sometimes that's green and sometimes it's not. For me, I admit, that's true. My green efforts have stemmed from what is convenient and less expensive, I admit it. I just think that it's lucky we are in an industry / business where being greener and doing what is better and cheaper all line up! My sister's company issued a "green offer" to the employees that it would pay for a bicycle for any employee that would ride it to work. So my sister jumped on it, got a great new bicycle and rides it to work every day and is the world's biggest enthusiast now. She's lost weight and says she feels 20 years younger. It's a huge triple win. I thought I might hear a few stories like my sister's company bicycle. I guess these kinds of initiatives are still rare, but expect they will become more common -- both for the "marketing appeal" of being able to claim greenness and because of the price of gas. Susan --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ -- Geoffrey Mitchell Programmer/Analyst Home Decorator's Collection 314-684-1062 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] [UV] [UB] Equating Two Arrays in UniBasic
Is R.New or R.SOD being declared as a dimensioned array somewhere? If both are dynamic arrays, there should be no problem. I get the error you describe if I try to assign a dimensioned array to a dynamic array variable, such as: 0001: DIM X(100) 0002: Y="" 0003: X=Y The other way around produces a different error. So, it would seem to me that R.SOD is dimensioned, except that when I add in the read, I get "FROM" unexpected, Was expecting: '(' on the read in addition to the "Array must have subscripts" error on the assignment. Brutzman, Bill wrote: It is not letting me do it. When I try something like... read R.SOD from F.SOH, Order.ID else R.SOD = '' R.New = '' R.New = R.SOD The compiler says... Error... Array must have subscripts. Unless there is no other way... I would rather not build a new array... via a loop... inspecting one item at a time. Suggestions would be appreciated. --Bill --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ -- Geoffrey Mitchell Programmer/Analyst Home Decorator's Collection 314-684-1062 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Unidata 7.1 ODBC Threading Problems?
one of my customers has this >>>>>Zeacom >>>>> >>>>> >>>>phone >>>> >>>> >>>>>system that has the ability to call a (VBScript) script to gather >>>>>information from a back-end database so that it can display that >>>>> >>>>> >>>>information >>>> >>>> >>>>>for a customer service rep handing the call. Conceptually, it's >>>>>really slick. I had originally written the script using >>>>> >>>>> >>>UniObjects, >>> >>> >>>>>but the customer demanded that we use only ODBC to gather the >>>>>information from Unidata, so I rewrote the script using >>>>> >>>>> >>>ODBC. This >>> >>> >>>>>script opens a >>>>> >>>>> >>>>connection >>>> >>>> >>>>>to Unidata, calls a subroutine, gathers the results, and then >>>>>returns the text result to the phone system. Like I >>>>> >>>>> >>>said, it's really slick... >>> >>> >>>>>...except when there are two calls that come in basically at the >>>>>same >>>>> >>>>> >>>>time. >>>> >>>> >>>>>If there's a open ODBC connection to Unidata processing >>>>> >>>>> >>>one call and >>> >>> >>>>another >>>> >>>> >>>>>call comes in and opens up another ODBC connection (from the same >>>>>Windows machine from a different process) one or both of the >>>>>connections craps >>>>> >>>>> >>>>out, >>>> >>>> >>>>>leaving a connection open and a license consumed. We can >>>>> >>>>> >>>log these >>> >>> >>>>>off >>>>> >>>>> >>>>with >>>> >>>> >>>>>UniAdmin no problem, but it's a hassle having to watch the user >>>>>table >>>>> >>>>> >>>>pretty >>>> >>>> >>>>>much all day to prevent all of the licenses from being consumed. >>>>> >>>>>The message as logged by the phone system looks like this: >>>>> >>>>>11:33:46.26 01803d90 QueryThread x755fe0: !! ERROR !! >>>>> >>>>> >>>QmScript::Script: >>> >>> >>>>>Error 0x80004005 Line 114 "'D:\Program Files\Zeacom\CTI\Enhanced >>>>>Routing\EnhancedRouting.vbs' line 114: [Microsoft][ODBC Driver >>>>>Manager] Driver's SQLSetConnectAttr failed" >>>>> >>>>>Line 114 of this script is opening the ODBC connection. Not only >>>>>did >>>>> >>>>> >>>>this >>>> >>>> >>>>>particular connection fail, but the connection that was >>>>> >>>>> >>>in progress >>> >>> >>>>>when this one was started died unexpectedly as well, >>>>> >>>>> >>>leaving an open >>> >>> >>>>connection >>>> >>>> >>>>>and consumed license. >>>>> >>>>>This script really isn't rocket science, and it's vexing >>>>> >>>>> >>>me that we >>> >>> >>>>>can't seem to have multiple open ODBC connections from the same >>>>>Windows server into Unidata. Is this just a fact of life with >>>>>Unidata and ODBC, or is there a solution? >>>>> >>>>>-Kevin >>>>>http://www.PrecisOnline.com >>>>>--- >>>>>u2-users mailing list >>>>>u2-users@listserver.u2ug.org >>>>>To unsubscribe please visit http://listserver.u2ug.org/ >>>>> >>>>> >>>>--- >>>>u2-users mailing list >>>>u2-users@listserver.u2ug.org >>>>To unsubscribe please visit http://listserver.u2ug.org/ >>>> >>>> >>>> >>> >>>-- >>>-Kevin >>>http://www.PrecisOnline.com >>>--- >>>u2-users mailing list >>>u2-users@listserver.u2ug.org >>>To unsubscribe please visit http://listserver.u2ug.org/ >>> >>> >>--- >>u2-users mailing list >>u2-users@listserver.u2ug.org >>To unsubscribe please visit http://listserver.u2ug.org/ >> >> >> > > > > > -- Geoffrey Mitchell Programmer/Analyst Home Decorator's Collection 314-684-1062 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] locking code question
Look into cvs or Subversion. I have not used either for UV Basic files, but either would work and both are opensource. As stated, it would require a little infrastructure and a paradigm shift in the way you work, but the benefits would probably be worth it. Israel, John R. wrote: Yes and no. Since basic program files are just Unix Dirs and the source code is just text, you could map these files via Samba so that Windows could see it cleanly and use it that way. It might take a little playing, but we did something like that and it worked to some extent. Might not be the best way, but I thought I would throw it out. There are similar Open Source products for Unix, though I have not had experience with them. -- Geoffrey Mitchell Programmer/Analyst Home Decorator's Collection 314-684-1062 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Universe 10.1 Itype possible parsing problem
I would think that honoring a reasonable order of operations when parsing would resolve this. The extraction operator should certainly be higher priority than comparison. In fact, it works correctly in a BASIC program (UV 10.1.8). I compiled and ran the following: 0001: XX="" 0002: XX<1>=5 0003: XX<2>="X" 0004: IF XX<1>=5 THEN CRT "YES" ELSE CRT "NO" It returned "YES" as expected. If it suffered from the same affliction, it should have returned "NO" as (XX<1) is not >= 5. Therefore, it would seem that the parser for the I-Types is, as originally suggested, broken, or, more specifically, is not consistent with the BASIC compiler. I confess, however, that I have not verified the alleged I-type behavior on my system. Jerry Banker wrote: >I have to add that this is just the reason why I stress using spaces >between signs, variables, Boolean operators, and a liberal use of >parentheses. > > > >>-Original Message- >>From: Jerry Banker [mailto:[EMAIL PROTECTED] >>Sent: Tuesday, January 08, 2008 4:46 PM >>To: u2-users@listserver.u2ug.org >>Subject: RE: [U2] Universe 10.1 Itype possible parsing problem >> >>What it is doing is evaluating as: >>If @record is less than 3 is greater-than or equal to @record<6> then >> >> >1 > > >>else -1 >>Or >>In other words: >>If 0 is greater-than or equal to 20071217:224240 then 1 else -1 >> >> >> >>>-Original Message- >>>From: john reid [mailto:[EMAIL PROTECTED] >>>Sent: Tuesday, January 08, 2008 3:57 PM >>>To: list >>>Subject: [U2] Universe 10.1 Itype possible parsing problem >>> >>>In the following query, a file is listed with two identical itypes, >>>save for field 2 spacing, as shown below. Fields 3 and 6 are all >>> >>> >equal > > >>>in the query shown. >>> >>>The difference is that there is no space between the > and = . This >>>appears to yield wrong results, the bad one being shown as field 2 >>>(all minus ones) in the query. >>>Anyone seen this? >>>john >>>field 3 field 6 >>>1-1 20071217:224240 20071217:224240 >>>1-1 20071218:165115 20071218:165115 >>>1-1 20071217:211056 20071217:211056 >>>1-1 20071218:105346 20071218:105346 >>> >>>-- >>>IF @RECORD<3> = @RECORD<6> THEN "1" ELSE "-1" >>>IF @RECORD<3>= @RECORD<6> THEN "1" ELSE "-1" >>>john >>>--- >>>u2-users mailing list >>>u2-users@listserver.u2ug.org >>>To unsubscribe please visit http://listserver.u2ug.org/ >>> >>> >>--- >>u2-users mailing list >>u2-users@listserver.u2ug.org >>To unsubscribe please visit http://listserver.u2ug.org/ >> >> >--- >u2-users mailing list >u2-users@listserver.u2ug.org >To unsubscribe please visit http://listserver.u2ug.org/ > > > > -- Geoffrey Mitchell Programmer/Analyst Home Decorator's Collection 314-684-1062 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Universe and triggers
After FILETRIG is compiled it must be globally catalogued: >CATALOG BP FILETRIG "*ce*FILETRIG" cataloged. Note that, depending on your account flavor, this may not do what you need. I believe that you need an Information flavor catalog. We have a verb setup as follows: >ED VOC ICATALOG 6 lines long. : P 0001: V 0002: CATALOG 0003: I 0004: BDGZ 0005: catalog 0006: INFORMATION.FORMAT Using this will. globally catalog your subroutine. A pick format catalog will only locally catalog it (create an entry in the VOC on the local account). I could be wrong in some detail, but this is my understanding, and waht I have found to work. -- Geoffrey Mitchell Programmer/Analyst Home Decorator's Collection 314-684-1062 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Universe and triggers
I'm not sure in what version it was implemented, but you *can* have triggers on non-SQL files in Universe (and have been able to for some time now). Cataloging the subroutine so that it can be called as a trigger is somewhat weird, and not well documented, but if you search the list archives, you should be able to find what you need to know. We have been using this in production for a couple of years. Actually installing the trigger uses the same syntax as for an SQL table. I believe that this works on all hashed file types (i.e. anything but type 1 or 19 files). Geoff [EMAIL PROTECTED] wrote: >Hi Marcos, > >Universe seems hellbent on invoking the entire SQL system in order to put a simple trigger on a file. UniData is MUCH more forgiving in that regard. > >With Universe, I have had a certain amount of success making what I call 'indexed subroutines' where by an index on a file calls a virtual Dictionary subroutine which does, in fact, operate as a rudimentary trigger. You CANNOT affect data going to the actual file record update as you might with an actual trigger, but you can write information to a tracking database and then I have a background phantom in operation which manages email distribution from the triggered events and what not. I *could* even write back to the originating file record that initiated the trigger -- I've closed off the mortal embrace between phantom and virtual subroutine -- but that will always have a lag time between the actual record update event and the final conclusion of the trigger, so I would not consider it a particularly clean solution for true database triggering. It does work well as a tracking and reporting system, though. > >Trey > > > -- Original message -- >From: Marcos Fogaga <[EMAIL PROTECTED]> > > >>Hi, >> >> >> >>It is possible create a trigger (subroutine) for a pick file (non SQL >>table)? >> >>On D3 we have CALLX, is there a feature like this in Universe? >> >> >> >>Thanks in advance. >> >> >> >>Best Regards, >> >> >> >>Marcos Fogaca >> >>Integral Sistemas >> >>Sao Paulo / Brazil >>--- >>u2-users mailing list >>u2-users@listserver.u2ug.org >>To unsubscribe please visit http://listserver.u2ug.org/ >> >> >--- >u2-users mailing list >u2-users@listserver.u2ug.org >To unsubscribe please visit http://listserver.u2ug.org/ > > > > -- Geoffrey Mitchell Programmer/Analyst Home Decorator's Collection 314-684-1062 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] SQL query locks
Just a guess, but this migh have to do with your transaction isolation level. Which DB are you using? UniVerse or UniData? I assume that the ColdFusion app is using ODBC to connect to the DB? Pamela J Robbins wrote: Hi, We have a Cold Fusion app that is using SQL queries. It's locking records, unfortunately as many as 100 at a time. Is there a way to do the query without locking records? We're not updating anything. Pam -- Geoffrey Mitchell Programmer/Analyst Home Decorator's Collection 314-684-1062 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] [UD7.1] [Solaris 9]SOAP calls
So, what's the problem? That zero is not the expected response? Do you control the webservice? Have access to logs on the webservice side? It looks like the service is either not getting the inputs correctly, or not functioning correctly. From what I can tell, there is nothing wrong with the way you are creating and submitting the request, and the response looks like a valid SOAP response.. [EMAIL PROTECTED] wrote: Hi, I'm evaluating the webservice api in Unidata. I've succesfully masterd the GET and POST methods but not the SOAP method. I've tried both to build the XML manually(SoapSetRequestContent) and SoapSetParameters with the same result. The code looks like this: ret = SOAPSetDefault("VERSION","1.1") IF ret <> 0 THEN STOP "FEL I SOAP SetDefault ":Ret END URL = "http://www.webservicex.net/ConvertSpeed.asmx?wsdl"; SoapAction = "http://www.webserviceX.NET/ConvertSpeed"; Method = "ConvertSpeed" MethodParams = "Speed":@VM:"12":@VM:"xsd:double":@AM:"FromUnit":@VM:"milesPerhour":@AM:"ToUnit":@VM:"metersPerSecond" Timeout = 3 NameSpace= "http://www.webserviceX.NET/"; Ret = SoapCreateRequest(URL, SoapAction, SoapReq) IF Ret <> 0 THEN STOP "FEL I SOAP REQUEST ":Ret END Ret = SoapSetParameters(SoapReq, NameSpace, Method, MethodParams) IF Ret <> 0 THEN STOP "FEL I SOAP SetParam ":Ret END Ret = SoapSubmitRequest(SoapReq, Timeout, RespHeaders, RespData, SoapStatus) IF Ret <> 0 THEN STOP "FEL I SOAP SubmitReq ":Ret END PRINT "Resp status : ":SoapStatus PRINT "Response headers : ":RespHeaders PRINT "Response data : ":RespData The response header I get looks like this: Connection}close~Date}Tue, 14 Aug 2007 07:31:06 GMT~Server}Mi crosoft-IIS/6.0~X-Powered-By}ASP.NET~X-AspNet-Version}1.1.4322~Cache-Control}pri vate, max-age=0~Content-Type}text/xml; charset=utf-8~Content-Length}369 The response data I get looks like this: "http://schemas.xmlsoap.org/soap/envelope/"; xmlns:xsi="http://www.w3.org/2001/XM LSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema";>http://www.webserviceX.NET/";>0 Anyone that uses this that can find my bug? Thanks in advance Bjvrn Eklund --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ -- Geoffrey Mitchell Programmer/Analyst Home Decorator's Collection 314-684-1062 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] RE: Cleaner Case Statement
E OTHERWISE, and I >>>>always have a CASE OTHERWISE on every case statement - even if it had no >>>>action. These days, I get lazy and just use CASE @TRUE since it would be >>>> >>>> >>>an >>> >>> >>>>arrogant assumption of me to assume that 1 is true. At best it is very >>>>old >>>>school and poor form. But having the CASE @TRUE branch there is my >>>>signature; Coding every structured path is my style. >>>> >>>>On the other hand, while I don't do this a lot, I don't have any problem >>>>with the using the form IF X = 1 ELSE GOSUB 100 type statement. I do >>>>think >>>>it is dreadfully cryptic. I seriously hate dealing with this kind of >>>>code. >>>>What is X? What is 100? YIKES! And I like to avoid single use >>>>subroutines/GOSUBs when possible - not because they are inherently bad, >>>> >>>> >>>but >>> >>> >>>>because they are parameterless and if you use it once why complicate the >>>>issue? I usually just put the code inline, but I occasionally don't if it >>>>would improve the self documenting nature of the code. >>>> >>>>Anyway, if X were a status code say, and we wanted to watch for a status >>>> >>>> >>>of >>> >>> >>>>1 I might do something like this: >>>> >>>>ALL_IS_WELL_PROCEED = X = 1 ; * This "X" business is just to match the >>>>previous example. >>>>... >>>>Some code goes here including possibly status code ALL_IS_WELL_PROCEED >>>>updates >>>>... >>>>IF ALL_IS_WELL_PROCEED ELSE GOSUB HANDLE_PROBLEM >>>> >>>>To me that reads like instructions to bake a cake, and anybody can "see" >>>> >>>> >>>the >>> >>> >>>>intension. I do not have to have a degree in cryptography to read this >>>>regardless of how I set it up. It is 1,000,000 times easier to read then >>>> >>>> >>>the >>> >>> >>>>suggested alternative IF X#1 THEN GOSUB 100 or IF X=1 ELSE GOSUB 100. >>>>Both >>>>are equally despicable. Either way the code is so obfuscated it is to be >>>>avoided at all cost! >>>> >>>>So why argue about how many angels can dance on the head of a pin when >>>>you >>>>cannot see the mountains in your molehills? It's like, is it better to >>>> >>>> >>>pick >>> >>> >>>>you nose in public with your right hand or your left hand...? >>>> >>>>So, while I jest about this, I do have an ounce of seriousness about it. >>>>Everybody is so "my way is better..." And it just isn't. I include my own >>>>style in this. My way is only better if you like it better. Flatter >>>>whomever you like. Copy them! And deal with the god awful code that is >>>>out >>>>there... >>>> >>>>This thread should be closed. >>>> >>>>PS: I wonder if I am the horrible guy who coded the nested OPEN >>>> >>>> >>>statements. >>> >>> >>>>I did do that once upon a time, long ago when I was a MADIC programmer. I >>>>was really hard core then. I don't do that anymore, but only because I am >>>>lazy. And I still don't have a problem with it. >>>> >>>> >>>> >>>> >>>> >>>>-Original Message- >>>>From: [EMAIL PROTECTED] >>>>[mailto:[EMAIL PROTECTED] On Behalf Of MAJ Programming >>>>Sent: Friday, July 27, 2007 9:09 PM >>>>To: u2-users@listserver.u2ug.org >>>>Subject: Re: [U2] RE: Cleaner Case Statement >>>> >>>>I think that CASE 1;Null is an old technique. If the prior conditions >>>> >>>> >>>don't >>> >>> >>>>prevail, then don't bother. Otherwise every IF statement with a THEN >>>>would >>>>have ELSE NULL. >>>> >>>>BTW, using IF X = 1 ELSE GOSUB 100 is also very hard to read. Sure it >>>>compiles but source code should be readable for the programmers who have >>>> >>>> >>>to >>> >>> >>>>visually interpet these things. EVERY IF should have an THEN as it's >>>>predominately a positive test instead of a negative test. Then use IF X # >>>> >>>> >>>1 >>> >>> >>>>THEN GOSUB 100. >>>> >>>> >>>>- Original Message - >>>>From: "Allen Egerton" <[EMAIL PROTECTED]> >>>>To: >>>>Sent: Wednesday, July 25, 2007 12:48 PM >>>>Subject: [U2] RE: Cleaner Case Statement >>>> >>>> >>>> >>>> >>>>>Bill Brutzman asked: >>>>> >>>>> >>>>> >>>>> >>>>>>How can this structure be cleaned-up? >>>>>> >>>>>> >>>>> >>>>> >>>>> >>>>> >>>>>> begin case >>>>>> case Ans = 'A' ; gosub Check.A >>>>>> case Ans = 'B' >>>>>> case Ans = '2' ; gosub Check.B >>>>>> end case >>>>>> >>>>>>so that the "gosub Check.B" command is not repeated. I have tried a >>>>>> >>>>>> >>>few >>> >>> >>>>>>alternatives without a victory. >>>>>> >>>>>> >>>>>Dunno if it's cleaner, but this is how I would code it... >>>>> >>>>>Begin Case >>>>> Case Ans eq "A" >>>>> gosub Check.A: >>>>> Case ((Ans EQ "B") OR (Ans EQ "2")) >>>>> gosub Check.B: >>>>> Case 1 >>>>> * Do nothing >>>>>End Case >>>>> >>>>>-- >>>>>Allen Egerton >>>>>aegerton at pobox dot com >>>>>--- >>>>>u2-users mailing list >>>>>u2-users@listserver.u2ug.org >>>>>To unsubscribe please visit http://listserver.u2ug.org/ >>>>> >>>>> >>>>--- >>>>u2-users mailing list >>>>u2-users@listserver.u2ug.org >>>>To unsubscribe please visit http://listserver.u2ug.org/ >>>>--- >>>>u2-users mailing list >>>>u2-users@listserver.u2ug.org >>>>To unsubscribe please visit http://listserver.u2ug.org/ >>>> >>>> >>>--- >>>u2-users mailing list >>>u2-users@listserver.u2ug.org >>>To unsubscribe please visit http://listserver.u2ug.org/ >>>--- >>>u2-users mailing list >>>u2-users@listserver.u2ug.org >>>To unsubscribe please visit http://listserver.u2ug.org/ >>> >>> >>--- >>u2-users mailing list >>u2-users@listserver.u2ug.org >>To unsubscribe please visit http://listserver.u2ug.org/ >> >> >--- >u2-users mailing list >u2-users@listserver.u2ug.org >To unsubscribe please visit http://listserver.u2ug.org/ > > > > -- Geoffrey Mitchell Programmer/Analyst Home Decorator's Collection 314-684-1062 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] UniData 7.1 vs. MS SQL 2005 performance
I don't have any idea what you are trying to say. A database should be a black box. You put data in and pull data out. The less you have to know about the details of what goes on inside, the better. You can easily benchmark two black box systems that perform the same function (with unknown implementations), and the results are totally relevant as a comparison of those two systems. Anthony Youngman wrote: Because the results are not (scientifically) reproducible. (Well, they are for that one implementation...) Because data storage is part of the Pick data model, we can be confident that benchmark results are valid across all (similar?) implementations. Because relational forbids knowing anything about the implementation, any benchmark is valid for that one configuration only. -- Geoffrey Mitchell Programmer/Analyst Home Decorator's Collection 314-684-1062 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] UniData 7.1 vs. MS SQL 2005 performance
Read Codd and & Date's rules. Can't remember which, but one of them says "the database user is not permitted to know how the database stores the data". In other words, empirical testing is FORBIDDEN. Seeing as empirical testing is *the* "sine qua non" of science, relational databases are, BY DEFINITION, totally unscientific. So, if you want a benchmark, relational database theory explicitly says "No way, Jose!" !!! How does not being able to know how the data is stored prohibit empirical testing? As long as you can provide inputs to a system and retrieve outputs you can perform empirical tests. -- Geoffrey Mitchell Programmer/Analyst Home Decorator's Collection 314-684-1062 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
[U2] Error using XML API's, UV 10.1.8, HP/UX
When attempting to call XDOMOpen, I get the following error: Program "TEST.WS": Line 23, Can't load "/mnt1/uv/bin/libxalan-c1_3.sl": shared lib error: No such file or directory Program "TEST.WS": Line 23, Can't load "/mnt1/uv/bin/libxalan-c1_3.sl": shared lib error: Not enough space Anyone seen this before? Any ideas? I have checked, and the Xalan library *is* there and appears to be globally readable and executable. -- Geoffrey Mitchell Programmer/Analyst Home Decorator's Collection 314-684-1062 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Question of permissions UV Linux
If the editor (or whatever you are using to create the files, or maybe uv itself, if you are creating them through a BASIC program) is owned by the "bin" group and is setgid, that would do it, I think. I doubt that UV is doing anything special with the group, but I could be wrong. Incidentally, I meant to send my reply to the list, but forgot about that "reply all" thing. So, I'm copying the list now... Jerry Banker wrote: >I just checked and none of the directories have a group of 'bin' they're >all part of the 'root' group all the way up to root (/). None of the >setgid are set on the directories. I did notice that all of the programs >in the ./uv/bin directory are part of the 'bin' group and some of them >have the setgid set which leads me to believe that UV uses the settings >of the programs in the ./uv/bin directory to set the group while in UV. >The user ID is set as the owner though. > >-Original Message- >From: Geoffrey Mitchell [mailto:[EMAIL PROTECTED] >Sent: Thursday, April 27, 2006 11:38 AM >To: Jerry Banker >Subject: Re: [U2] Question of permissions UV Linux > >Are you creating the files from unix in the same directory that they are > >being created in from UV? > >If not, it could be that the directory where your program source is >stored has setgid set, which would cause files created therein to have >the same group as the directory. > >Jerry Banker wrote: > > > >>This doesn't cause any problems but it puzzles me. None of our users >> >> >are > > >>set up in the 'bin' group they are all in the 'users' group. However, >>I've noticed the when we save a program source, while in UV, the group >>it's saved under is 'bin'. If I shell out of UV then save a file it is >>saved under the 'users' group. Can someone explain this behavior? >> >> >> >>Jerry >>--- >>u2-users mailing list >>u2-users@listserver.u2ug.org >>To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Basic statement
My guess would be that it is a literal equate. Search through the includes and see if you can find where it is equated. [EMAIL PROTECTED] wrote: >Are you sure it's not meant to go through a pre-compiler? > >Hth >Colin Alfke >Calgary Canada > > > >>-Original Message- >>From: Barry Rogen >> >> To all, >> >>We have 'new' programs from a package I need now >>support. There is a Basic statement that I have never seen in >>my 20+ years. Hopefully, one can shed a little light for me... >> >>CALL.TRANS.WRITE.SUB (that's a dot tween CALL and TRANS not a space) >> >> >--- >u2-users mailing list >u2-users@listserver.u2ug.org >To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Problem with JDBC and basic programs
Try replacing your READ's with READL's, or using TRANS(). In order to preserve the integrity of the transaction, Universe requires certain lock levels to be used within SQL transactions. If I remember correctly, both READL and TRANS will work, as will SQL selects. Jeff Marcos wrote: Hi all, We're experimenting with the Uni JDBC software and have come across an issue. *** java.sql.SQLException: Program "CREATE.MP.LOG": Line 36, FATAL: The locks necessary for database operations at the current isolation level (2) are not held by this process. *** The program mentioned (in the error) is initiated via a file index. We were just trying to write to a file (using Java & JDBC) which contains an index, that calls a program CREATE.MP.LOG. The program works fine in basic code both interactively and phantoms. The program contains OPEN's, READ's and initialisation of variables in a common block. I believe the line in question is an OPEN statement. Its difficulty to tell due to a high number of includes in the code. Line 36 doesn't necessarily mean line 36. Line 36 refers to (via VLIST) a complete section of code in the include. Universe Version : 10.1.14 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] [UD] Best practices
To me, this is an issue of readability and maintainability. If I read 'IF VOID = "" THEN DEPOSITED ELSE "*Voided*"', I can make a reasonable guess at what it is trying to do, without knowing anyghing about the file structure. If you use numeric references to fields, you will probably have to do some research to figure out what the heck the dictionary is tring to accomplish. Do your fellow developers (not to mention future developers and even yourself in 2 years when you've forgotten what the heck this file was for to begin with) a favor, and use the D-type field references in your I-type dictionaries. A corollary to this would be, "make sure you choose good names". Bill Haskett wrote: I've been converting dictionaries from a D3 dbms and am wondering what is considered "best practices" in virtual attribute design. Does one build standard "D"irect fields first then use these fields to build virtual attributes (I-Descriptors) or should one use the direct field references, "EXTRACT()" or "", in virtual attributes? DEPOSITED 001 D The date of the deposit. 002 2 VOID 001 D Is this a voided receipt? 002 12 DEPDATE 001 I The displayed deposit date (if not voided). 002 IF VOID = "" THEN DEPOSITED ELSE "*Voided*" or DEPDATE 001 I The displayed deposit date (if not voided). 002 EXTRACT( @RECORD, 2, 0, 0 ) ; EXTRACT( @RECORD, 12, 0, 0 ) ; IF @2 = "" THEN @1 ELSE "*Voided*" The obvious concern is if a direct field definition is renamed, then all references to the old field name need to be changed. I rarely rename a field, until I started exposing the data to other data sources and was forced to clean up the field names. So, hopefully, this won't be an issue in the future. Any thoughts. Bill Haskett --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] [UD] Calling Stored Procedures
I have successfully used a stored procedure on UniVerse (not UD). I have only called the procedure from a JDBC connection. When I try using the same statement at the console, I get 'Illegal verb "CALL".' It works fine from JDBC, though. *shrug* You might try using a parameter marker ("?") for your output parameter, as in 'CALL ROUTINE_NAME(?,'1234567'). That is what I'm doing and what I think the documentation indicates is correct. It's been a while since I have looked at all of this, so my memory is a little fuzzy. Vinson Lee wrote: We're currently running Unidata 6.0 and I have been trying unsuccessfully to call a Unidata subroutine (Stored procedure) via SQL. There isn't a whole lot of documentation on how to call a stored procedure. I'm using the following syntax: {CALL ROUTINE_NAME('','1234567')} The name lookup subroutine's first parameter is an output field of a person's name and the second parameter accepts the key value for a person. I have also tried defining the subroutine using VSG although the VSG documentation says this isn't necessary. I've tried from the sql> prompt (nothing happens) and the colon prompt (syntax error). If I try using Microsoft Access to call the stored procedure, I get the following message - "ODBC call failed [Ardent][Unidata ODBC Driver] Statement violates access rule:Connection is READ ONLY. (#0)" Has anyone successfully called stored procedures using SQL and what syntax should be used? Thanks. Vinson Lee San Diego Community College District [EMAIL PROTECTED] 619-388-1143 --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] True random select lists?
This doesn't work (at least on UV). The sample happens before the sort, not after. Otherwise, however, it's an ingenious idea. Incidentally, you could do the same thing (at least in UV) without creating a new dictionary, by using EVAL. i.e., SELECT MYFILE BY EVAL "RND(@TIME)" That way you don't need an extra bogus dictionary in every file you want to do this on. Christophe Marchal wrote: I'va made something like this on U2 too. Juste make a derived field that use RND(@TIME) to generate a random number. (maybe in a subroutine) And use select like this : SELECT MYFILE BY RANDOM_FIELD SAMPLE 100 But, as ordering record is made before sampling, it could take a little time if you have a lot of mp3 Don't know if other system has rnd() function... --- [This E-mail scanned for viruses by Declude Virus] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] [UV] Select Question
Selecting to a list variable is a VERY good idea. Personally, I regard selecting to the default select list in a program as very bad form, and using a numbered select list as only marginally better. Brian Leach's response has a good explanation of why, so I won't go into details. I'm not aware of any additional overhead, and can't imagine why there would be any, but I am not familiar with the implementation details, so I can't say authoritatively that there is none. I guess that some memory would need to be allocated to manage a list stored in a list variable, whereas it would already be allocated for the default list, but we're talking about clock cycles here. In practice, I know of no viable reason not to use list variables. [EMAIL PROTECTED] wrote: Hi all, Can someone tell me the diference between the following two examples of executing an external select? SELECT FILE TO LIST LOOP READNEXT ID FROM LIST ELSE ID = @AM UNTIL ID = @AM DO REPEAT SELECT FILE LOOP READNEXT ID ELSE ID = @AM UNTIL ID = @AM DO REPEAT Someone pointed out to me that there is overhead in selecting to a list that I need not be exposing myself to. Aren't they both kind of reading from a list somewhere anyways? Thanks --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ --- [This E-mail scanned for viruses by Declude Virus] --- [This E-mail scanned for viruses by Declude Virus] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] UV "PERFORM 'SELECT ...' " in I-Type {Unclassified}
Have you checked the output of the select when performed from inside the I-type? My guess is that it is generating a big ugly error, which is why you are getting no records back. From my experience, performing external selects from within an I-type is more than just a bad idea, it's illegal. The basic SELECT command works, as does the basic SELECTINDEX command. If you do either of these, you want to use a select variable so as to not interfere with any active select lists. You can also do SQL selects using the BCI, but I'm not sure if it's a good idea. One gotcha to watch out for if you choose to do this: if you pass @ID as a parameter from your I-type to your subroutine, that parameter is now a reference to Universe's internal @ID variable which is updated every time a select is executed! This can cause some very puzzling results when your parameter value starts mysteriously changing on you! Sometimes I really wish UV had pass by value. I'm also not sure what impact this changing of the @ID might have on other dictionaries in the same list statement. It seems like it could be bad, unless there is some type of stack employed for nested selects, which could be the case, but I don't know. Anyway, this is what I've discovered through a little experimentation. Use at your own risk. :-) HENDERSON MIKE, MR wrote: Folks, We have had a puzzling situation where a particular subprogram works differently when run from a test-harness from TCL, to when it is run as an I-Type subroutine. The sub-routine concerned is about three layers deep in the execution sequence:- Test-Harness does CALL A(), A does CALL PROBLEM() I-Type says SUBR("X",), and X does CALL A(), A does CALL PROBLEM() When you LIST the I-Type returns 'wrong' answers The programmer concerned eventually worked out that the problem was that, from the I-Type, a "PERFORM 'SELECT ' " ALWAYS returned no records, whereas the same select works correctly from the test harness. No, the were no select lists active at the time! The solution was to change the "PERFORM 'SELECT ' " to a Basic "SELECT " and weed out the unwanted records in an internal loop. It may well be that it has always been this way, the I-Type is new. UV 10.0, INformation flavour, Windows 2K3 Ideas, anyone? Thanks Mike The information contained in this Internet Email message is intended for the addressee only and may contain privileged information, but not necessarily the official views or opinions of the New Zealand Defence Force. If you are not the intended recipient you must not use, disclose, copy or distribute this message or the information in it. If you have received this message in error, please Email or telephone the sender immediately. --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ --- [This E-mail scanned for viruses by Declude Virus] --- [This E-mail scanned for viruses by Declude Virus] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Integer Conversion Codes
Does the dictionary in question have an SQL type assigned as INTEGER or INT (attribute 8 of the D or I type dict, 6 of an A type)? If so, change it to NUMERIC. Brutzman, Bill wrote: >The problem happens when I try to run a paragraph with an embedded UniBasic >program that uses a data dictionary with an "MD1" in it. > >The error is... > >UniVerse/SQL: Conversion "MD1" is incompatible with an INTEGER datatype > >The paragraph is... > > > >>ed VOC SHOW.PRESSES >> >> >0001: R >0002: USER.PL >0003: SHOW.PRESSES > > > > >>ed USER.PL SHOW.PRESSES >> >> > >0001: PA >0002: * GMS BM RELEASE 1.5 >0003: * SHOW.PRESSES - PRINT OR DISPLAY PRESS CODES >0004: CLR >0005: DISPLAY <<@(10,0),F(SYS.CTL,COMPANY.NAME,1),COMPANY.NAME>> >0006: RUN MT.BP PAR.PRINT >0007: DATA (10,4),"SHOW.PRESSES NOW RUNNING", >0008: DATA (10,6),"TIME STARTED: ",+ >0009: DATA TIME >0010: DATA END >0011: * >0012: SORT PRESS BY TONS _ >0013: ID.SUP PRESS_ >0014: CLASS SETUP TONNAGE ALIGNMENT SUBSTITUTES COMMENT _ >0015: HEADING "SHOW.PRESSES_ >0016:_ >0017: <>_ >0018: Page 'PLL' Machine Press Codes and Descriptions List >'LL'" _ >0019: DBL.SPC LPTR >0020: * >0021: RUN MT.BP PAR.PRINT >0022: DATA (10,8),"REPORT COMPLETED: ",+ >0023: DATA TIME >0024: DATA END > >DICT PRESS > Type & >Field.Field.FieldConversion..Column. >Output >Name..NumberDefinition...CodeHeading >Format > >@ID D0 PRESS >10L S > >PRESS D0 Press >5LS > >TONS D2 MD0 Tonnage >4RS > >ALIGNMENT D3 Alignment >10L S > >SUBSTITUTES D4 Subs >5LS > >COMMENT D5 Comment >20L S > >CLASS D6 Class >6LS > >SETUP D7 MD1 S/U >3RS > >VALID.ODA D8 >1LS >--- >u2-users mailing list >u2-users@listserver.u2ug.org >To unsubscribe please visit http://listserver.u2ug.org/ >--- >[This E-mail scanned for viruses by Declude Virus] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Software development - MVTools
Before you try to roll your own versions of all the various unix utilities you may need, check out this: http://unxutils.sourceforge.net/ Joe Walter wrote: >Thanks Colin. > >That sounds like a good approach - creating windows verions of the unix >commands >that is. > >I might be able to pull that off without making a full time job of getting >these >tools running on UV/Windows. > >Unfortunately, I just discovered some code that tries to create temp files for >each user 'on-the-fly' using unix commands to delete, create and move these >temp >files around so I'll have to sort all that stuff out and I just keep finding >more and more little "gotcha's" about trying to get this rig to fly on >UV/Windows but I'm gonna persist at it for a few days at least and see if I can >get it to run. > >joe > > > >>-Original Message- >>From: [EMAIL PROTECTED] >>[mailto:[EMAIL PROTECTED] On Behalf Of Alfke, Colin >>Sent: Wednesday, May 04, 2005 3:03 PM >>To: u2-users@listserver.u2ug.org >>Subject: RE: [U2] Software development - MVTools >> >>Sorry, I haven't used MVTools. There are a couple of things >>you can do: >> >>1. Create a windows version of the unix commands. Example: >>ED LVDIR WHOAMI.BAT >>Top of "WHOAMI.BAT" >>001: ECHO %USERNAME% >>This is a bat file in the directory that gets shelled to that >>provides the user name. >> >>2. Load something like MKS Toolkit or Cygwin that will >>emulate unix for you. >> >>3. Tweak the shell commands as required. >> >>Good luck >>Colin Alfke >>Calgary, Canada >> >> >> >>>-Original Message- >>>From: Joe Walter >>> >>> >>> >>[snip] >> >> >>>i'm having big trouble getting them installed and running on >>> >>> >>Universe. >> >> >>>it quickly became apparent to me that they were writtin to work on >>>Universe running on top of Unix not UV/Windows. it's trying to shell >>>out and execute 'whoami' for instance. >>> >>> >>--- >>u2-users mailing list >>u2-users@listserver.u2ug.org >>To unsubscribe please visit http://listserver.u2ug.org/ >> >> >--- >u2-users mailing list >u2-users@listserver.u2ug.org >To unsubscribe please visit http://listserver.u2ug.org/ >--- >[This E-mail scanned for viruses by Declude Virus] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Installing Easysoft ODBC-ODBC-Bridge on AIX
Try doing "echo $LIBPATH" before and after setting it. I think that you will see your problem. Single quotes, in most shells I know, prevent variable expansion. If you don't know what I mean, you will after you do the echo's. Geoff Metherall, Arthur wrote: I'm trying to install the Easysoft ODBC-ODBC-Bridge on an AIX system. Has anyone done this? When I define LIBPATH with the Easysoft libraries, for the Easysoft tests to work, UniData won't run. $ LIBPATH='$LIBPATH:/usr/local/easysoft/lib:/usr/local/easysoft/oob/client:/usr/local/easysoft/unixODBC/lib:/usr/lib:/lib' $ export LIBPATH $ udt exec(): 0509-036 Cannot load program udt because of the following errors: 0509-150 Dependent module /usr/local/easysoft/unixODBC/lib/libodbc.a(odbc.so) could not be loaded. 0509-152 Member odbc.so is not found in archive I know on our old Tru64 system, running a free HP DataDirect ODBC drivers, I had to recompile UniData. Would I do the same on AIX adding the Easysoft libraries to the makeudt? Thanks, Arthur - - - - - - - - - - Arthur Metherall Courier Corporation - - - - - - - - - - --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ --- [This E-mail scanned for viruses by Declude Virus] --- [This E-mail scanned for viruses by Declude Virus] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] UV Triggers
The correct syntax should be: CREATE.TRIGGER trigger_name [BEFORE | AFTER] UPDATE ON file_name FOR EACH ROW CALLING 'subroutine'; Note the semi-colon. All SQL commands end with one. Failure to include it will result in the "SQL+" prompt that you got. The file does not have to be an SQL table, but it cannot be a type 1 or type 19 file (it must have a header to put SICA information in). Also, your trigger subroutine must be globally cataloged. See thread here: http://www.indexinfocus.com/dl/u2list/200207/35152.html Kevin King wrote: I am making my first foray into Universe triggers having knowledge only of how it works with Unidata and the Universe documentation, and am having a devil of a time. Is it a requirement that in Universe, the file must be created via SQL in order to put triggers on it? And then what of this CREATE TRIGGER syntax? The documentation says: CREATE TRIGGER trigger_name [BEFORE | AFTER] UPDATE ...but it doesn't nominate the file where the trigger is to be deployed. I found an example elsewhere that has a bit more syntax: CREATE.TRIGGER trigger_name [BEFORE | AFTER] UPDATE ON file_name FOR EACH ROW But entering that leaves me at a SQL+ prompt and when I it gives me a message that says "You must create a schema before you may create SQL tables.". My trigger subroutine is compiled and catalogued according to the documentation, and I'd really like to test it, but ... these issues keep getting in the way. Anybody care to launch a rescue? -Kevin HYPERLINK "mailto:[EMAIL PROTECTED]"[EMAIL PROTECTED] http://www.PrecisOnline.com --- [This E-mail scanned for viruses by Declude Virus] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Unique Ids
You can do it with a Universe SQL table (Make MV values unique, that is). In traditional UV tables, however, you are correct. The uniqueness in this case is a combination of the primary key and the MV position. I would also guess that the person in question was referring to multivalues since traditional MV tables (or Universe anyway) have no concept of a controlling attribute (or primary key) of an association. Craig Bennett wrote: David, I just came out of a meeting where it was stated that MV databases allow non-unique keys. perhaps the person was refering to multivalues? If you were modelling parents and children in an SQL database you might use a PARENTS table and a CHILDREN table. Usually neither table would allow duplicate keys. In MV you might have a PARENTS file which had a multivalued attribute CHILDREN. (I don't think) there is a way to make the database enforce a rule which makes all the children of a parent unique, except using triggers. Craig --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ --- [This E-mail scanned for viruses by Declude Virus] --- [This E-mail scanned for viruses by Declude Virus] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Universe CREATE SCHEMA
To the best of my knowledge, you can use SQL in ANY account, barring anything unusual in the account (most of our legacy accounts have a non-default VOC entry for ";" which prevents the use of SQL on them, and is quite annoying). If you have DICT's that cause problems for SQL, then the method you describe would be a reasonable work-around (though I would be wary of using any such setup in a production environment...having two different sets of dictionaries for the same data is asking for trouble). One thing to keep in mind is that there is no way to access sub-values in Universe using SQL. Now, if you are talking about *converting* the tables in question to SQL tables (which allows you to use constraints, but, as far as I can think of, that's the only benefit), you would probably want to make a complete copy of the data (or a subset adequate for testing/playing around with). Bob Woodward wrote: >So if I have an account and want to access the data from my SQLPLAY >account, how do I set this up so I can use SQL in SQLPLAY but not change >the other accounts access? Can I create VOC entries that point to the >same DATA files but have different DICT's? Is that enough? > > > >>-Original Message- >>From: [EMAIL PROTECTED] [mailto:owner-u2- >>[EMAIL PROTECTED] On Behalf Of Richard Taylor >>Sent: Friday, February 04, 2005 10:22 AM >>To: u2-users@listserver.u2ug.org >>Subject: RE: [U2] Universe CREATE SCHEMA >> >>You are correct. I made an assumption regarding what he was doing. I >>know, I know assuming anything is not great practice. I humbly beg >>forgiveness from the group :) >> >> >>-Original Message- >>From: [EMAIL PROTECTED] >>[mailto:[EMAIL PROTECTED] On Behalf Of >>[EMAIL PROTECTED] >>Sent: Friday, February 04, 2005 11:02 AM >>To: u2-users@listserver.u2ug.org >>Subject: Re: [U2] Universe CREATE SCHEMA >> >>Richard Taylor wrote: >> >> >> >>>One other thing to watch out for is when you make an account into a >>> >>> >>Schema >> >> >>>normal, non-sql users, will not have access to the files anymore. If >>> >>> >you > > >>>want to use the account as a Schema and as a regular UV account you >>> >>> >can > > >>do >> >> >>>so but you will need to grant permissions to the non-sql defined >>> >>> >users. > > >>> >>> >>> >>This is only true if you *convert* an account to a schema. Merely >>creating a schema on an account does *NOT* convert existing files to >> >> >SQL > > >>tables. You will still be able to access your existing traditional >>Universe files as you always have. >>--- >>[This E-mail scanned for viruses by Declude Virus] >>--- >>u2-users mailing list >>u2-users@listserver.u2ug.org >>To unsubscribe please visit http://listserver.u2ug.org/ >>--- >>u2-users mailing list >>u2-users@listserver.u2ug.org >>To unsubscribe please visit http://listserver.u2ug.org/ >> >> >--- >u2-users mailing list >u2-users@listserver.u2ug.org >To unsubscribe please visit http://listserver.u2ug.org/ >--- >[This E-mail scanned for viruses by Declude Virus] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Universe CREATE SCHEMA
Richard Taylor wrote: One other thing to watch out for is when you make an account into a Schema normal, non-sql users, will not have access to the files anymore. If you want to use the account as a Schema and as a regular UV account you can do so but you will need to grant permissions to the non-sql defined users. This is only true if you *convert* an account to a schema. Merely creating a schema on an account does *NOT* convert existing files to SQL tables. You will still be able to access your existing traditional Universe files as you always have. --- [This E-mail scanned for viruses by Declude Virus] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Universe CREATE SCHEMA
List UV_USERS to find the initially configured administrator user. On our system it is "uvsql". I'm not sure if that is a standard or something that we setup. At any rate, if you haven't done anything with SQL, there should only be one user in there, but you are looking for someone with DBAuth privelege. Once logged in as this user, you should be able to grant CONNECT to whoever. See the Universe SQL reference (under the GRANT command) for details on priveleges required for different operations. Bob Woodward wrote: Hi folks. I'm trying to get my feet wet with SQL and I've got what seems like a simple question to ask but one that is proving to be rather difficult to find an answer to. I'm wanting to issue a CREATE SCHEMA command but when I do I get an error message that I'm not an SQL user. How do I go about setting myself up as an SQL user? I'm logged into our domain and my UID is in the Administrators group so I should have rights to just about everything. The environment is Win2003 server, UV 10.1.3. I've searched FAQ's, PDF's, DOC's, websites, Google and still am having no luck finding anything that tells me how to set myself up as an SQL user. Any direction would be greatly appreciated. BobW --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ --- [This E-mail scanned for viruses by Declude Virus] --- [This E-mail scanned for viruses by Declude Virus] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] [UV] Transaction Compile Failure
The help for END TRANSACTION says: Use the END TRANSACTION statement to specify where processing is to continue after a transaction ends. This implies to me that there must be exactly one end transaction for each begin transaction. It also implies that if you do a rollback, execution will resume at your END TRANSACTION statement. It seems to me that this is a pretty lousy syntax, as it seems to support only one active transaction (otherwise, how do you know which one you are acting on?), and, in fact, more than one trasaction in the same program/subroutine could make things pretty confusing. Keep in mind that I haven't tested or tried to use any of this, but I would think you could replace your CONTINUE's with ROLLBACK's, and get rid of your "IF @TRANSACTION" block, and it should work. Perry Taylor wrote: Logically there *is* an END TRANSACTION at two places. One at the bottom of the loop.. COMMIT END TRANSACTION And the other at the top of the loop... IF @TRANSACTION THEN ROLLBACK END TRANSACTION END This being the case it would seem to me that the compiler cannot deal with a transaction not being in purely straight-line code. The only alternative I see at this point is to put an explicit ROLLBACK / END TRANSACTION at every point along the loop where I would need to bail out of the transaction. Seems to reduce the usefulness of @TRANSACTION and structured programming. Any other suggestion? Perry -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Jerry Banker Sent: Tuesday, February 01, 2005 10:04 AM To: u2-users@listserver.u2ug.org Subject: Re: [U2] [UV] Transaction Compile Failure END TRANSACTION is at the wrong level in the clip you sent us. Here is an example from the manual. BEGIN TRANSACTION READU data1 FROM file1,rec1 ELSE ROLLBACK READU data2 FROM file2,rec2, ELSE ROLLBACK WRITE new.data1 ON file1,rec1 ELSE ROLLBACK WRITE new.data2 ON file2,rec2 ELSE ROLLBACK COMMIT WORK END TRANSACTION - Original Message - From: "Perry Taylor" <[EMAIL PROTECTED]> To: Sent: Tuesday, February 01, 2005 9:39 AM Subject: [U2] [UV] Transaction Compile Failure I have an archiving program that I am porting from another platform which I cannot get to compile on UniVerse. I have included a stripped-down test version incorporating the basics below. The compiler seems to have issue with IF @TRANSACTION THEN ROLLBACK END TRANSACTION RELEASE F.HDR, REC.ID END ... as indicated by the compiler message... Compiling: Source = 'PBP/PTEST', Object = 'PBP.O/PTEST' * 13ROLLBACK ^ Cannot COMMIT or ROLLBACK - no transaction. 14END TRANSACTION ^ "TRANSACTION" unexpected, Was expecting: ';', End of Line 19 UNTIL LEN(ERRMSG) DO ^ WARNING: Text found after final END statement 2 Errors detected, No Object Code Produced. A guess is that the compiler is eating up the END from END TRANSACTION to satisfy IF @TRANSACTION THEN but not sure about that. Anyone have any ideas on what's going on here? Thanks. Perry Taylor -- ERRMSG = '' REC.ID = '' OPEN 'HDR' TO F.HDR ELSE STOP 201,'HDR' OPEN 'HDR.ARCHIVE' TO F.HDR.ARCHIVE ELSE STOP 201,'HDR.ARCHIVE' OPEN 'DET' TO F.DET ELSE STOP 201,'DET' OPEN 'DET.ARCHIVE' TO F.DET.ARCHIVE ELSE STOP 201,'DET.ARCHIVE' SELECT F.HDR LOOP IF @TRANSACTION THEN ROLLBACK END TRANSACTION RELEASE F.HDR, REC.ID END UNTIL LEN(ERRMSG) DO READNEXT REC.ID ELSE EXIT NULL; * SEE IF THE RECORD IS OLD ENOUGH TO ARCHIVE READV HDR.DATE FROM F.HDR, REC.ID, 1 ELSE CRT REC.ID: ' not found in HDR file.' RETURN END IF HDR.DATE < DATE() - 90 ELSE RETURN NULL; * OK WE HAVE A KEEPER, LET'S READ THE ENTIRE HDR RECORD, NULL; * TAKING A LOCK FOR CONTROL, AND ARCHIVE IT ALONG WITH THE NULL; * DETAIL RECORD. BEGIN TRANSACTION READU HDR FROM F.HDR, REC.ID LOCKED CRT REC.ID: ' locked, record skipped.' RETURN END ELSE NULL; * UNLIKELY BUT WE'LL JUST GO ON TO THE NEXT ONE. CRT REC.ID: ' not found in HDR file.' RETURN END READ DET FROM F.DET, REC.ID ELSE NULL; * UNLIKELY BUT WE'LL JUST GO ON TO THE NEXT ONE. CRT REC.ID: ' not found in DET file.' RETURN END WRITE DET ON F.DET.ARCHIVE, REC.ID ON ERROR NULL; * THIS IS SERIOUS ENOUGH TO TERMINATE THE PROCESS ERRMSG = 'Cannot write ': REC.ID: ' to DET.ARCHIVE file, STATUS=': STATUS() RETURN END DELETE F.DET.ARCHIVE, REC.ID ON ERROR NULL; * THIS IS SERIOUS ENOUGH TO TERMINATE THE PROCESS ERRMSG = 'Cannot delete ': REC.ID: ' from DET file, STATUS=': STATUS() RETURN END WRITE HDR ON F.HDR.ARCHIVE, REC.ID ON ERROR NULL; * THIS IS SERIOUS ENOUGH TO TERMINATE THE PROCESS ERRMSG = 'Cannot write ': REC.ID: ' to HDR.ARCHIVE file, STATUS=':
[U2] Re: Weird problem: SQL multipart primary key + triggers (CORRECTION)
Actually, the separator becomes a null character (char zero), not a text mark On Wed, 2004-08-11 at 17:31, Geoffrey Mitchell wrote: > OK, this is a strange one: > > Platform: UV 10.0.16 / HP-UX 11.11 > > I have an SQL table with a multi-part primary key for which I have > specified an alternate separator (dealing wiht those text marks in the > key is annoying). > > This works fine...until I create a trigger (any insert/update trigger, > at least...have not tested exhaustively) on the table. While the > trigger is there, it inserts the records with text mark separators > instead of my alternate separator. If I drop the trigger, the problem > goes away. > > Has anyone else witnessed this? > > -- > Geoffrey Mitchell 314-684-1062 > Programmer/Analyst [EMAIL PROTECTED] > Knights Direct -- Geoffrey Mitchell 314-684-1062 Programmer/Analyst [EMAIL PROTECTED] Knights Direct --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
[U2] Weird problem: SQL multipart primary key + triggers
OK, this is a strange one: Platform: UV 10.0.16 / HP-UX 11.11 I have an SQL table with a multi-part primary key for which I have specified an alternate separator (dealing wiht those text marks in the key is annoying). This works fine...until I create a trigger (any insert/update trigger, at least...have not tested exhaustively) on the table. While the trigger is there, it inserts the records with text mark separators instead of my alternate separator. If I drop the trigger, the problem goes away. Has anyone else witnessed this? -- Geoffrey Mitchell 314-684-1062 Programmer/Analyst [EMAIL PROTECTED] Knights Direct --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] Univere Login Security
If this is a *nix machine, scrap the IP based authentication, lockout telnet and use ssh with public key based authentication. If it's a windoze machine, it's already insecure by definition, so why worry about it? :-) On Wed, 2004-08-04 at 11:45, [EMAIL PROTECTED] wrote: > Hi all, > A buddy of mine wants me to be able to login to his computer on a routine basis to > give him a hand with some development. Currently, he has a process that matches the > ip address to the username and if it does not match, the user gets booted. The > problem that I have is that my ip address is dynamic. Given the fact that this is a > unix machine that I will be logging into, I assume that I cannot use a mac address > or anything like that, Can someone out there give me a simple and effective > solution for this? > > Thanks, > > Scott > --- > u2-users mailing list > [EMAIL PROTECTED] > To unsubscribe please visit http://listserver.u2ug.org/ > --- > [This E-mail scanned for viruses by Declude Virus] -- Geoffrey Mitchell 314-684-1062 Programmer/Analyst [EMAIL PROTECTED] Knights Direct --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] [UV] 10.x File Triggers
Um, you don't pass anything in. You write the trigger subroutine which is automatically called by Universe when events, as defined in the CREATE TRIGGER statement, occur. From my experience, for non-SQL files, both the schema and the table name are passed in as the operating system path to the file (UV 10.0.16, HP/UX). On Mon, 2004-08-02 at 14:12, David Scoggins wrote: > Thanks for the link - now bookmarked. One question - when you create file > triggers on non-"SQLized" files, what do you use for the schema name > parameter - the account name? Or can you pass in an empty string in that > case? > > David Scoggins > IT Analyst > CornerStone Propane > mailto:[EMAIL PROTECTED] > > > -----Original Message- > > From: Geoffrey Mitchell [mailto:[EMAIL PROTECTED] > > Sent: Monday, August 02, 2004 8:27 AM > > To: [EMAIL PROTECTED] > > Subject: Re: [U2] [UV] 10.x File Triggers > > > > Search the list archives. There's a bunch of stuff out there. > > > > This is a good place to start: > > http://www.indexinfocus.com/dl/u2list/200210/40370.html > > > > On Mon, 2004-08-02 at 09:09, Perry Taylor wrote: > > > > > Does anyone know of a good discussion of or have some > > examples of how to > > > implement file triggers on uniVerse? I've read the > > sections on triggers > > > in both the UniVerse SQL Reference and the UniVerse System > > Description > > > manuals but still can't get it straight how to put it all together. > > > > > > Thanks. > > > > > > Perry Taylor > --- > u2-users mailing list > [EMAIL PROTECTED] > To unsubscribe please visit http://listserver.u2ug.org/ > --- > [This E-mail scanned for viruses by Declude Virus] -- Geoffrey Mitchell 314-684-1062 Programmer/Analyst [EMAIL PROTECTED] Knights Direct --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] [UV] 10.x File Triggers
You can search from www.indexinfocus.com. I'm not sure why there is no archives link on the U2UG site. At least once every couple weeks, someone posts asking "where are the archives?". On Mon, 2004-08-02 at 11:24, Perry Taylor wrote: > Thanks Geoffrey! > > But... Where did you come up with that url? I tried searching on > u2ug.org but came up empty handed. > > Perry > > -Original Message- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Geoffrey > Mitchell > Sent: Monday, August 02, 2004 9:27 AM > To: [EMAIL PROTECTED] > Subject: Re: [U2] [UV] 10.x File Triggers > > Search the list archives. There's a bunch of stuff out there. > > This is a good place to start: > http://www.indexinfocus.com/dl/u2list/200210/40370.html > > On Mon, 2004-08-02 at 09:09, Perry Taylor wrote: > > > Does anyone know of a good discussion of or have some examples of how > > to implement file triggers on uniVerse? I've read the sections on > > triggers in both the UniVerse SQL Reference and the UniVerse System > > Description manuals but still can't get it straight how to put it all > together. > > > > Thanks. > > > > Perry Taylor > > > > > > CONFIDENTIALITY NOTICE: This e-mail message, including any > > attachments, is for the sole use of the intended recipient(s) and may > > contain confidential and privileged information. Any unauthorized > > review, use, disclosure or distribution is prohibited. ZirMed, Inc. > > has strict policies regarding the content of e-mail communications, > > specifically Protected Health Information, any communications > > containing such material will be returned to the originating party > > with such advisement noted. If you are not the intended recipient, > > please contact the sender by reply e-mail and destroy all copies of > the original message. > > --- > > u2-users mailing list > > [EMAIL PROTECTED] > > To unsubscribe please visit http://listserver.u2ug.org/ > > --- > > [This E-mail scanned for viruses by Declude Virus] -- Geoffrey Mitchell 314-684-1062 Programmer/Analyst [EMAIL PROTECTED] Knights Direct --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] [UV] 10.x File Triggers
Search the list archives. There's a bunch of stuff out there. This is a good place to start: http://www.indexinfocus.com/dl/u2list/200210/40370.html On Mon, 2004-08-02 at 09:09, Perry Taylor wrote: > Does anyone know of a good discussion of or have some examples of how to > implement file triggers on uniVerse? I've read the sections on triggers > in both the UniVerse SQL Reference and the UniVerse System Description > manuals but still can't get it straight how to put it all together. > > Thanks. > > Perry Taylor > > > CONFIDENTIALITY NOTICE: This e-mail message, including any attachments, is for > the sole use of the intended recipient(s) and may contain confidential and > privileged information. Any unauthorized review, use, disclosure or > distribution is prohibited. ZirMed, Inc. has strict policies regarding the > content of e-mail communications, specifically Protected Health Information, > any communications containing such material will be returned to the > originating party with such advisement noted. If you are not the intended > recipient, please contact the sender by reply e-mail and destroy all copies of > the original message. > --- > u2-users mailing list > [EMAIL PROTECTED] > To unsubscribe please visit http://listserver.u2ug.org/ > --- > [This E-mail scanned for viruses by Declude Virus] -- Geoffrey Mitchell 314-684-1062 Programmer/Analyst [EMAIL PROTECTED] Knights Direct --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
[OT] Re: [U2] smbmount problem...
Did you try passing dmask=0775 to smbmount? As I read the man page, that sounds like what you want, but I don't have a windows share handy to try it with. You may need fmask=0775 as well for the files to be writeable, as well as the directories. This is under RedHat 9. YMMV Probably a mask of 000 would be rejected as invalid since the file(s) would be totally useless, but I'm just guessing. A *nix file always has exactly one owner. On Mon, 2004-07-19 at 16:31, George Gallen wrote: > I'm trying to write to a PC share from Unix. > > I'm using smbmount to mount the PC share. > no problem there. > well sort of... > > Everytime the share mounts, the permissions of the > are Owner = rwx > Grp = r x > Others = r x > > how can I get it to set the Grp rights to be rwx? > OR how can I get it to allow more than one Owner? > > chmod/chgrp have NO EFFECT on the permissions > I tried setting the mask to 000 in smbmount > and that doesn't seem to do any different either. > > The problem is if one user (or root) sets up the mount point, > no one else can write to that share except the user. > > Any Ideas? > > George > --- > u2-users mailing list > [EMAIL PROTECTED] > To unsubscribe please visit http://listserver.u2ug.org/ > --- > [This E-mail scanned for viruses by Declude Virus] -- Geoffrey Mitchell 314-684-1062 Programmer/Analyst [EMAIL PROTECTED] Knights Direct --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] Listing contents of archives
You need a "-" at the end to tell tar to read from standard input: /sws/scott: uncompress -c Diver050704.TAR.Z | tar tvf - On Wed, 2004-06-16 at 15:54, [EMAIL PROTECTED] wrote: > What am I missing? > > /sws/scott: uncompress -c Diver050704.TAR.Z | tar tvf > > tar: usage tar [-]{txruc}[eONvVwAfblhm{op}][0-7[lmh]] [tapefile] [blocksize] fi > le1 file2... > > > > > Is there a way of listing the contents of the compresses tar without > > having > to actually uncompress then extract? > > > > Try uncompress -c [filename].Z | tar tv > > > > Piers > > --- > > u2-users mailing list > > [EMAIL PROTECTED] > > To unsubscribe please visit http://listserver.u2ug.org/ > --- > u2-users mailing list > [EMAIL PROTECTED] > To unsubscribe please visit http://listserver.u2ug.org/ > --- > [This E-mail scanned for viruses by Declude Virus] -- Geoffrey Mitchell 314-684-1062 Programmer/Analyst [EMAIL PROTECTED] Knights Direct --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
Re: [U2] [UV] CONVERT.SQL (UV files & SQL tables)
Well, you don't HAVE to convert your files to SQL tables to access them via SQL. By default, you should be able to run any SQL statement against any UniVerse file. To restrict to select access for one or more tables, you can use the HS_FILE_ACCESS file. This is documented in the Using the IBM JDBC Driver for UniData and UniVerse manual, and maybe elsewhere It works for ODBC as well... If you WANT to convert your files to SQL tables, you should be able to grant privileges to PUBLIC, rather than individually granting privileges to each user. On Thu, 2004-06-03 at 00:53, [EMAIL PROTECTED] wrote: > * Note: I'm resending this posting as after almost 3 hours my first attempt > still hasn't appeared back in my inbox. > -- > Our UniVerse files on our production unix box all have permissions set so > owner and group both have read & write access. > Our users are all locked into menus and can only access the files via the > application programs. > > I would like to make one of these files accessible (SELECT only) to the > outside world via SQL. > > If I use CONVERT.SQL to convert the file into a table and then use GRANT to > set connect & select access to a specific user, that user can then connect & > perform SQL selects on the file. > > BUT - the rest of our users can no longer access the file via regular > UniVerse commands (LIST statements, BASIC reads and writes, etc). > > It looks like I would have to GRANT connect, select, update, delete & insert > on the table to EVERY regular UniVerse user just so they can continue to > access this file normally. > > Is there a better (ie. easier) way to achieve this? > > Am I doing something wrong? > > I suppose I could make a copy of the file in question which would only be > used via SQL, but that would present further complications. > > AdrianW > > > Disclaimer. This e-mail is private and confidential. If you are not the > intended recipient, please advise us by return e-mail immediately, and > delete the e-mail and any attachments without using or disclosing the > contents in any way. The views expressed in this e-mail are those of the > author, and do not represent those of this company unless this is clearly > indicated. You should scan this e-mail and any attachments for viruses. This > company accepts no liability for any direct or indirect damage or loss > resulting from the use of any attachments to this e-mail. > --- > u2-users mailing list > [EMAIL PROTECTED] > To unsubscribe please visit http://listserver.u2ug.org/ > --- > [This E-mail scanned for viruses by Declude Virus] -- Geoffrey Mitchell 314-684-1062 Programmer/Analyst [EMAIL PROTECTED] Knights Direct --- u2-users mailing list [EMAIL PROTECTED] To unsubscribe please visit http://listserver.u2ug.org/
[U2] Re: [OT] unsubscribe
There are unsubscribe instructions on the web page referenced at the bottom of list emails. It would probably be nice if they were included directly in the email footer, though, for the benefit of those few folks without web access. Here are the instructions from the site: 11) Opt In/Out Subscription to [EMAIL PROTECTED] is only by your request. Nobody will EVER be added to the subscriber database unless they so request. To subscribe to the list send an email to [EMAIL PROTECTED] with subscribe u2-users in the body of the email. You can subscribe to the digest with subscribe u2-users-digest. You may unsubscribe from the list or digest unsubscribe u2-users or unsubscribe u2-users-digest, again in the body of an email to [EMAIL PROTECTED] On Tue, 2004-05-11 at 09:37, Gordon Glorfield wrote: > I thought you had to send subscribe/unsubscribe requests to the major domo. > Did that change? > > Gordon J. Glorfield > Sr. Applications Developer > MAMSI (A UnitedHealth Company) > 301-360-8839 > > > > > -Original Message- > > From: [EMAIL PROTECTED] > > [mailto:[EMAIL PROTECTED] On Behalf Of > > Sodhi Arvind - Princeton > > Sent: Tuesday, May 11, 2004 10:06 AM > > To: [EMAIL PROTECTED] > > Subject: [U2] unsubscribe > > > > > > unsubscribe > > --- > > u2-users mailing list > > [EMAIL PROTECTED] http://www.u2ug.org/listinfo/u2-users > > > > > This e-mail, including attachments, may include confidential and/or > proprietary information, and may be used only by the person or entity to > which it is addressed. If the reader of this e-mail is not the intended > recipient or his or her authorized agent, the reader is hereby notified > that any dissemination, distribution or copying of this e-mail is > prohibited. If you have received this e-mail in error, please notify the > sender by replying to this message and delete this e-mail immediately. > --- > u2-users mailing list > [EMAIL PROTECTED] > http://www.u2ug.org/listinfo/u2-users > --- > [This E-mail scanned for viruses by Declude Virus] -- Geoffrey Mitchell 314-684-1062 Programmer/Analyst [EMAIL PROTECTED] Knights Direct --- u2-users mailing list [EMAIL PROTECTED] http://www.u2ug.org/listinfo/u2-users