*** Mike1971 has joined #gnuenterprise anyone online? I would like to talk to someone about helping out with gnuenterprise. If you could email me @ mmattaway@sbcglobal.net with times you are likely to be on. GMT time is okay *** Mike1971 has left #gnuenterprise *** Mike1971 has joined #gnuenterprise *** Mike1971 has left #gnuenterprise *** titopbs has quit IRC *** reinhard has joined #gnuenterprise *** johannesV has joined #gnuenterprise * reinhard is sending mail to Mike1971 * ajmitch wanders back in hi reinhard hi ajmitch *** kilo has joined #gnuenterprise good morning kilo good morning hi reinhard -17C... wow nice & toasty warm time to dig out the beach toys... *** btami has joined #gnuenterprise *** btami has quit IRC *** jamest has joined #gnuenterprise *** kilo has quit IRC *** johannesV has quit IRC *** johannesV has joined #gnuenterprise oh my oh my today is documentation day *** lekma has joined #gnuenterprise hi everyone Today we are expecting 1 to 2 feet of snow. Lots of plowing tonight. reinhard: is the http/xmlrpc server threaded? how can i know?? I am quite sure the server i not threaded s/i/is/ ok are there any known risk inthreading the server?? i would like to try and see if it speeds up a bit I have no idea, I have no experience in multithreaded applications but I would be surprised if appserver was thread safe the way it is now *** jcater has joined #gnuenterprise *** johannesV_ has joined #gnuenterprise *** johannesV has quit IRC *** wendall911 has joined #gnuenterprise *** titopbs has joined #gnuenterprise jamest, jcater: any comments on the debug level question? i sent an email i was thinking the binary thing too 1 2 4 8 *** titopbs has quit IRC so i can do debug-level=5 and get 1 and 4 hmmm what about 1 to 9 and you can debug-level=123456789 ? or debug-level=1568 seems like I didn't receive your mail got it now (and answered ) we wouldn't have any flag that wasn't a power of 2 1 2 4 8 16 32 64 128 etc etc that or debug-level=1,3,4,7 I like the latter better you don't have to use a desktop calculator to call a prog with the correct debug level ;-) lol as long as they can be comma seperated i don't want 12367 to be 1 2 3 6 and 7 so you wanto to go higher than 9? because here I may want to use 10 11 12 13 14 for ajrs specific debuging in my common based internal apps *** btami has joined #gnuenterprise and it'd be nice to be able to seperate them from the gnue stuff as now i have to read thru it all jamest: the idea was that you could use 1 to 6 for everything based on common in fact, i have an ajrs common too so it may be nicer to do usually the apps would have lower debug levels than the libraries 1-10: gnue er 1-9 gnue 10-19 - ajrs common (at least that would look logical to me) 20-29 for app specific stuff i'm thinking out loud fwiw well, I'm ok with comma separated, too and what are we really talking about wrt coding a split(debug_level,',') but then I'd like to have --debug-level=1-7 :) and don't forget instead of --debug-level=1,2,3,4,5,6,7, --debug-level=1-5,6,8-15 er right somthing like that but I take it you all generally agree with the need/wish to have a concept of debug levels *meaning* something? I mean oh yes i don't like the current setup but it worked ok currently --debug-level=1 spits out tons of messages most of which I don't want to see at all right i'm always wading thru it myself :) something deep in common changing the option should be cake so my idea to have rising debug levels for "deeper" functions it was redoing on the debug lines in common and gnue-* that scared me away :) I missed this conversation if you want I can change the debug code in common today jcater: sorry too late, already finished everything as I want to give something back j/k jamest: you mean parsing the --debug-level option? but my #1 task of input masks are now on the back burner as i had a 132 drop wiring project dumped on me reinhard: yes it's minor i know that but it's something :) jamest: that would be cool at one time, I considered something more complex for debugging while coding *** holycow has joined #gnuenterprise like a --debug-level-config=myfile and in myfile, I could have gnue.common.*: 10 *:0 reinhard: i say we beat him with a stick something like that but never did anything about it :) something like that? ok, how about a bat then but we know in GDebug the module I was thinking in terms of when I'm working on the QT driver I want deep levels of debugging but don't want dbdriver levels jamest: then you would be ok with me bumping all debug levels in common up to at least 7 for now? jcater: this is a really cool idea * jcater goes back to his hole *but* I think it is overkill it would be overkill for average user/developer I mean you can always grep the debug output true wouldn't that require each gdebug print to classify itself? jamest:no we have that info if you look at debug output and also for temporary debugging (when you are realling huntig bugs) my idea was to use that reserved level of 2 we print the module name in brackets doh! i knew that we've split that to only get the last part of it i'm slow but all of it is available currently we print the filename in brackets (IIRC) not the modulename but that change wouldn't impact what we're talking about would it? i mean that config file would be a filter *** titopbs has joined #gnuenterprise jamest, yes, my idea is independent so ignore me :) reinhard: unless something has changed radically i'll have the debug code changed today ok fwiw gack! jamest is coding? johannesV_ has yesterday added two functions to generate "enter function" and "leave function" style debug messages wtf? yo yo yo very funny mr cater i think i actually commited a change like a week ago my Ubuntu install here failed at work and now I have to sudo apt-get install ubuntu-desktop by hand :-o wth man so at the start of a function you say something like "gBeginFunc (3)" la la la la laaaaaaaaaaa and you get debug output of function name, and all parameters chillywilly: hoary? chillywilly: you poor man yea heh Ubuntu linux http://www.ubuntulinux.org chillywilly: http://cdimage.ubuntu.com/daily/current/report.html might be an interesting page for you to watch then :) I take it something is broken? while we're adding debug stuff this CD is from Feb. 3 I did something in gnue-designer that i'd like in all tools at some point reinhard: I'll look at that when I get my firefox back :) I'm just not sure if it can go in common run gnue-designer with GNUE_DEBUG_IMPORT=1 set in your environment yay cool I did that when at one time I was getting recursive import issues happens to the best of us sometimes :) i'm not seeing anythin GNUE_DEBUG_IMPORT=1 ~/bin/gfdes recursive imports suck ? sigh my svn copy is hosed actually I don't see why this shouldn't go into common works w/ installed copy maybe as a command line parameter instead of an environment var reinhard: issue I had was I needed it to track as many imports as possible by the time command lines are parsed, much of gnue has been imported but that would probably work for most needs, though ah gotcha maybe both could be supported i don't see the issue with it just being an env var anyone know if gaim does IRC? as it's very much a developers tool me neither actually it does * reinhard is using gaim here hello havoc hi jcater: if it makes sense to have an env var (and I agree it *does* make sense) I'm ok with it but as to put it into common would be nice to be notified of work IRC messages * chillywilly just ignored everyone ;) ignores too it would have to be in the base gnue modue, wouldn't it? yes so it gets imported as the very first import reinhard: or we could just as easily have something like if '--debug-imports' in sys.argv: jcater: true dat as command-line would be cleaner gnue-common's GCLientApp could still define --debug-imports as an option, it just never looks at it and have a fake (ignored) comd line parameter yeah so it still is there in the help screen yes, :) as an environ variable was a nasty way to do it gmta :) :) but all I could think of at the time Log: the README file in /usr/share/doc//gnue-common point to an INSTALL. No such file. tiredbones: good point, I think the README file should not be installed at all in any case the INSTALL file would be rather useless for you as debian installation already did four you all that stuff hmmm ajmitch: ? ajmitch: do you manually install the README file? I agree, but where does one start to learn the system. reinhard: I saw a package from a group the other day that the UPDATE file just said: Things should go fairly well. Right now I have to go to all the README file to figure things out. reinhard: you could just resort to humor ;) well, looking at the other packages I see that many packages include a README file and several of them reference an INSTALL file that's not there tiredbones: if you tell us what you'd like to do with gnue we can point you to some easy way to start if you want Yea, but do you want to keep telling noobs like me all the time, your time is much to valuable. *** kilo has joined #gnuenterprise tiredbones: I spent about 4 hours today updating and writing documentation which will be included in the next release partly based on your feedback bbl Thanks!!!! reinhard: commiting lalalla Ubuntu is upo and running up* getting hungry... someone will still need to decide which level means what and adjust all the apps also do we want a --debug-level=all i've talked myself out of it for now but didn't know what others thing think jamest: thanks jamest: I think every app can decide about it's 3 levels re all - I think --debug-level=1-9 is ok thats how I talked myself out of it :) reinhard: I'm going thru all the README file to find the disconnects, those that tell you to look at other files to complete the install, do you wish for me to continue or wait for you new documentation? chillywilly: thanks for the link to ubuntu tiredbones: at some point you really would have to tell me what you want to achieve especially whether you want to run gnue in 2 tier or 3 tier mode bbl *** btami has quit IRC Ok, I just want to see how one goes about building a system using gnue. ok, so you would probably want 3-tier what is your current state? It one lock into the tier? jamest: no prob more or less yes tiredbones: if you decide to go with appserver you will use many of it's functions that you won't have available without appserver tiredbones: you have installed the debian packages for gnue-common, gnue-appserver and gnue-forms-wxgtk? Well, if one build a system for a small company you want all the overhead one get for a large conpany. I would like to build a system that could used in both env. well, it's like if you write a web page using zope you won't be able to run it without zope and if you use php, you use php maybe not a perfect example, but you get the point reinhard: yes they are all installed. ok. What database backend do you want to use? mysql, postgres, firebird? I'm going to postgres. ok please install python-psycopg (the debian package with that name) I would like to use one data models for both env, 2 tier or 3tier. I have python-psycopg installed. and also make sure you have permission to access the db server and to create new users and new databases I have this also. ok good then try to run gnue-setupdb no stop wait a second first we have to check connections.conf please edit the file /etc/connections.conf it should contain a section named [gnue] most under that section should be self explaining if all that fits your current database setup you can run gnue-setupdb I was looking for something to setup the db. Thanks for the pointer. reinhard: the file "connections.conf" not under /etc. I'll go looking. *** SachaS has joined #gnuenterprise *** tiredbones has quit IRC *** tiredbones has joined #gnuenterprise *** dcmwai has joined #gnuenterprise tiredbones: if you nave no /etc/connections.conf, you might have a /etc/sample.connections.conf you can copy (same goes for /etc/[sample.]gnue.conf btw) reinhard: I found it under /etc/gnue. I'm now geting an error in running the script gnue-setupdb. I was able to run psql -h localhost template1. From the innermost I'm getting gException: Database creation failed *** sjc has joined #gnuenterprise I notice that creating a new user failed because the user is already created. Looking at it more closely, they both failed because they where both created from some other method I must have used before. i've noticed lately that tracebacks from gnue debug fail with a unknown encoding: en_gb I can answer I can answer! cool! cool! :) Check your env LANGUAGE, set it to blank. reinhard found an error in python. I should say I'm using linux. as am i thanks would that have any impact on my environment if I unset that in my system XSession.d for our ltsp terms? as I'd like good tracebacks on all the users desktops just in case I was wondering the same thing. I'm sure it will, but how I don't know. that's what i get for being lamerican i only speak/understand when people talk/write in american all this wierd other world language stuff confuses me i am doing a bad thing. moving to evolution2.2 from experimental. i know i should not do that. will all my mail get corrupted? ;) reinhard: pb with dirty reads (or maybe normal behaviour) if you do session.new('other_class') in the onvalidate of class *** sjc has quit IRC and then do self.my_prop = the object created it complains about it not existing i'm not clear, am i?? but it seems to work if you do it all in external python strange everything still working :) back lekma: I think this should work ok but I have never trie tried will have to build a test case to reproduce it well it doesn't here :( lekma: let me just try to reproduce can reproduce and after thinking about it I can even explain appserver posts inserts to the database *exactly* in the order like you create the objects so it first posts the "object" then it posts the "other_object" but the object posted already references the other_object so the db doesn't do the insert i mean so the insert fails reinhard: why would it work in the external python? maybe the external python proc does stuff in another order but lekma would have to confirm this nope i think it does the same but i have to check *** dcmwai has quit IRC lekma: you can also check the order of INSERT statements posted to the db in both cases we have a paradoxon here on one hand, appserver can not send the INSERT to the database before a commit is done on the other hand, at the point of commit, several records can be pending an insert that could have dependencies on each other maybe even circular dependencies and appserver can't "guess" which order of the inserts is the best so appserver inserts in the same order as the objects were created which is not only what seemed most logical and intuitive but also was explicitly requested by SachaS at that time ;-) *** cilkay has quit IRC i think we really need the ability to let developers decide when to post an object clear frances was right about this hmmm interesting approach I didn't get that proposal in first place the hole thing could be resolved if the reference-field is nullable. this way appserver 'could' detect such a dependency and leave the field empty (for the first run), post everything else and then updates the missing refs (but it's still quite complicated though) I mean I didn't understand it i don't think a manual post can solve the problem here lekma could do in the onValidate x = new ('other_class') x.foo = "bar" post (x) self.frob = x ah, ok, i see so this post () would do the same as commit ? (without closing the real transaction) but then I think this would break quite a lot of things yeah, me too lekma, btw. is available in svn right now ... :) johannesV_: thx above all, post() would only write a *single* object to the database will try psycopg is still the pgsql pdriver we recommend isn't it? jamest: yes it has the timestamp rounding issue though doesn't it iirc reinhard, what if that single instance also depends on other instances ? someone asking on the pgsql list which driver to use and I'm slipping in a ref to gnue :) (which have been (correclty) created before ) jamest: dunno, we don't use timestamps as keys in gnue johannesV_: then it would be the user's fault ok, i'll put a IIRC in front of the warning :) for knowingly post()ing the one before the other yep :) you have to know when to post yeah, but this would mean using a manual post () once, one needs to do it everywhere within that procedure (at least for all instances referring to each other) why? I would see the manual post as a last resort if you don't explicitely post then it would behave as before if you want to store x, which depends on y which has a dep to z ... and i need to manually post x ... the fact that lekma and his team have developed for months without needing it lets me expect that it will be used extremely seldom... reinhard: wrong we did without cause it wasn't here and always found a way around but available before ae would have use it a bit more give a man a hand he wants your arm :) :) that's why I only give you my finger ;-) but i think there's still a chance for appserver to detect such situations *lol* :) in data.py the commit () function needs to create a dependency-path for all 'new' records johannesV_: if at all, I would prefer appserver to try to sort the inserts into the right order exactly what i just thought about ... :) instead of first inserting without the reference (what you talked about before) and then filling in the reference later we also discussed that IIRC no, this was just bulls* the problem is that data.py has no recognizion of references a major pb would be how to know about references in data.py right lol your about 2 seconds faster than me ... :) atm geasInstance would have to pass dependency information to data.py rigth if you want to store x, which depends on y which has a dep to z ... and i need to manually post x ... <-- i don't get this cause then you would have to post aniway in the onvalidate the dep before the object lekma: a think I fear about manual post() is that about 95 % of developers will have no clue about when it has to be used and how right :) because it requires a rather deep understanding how appserver works internally i like a formalized and clean solution much more even if this means a lot of work for me to do ... :) which you have because you are a genius and you have gone through debugging hell with us i do not agree cause posting is a simple notion i if i can understand when to or not to post everybody can and i understand this: post() only if the main object needs a ref to a newly created object which is simple enough i think and post only the ref obj lekma: currently we are discussion this approach: appserver could detect the necessary order for insert statements to the database by, for example, in a first run only insert new records that have no open dependencies then, in a next run, insert the records that have no more open dependencies left and so on this would take away the decision about when to post() from the developer the pb with automatic detection is that there always be the bastard dev from hell who has needs that are not covered if you let him decide, i agree you give him enough rope to hang himself but you give him also the freedom of organizing his procedure exactly as he wishes hmmmmmmmmmmm i still prefer the detection-thing ... lekma: you know you're askng for my arm now? there should be no ref-problem which couldn't be solved this way ... even fish-hooks should resolve properly or do i miss something ? :) johannesV_: you're right at first sight but if it has taught me smthing it is that one should never assume user will behave in a sane way look at me :) lekma: please give me an example of a reason why somebody would need a post() if johannesV_ would have done the automatic insert sorting none come to mind that was more for the sake of discussion johannesV_'s solution is ok with me honestly but i'm quite sure one day for the problem we face *now* johannesV_'s solution is the better one IMHO is there a reason my gnue-*/po/* files always conflict? as it doesn't require thinking of the developer on commits or updates and I don't want to chose the other soltuion just because it theoretically could solve other problems we don't have now and can't even imagine now as it doesn't require thinking of the developer <-- (just fors discussion's sake) that's where i don't agree with you lekma: the automatic INSERT (and of course also DELETE, btw) does not mean that we can't ever add a post() method, too, if we see the need for it at some time but currently I somehow suspect that this might not happen reinhard, can you examine geasInstance.py line 273-278 ... I was wrong many times in the past, but some times I also was right ;-) jamest: I would wonder which of your actions did regenerate the po files reinhard, johannesV_ : again your solution is really ok with me (in fact any solution is ok with me atm:) ) jamest: maybe you did a setup.py install from svn? ah, i always to that as we run close to svn head here in produciton jamest: ok, will look if I can fix po files to not be regenerated on that occasion reinhard, this lines could be used to mark both records (the master and detail) of such a dependency ... from outsite data.py reinhard: no big deal, i was just curious i somehow remember this discussion :) as I just rm them if you want to store x, which depends on y which has a dep to z ... and i need to manually post x ... jamest: that's ok, just ignore everything that deals with foreign languages ;-) i try! but it's damn hard to ! :) SachaS, you mean the discussion about dependencies between gcd-modules (which is a bit different from this one .... but it sounds similair ... :) speaking of foreign languages :) do you know if unsetting the LANGUAGE env var as part of my Xsession start is a "bad thing" ok. or is there some other way around the bug reinhard found in python that deals with this? johannesV_: I agree about those lines in geasInstance jamest: I have no idea what that LANGUAGE env var is for at all it was introduced in sarge a (very) few months ago we do have the refreneced record available as well as the referencing one ... so if data.record class has an apropriate interface ... (and of course also DELETE, btw) <-- hmmm this one i'm afraid of lekma, that's a bit harder to do ... right :) and it breaks getdefaultlocale in python but, as you might have noticed, i love 'tricky' things ... :) i don't think it should be done it should be let to db mgt of foreign keys lekma: we don't talk about deleting stuff that the user didn't want to delete we just talk about ordering the deletes that the user explicitly requested can we draw a simple case where the pb comes in with deletes ? ahhh ok pffff :) (gnue-readgcd does not define 'cascade'-actions on the foreign keys it creates ...) i mean i would hate to see a user deleting an order record cause he wanted to delete a order position record reinhard: its good if the developer does not have to think ;) that is a good thing. lekma: no like, delete (x), and then delete (y) where x has a ref to y no where y has a ref to x yes yes easiest example is a procedure that does both deletes but in the wrong order yeah, which would result in an integrity error from the backend like deleting a country where persons still exist using it (cause they're deleted after the country.delete ) also a fake (not real life) example could be that OnDelete of an order position checks whether it's the last position and if yes, automatically deletes the (now empty) order record does not make sense for orders, but there might be quite similar cases where it could make sense reinhard: sigh, i just noticed my commit for --debug-level failed sorry, i'm commiting again now johannesV_: what is the default again for ignore case?? False?? lekma, yes, default is False jamest: as you might have noticed, I had no time to test until now :) thx well, i wondered why no one reported my bug :) i think we can solve the ref-pb with deletes by passing a ref-sequence into data.py from geasSession.py line 632 something else odd in setupext/install_data.py there was a foreign character in the name geasSession already has over 600 lines? this never caused issues with the install of gnue until just recently wow wonder if that's related to the same issue as the LANGUAGE thing reinhard, 884 johannesV_: j/k jamest: not sure what you mean look at that file *** jgw has joined #gnuenterprise the modified 2000/12/18 Martin........ our gnue install is about 2 weeks old and it would hang in install data until I removed that character no error, just hang no cpu usage made 0 sense to me jamest: strange but I tend to ignore foreign language issues as someone in gnue told me to jamest: good idea :) i think he said he'd deal with all of them so I didn't have to think about it johannesV_: the problem would be find all referenced id's and classes reinhard: ok, commited though nothing in the commit irc channel johannesV_: btw, after debugging a bit today I seriously consider reintroducing a cache in the class repository there are insanely many load()'s on the internal session and even though they run locally (not over rpc) it's a buttload of work to do for appserver which would not be necessary IIRC we removed the cache to be able to react on changes done in gnue_classrepository.gfd but given the new SIGHUP feature this does not hold any more reinhard: what's that cache do? johannesV_: we should in any case check why we really removed the cache before changing anything reinhard, yeah i know ... as i've told you about this the last days :) jamest: we're talking about appserver ... you still want to know? ;-) johannesV_: yes, I remember, and I told you that it's not a problem at all... exactly ... :) but given the new SIGHUP feature <-- new feature!!! johannesV_: on some occasions I change my opinion :) but the profiler told me something really different ... *lol* i want to know!!! :) reinhard: yes lekma: you didn#t get it? ok, it's time for me to quit ... i'll read logs tomorrow ... lekma: gnue defines a module path have a nice evening ... night johannesV_ night all *** johannesV_ has quit IRC lekma: where you can put gld's and gcd's e.g. in gnue.conf modulepath = ... or --modulepath=... command line option defaults to .../share/gnue/appserver gnue-appserver will readgcd/readgld all files in that directory and all subdirectories on startup plus on SIGHUP WOW one of the key features of 0.4 you should read our release announcements ;-) are those gparser based? jamest: yes, they are jamest: the class repository is appserver's brein about what classes(tables) with what properties (columns) and procedures exist s/brein/brain/ so what does the cache contain? at some point this brain didn't forget anything appserver loaded a list of all classes, of all properties, of all procedures etc at it's start from the database gnue_* tables however it meant that when you changed something you had to restart appserver so we removed that cache and appserver got that info from the database (or a local cache of the db) every time it was needed so you could in one session change for example a procedure code and in another session use that new code without restarting the server but apart from the fact it never wored too well anyway appserver now can rebuild that cache on SIGHUP *** G2 has joined #gnuenterprise jamest: was that understandable? * reinhard is enthusiastic about jamest being interested in appserver :) bbl, off to diner * lekma is away: feeding the cat... so the definitions are stored in the file system yes and no then appserver moves(?) those into gnue_* tables? generally the definitions are stored in the database in gnue_* tables but coding into database tables is not very comfortable so you can write a gcd and gld file (gparser based xml) and feed that into the gnue_* tables but once you fed them there, you actually don't need them any more and to make stuff more comfortable especially for developers and for people wanting to package stuff for gnue you can make appserver feed files from a given directory *automatically* into the gnue_* tables on startup and SIGHUP and if the gld gcd file changes it reloads that yes do you need to be identified to speak here? As jgw is only watching? we're open to anyone reinhard: so you had an on demand cache for in memory instances of a appserver objct I didn't understand that but I think no *** sjc has joined #gnuenterprise i'm talking the old cache the content of those gnue_* tables was again cached in an object structure yes exactly that hmmmmm appserver extended the trigger system for it's procedures didn't it? yes s/extended/used I think johannes fixed a few things, but more or less we use the same system and does it autocreate the UI forms it needs it can or are you still using designer to build them appserver can autocreate simple non-master-detail forms but if you want master detail or other compex stuff (like triggers, buttons, etc) you have to still do gfd hmmm *** jgw has quit IRC *** SachaS has quit IRC jcater: can you tell me how do you use the output of common/utils/doc-xml-attrs-openoffice.py ? how do you insert it into the devguide? i thought it created a complete oo.org file which you then cut n paste *** SachaS has joined #gnuenterprise *** brocher has joined #gnuenterprise kilo: i cannot open its output file from OOo ok, unzip an existing OO.org file into a temp directory then run common/utils/doc-xml-attrs-openoffice.py forms > content.xml re-zip it up the contents of the file should now be the generated output actually that may work still a tad quicker than updating by hand i just tried it and it worked :) but the script creates a file that can be opened by a java-based plugin as I couldn't remember the proper way "Flat File XML" or something like that hey guys ...ok for newbie type questions? you have to do a custom install of openoffice to use it though as it's not part of standard install * jcater hasn't checked to see if debian's .debs include support jamest: we need to make the script do that for us :) or kilo: you should make the script do that :) brocher: sure kilo: for us :) great stuff...I've a couple of very easy ones.... I'm from an Oracle/Oracle forms background and I'm looking to replace both....postgresql does most of what I want to do on the DB end and I've played about with gnue-forms against it and got on OK... brocher: great! brocher: jcater should be your man then :) he also is an ex oracle forms user converted to gnue as am I oracle forms was the inspiration for gnue forms as much as people hate us for that :) reinhard: he's also a current oracle forms user, if you can count sql*forms 6 "current" ... I'm also new to Python (altho learning fast!).. what would help is ..a) examples of on-validate triggers and raising an exception and...b) lookup against a datasource on the same sort fo trigger jamest/jcater: thx, will try that then but the non-existance of the script should be blamed on.... derek....of course lol brocher: i've not raised an exception in a forms trigger so don't have a sample i can however give you samples of datasources if I know what you're trying to do are you trying to populate the form via a trigger or pull data from other sources and only populate a few fields reinhard: abort is no property of session, correct?? 1) have it pull up a form full of data if the person enters an existing customer number in a field jamest: no ...just trying to perform a "dynamic" lookup on a field against a table with the value just entered 2) pull city, state from a valid zip lekma: no, it's a global function so to pass it to external python i have to pass it as function pointer ?? not sure it *might* be in the global namespace :) good here is a sample of #1 er #2 lets see if I get booted upcCode = str(blkItem.fldUPC.get()) if len(upcCode): results = dtsItemDetails.simpleQuery({"upc":upcCode}) if len(results): result = results[0] blkItem.fldDescription.set("%s" % result['description_short']) blkItem.fldLocation.set("%s" % result['location']) blkItem.fldSKU.set("%s" % result['sku']) else: form.showMessage('UPC Code not in Item table!\nUnable to accept!', 'Alert!!!') blkItem.fldUPC.set("") blkItem.fldDescription.set("") blkItem.fldLocation.set("") blkItem.fldQty.set("") blkItem.fldSKU.set("") ]]> did that display as xml? (damn kopete) jamest: yes xml night all nite *** reinhard has quit IRC jamest: That looks the biz.....does the form.showMessaage with the Alert!!! stop the form from going any further (ie like raise FORM_TRIGGER_FAILURE in Oracle forms)? *** dimas has quit IRC no we have an abort() call in triggers we do? cool yes i've not used it though that's maybe what i've been missing....I've been managing to catch validation exceptions but not "stop" the processing.... looking at what is needed now iirc this was added to the trigger namespace for appserver and i don't know if forms supports it or not jcater: that's what we get for being MIA for like 4 years *** dimas has joined #gnuenterprise ok it works abort("Abort Message text") in a pre-focusout stops navigation but the message isn't displayed on the status bar like I imagine it should be sigh abort("message") i need to smack my irc client does it appear in ddialof? oops..."dialog" no, not at all the message seems to be ignored and if you're seeing a ; in my sample ignore it kopete keeps putting it in ") when I type " followed by a ) maybe you could do a form.showmessage followed by an abort() ??? yes that's exactly what I did and in fact fixes that code in my receiving.gfd so that the user doesn't have to back tab :) brocher: you using oracle now? speaking of kopete....I couldn't get it to work with freenode (running Xandros)..kept hanging on the ident bit... brocher: you're blocking icmp at the firewall kopete hard codes in the timeout er, i mean ident Jamest: Yes it's my "bread and butter" at the mo...but I hope to move away from that.....see http://www.suretecsystems.com so aborts before freenode gives up brocher: forms *should* work with oracle however, jcater, our one developer with a oracle license had it break a while back it'd be great if you could test forms against oracle to see if you have the same results as we don't have a 2nd sample so I need icmp thru the firewall to use kopete? *** spencer_ has joined #gnuenterprise brocher: no, i think i mis-remembered that it's definately a timeout issue on the ident in my case it was the firewall blocking ident so I setup a ident server that returns bogus info, a put a hole in the fw jamest...I'll be happy to help out....once I get doing what I want on postgres then I'll definitely be giving it a "damn good thrashing" oracle ;-) xchat let you set the timeout and iirc had a longer default timeout kopete (at least in 3.2.x) was hard coded too short for the freenode timeout iirc it was 30 kopete, 60 freenode so it'd never work i tried every ident server and i *think* i'm on nullidentd at the mo.... for the logs (and johannesV) Traceback (most recent call last): File "/usr/lib/gnue/appserver/geasSessionManager.py", line 286, in fetch return s.fetch (list_id, start, count) File "/usr/lib/gnue/appserver/geasSession.py", line 465, in fetch result = list.fetch (start, count) File "/usr/lib/gnue/appserver/geasList.py", line 260, in fetch self.__fillupFunc (start + count) File "/usr/lib/gnue/appserver/geasList.py", line 74, in __fillupFunc return self.__fillupSorted (count) File "/usr/lib/gnue/appserver/geasList.py", line 99, in __fillupSorted group = self.__getGroup (current) File "/usr/lib/gnue/appserver/geasList.py", line 192, in __getGroup return instance.get ([item [0] for item in self.__dsSorting]) KeyError: 0 with last svn lekma: what are you creating w/ appserver i know reinhard promised to fix all issues for you but I didn't know why a baby erp baby erp ? :) maybe cause i'm the first to use in prod env (and he convinced me to use it) cause i was starting with forms/common at this time man, and you fell for it? i don't regret it :) it's a wonderful tool by baby erp i mean a small one i really want to give it a spin as it would make some kludges for me go away scripts that sleep 60 then repeat but last I talked to him appserver doesn't play well with others (aka legacy apps) :) i have some trouble putting legacy data to it right now lekma: So, you don't mind carring the overhead for a 3 tier structure? *** brocher has quit IRC what do you mean by overhead ?? the drawback of common/forms is maintainability (? is that english??) if your app is used by more tha a dozen persons maintaining it when using forms/common can be tricky I no I'm speaking out of turn. For a small erp I would thing you would only want a client/server relationship. tied? shouldn't that be tired? sm thing?? :) lol makes sense, tied until tired, rest, reset bbl * lekma is away: feeding the cat... lekma: there is a good article in the last issue of LJ describing how to feed your cat using linux. lol i need that, just got 2 cats 10 days ago one eats for 3 you need to go to your local radio shack and pick-up a basic serial board. All the code is in the article. when I do "psql gnue" I get an error that my pg_hba.conf is erroneous,but when I do "psql -h locakhost gnu" is works. In my pg_hba.conf I have "local all alll trust" , it this all I need? I did a netstat -an PGQL(?) an that said I'm listing on the default port ,5342(??. So, I why should I have to tell it to listen on localhost? no tiedbones, local in pg_hba doesn't apply to localhost inet pg_hba sets access controls you need something like "local" means unix streams you need a "host" line with 127.0.0.1 with trust host all all 192.168.1.0/24 trust I thought I did that once, let me try again. Well, I postpone it log enough, got to go plow all this snow now. *** tiedbones has quit IRC *** tiredbones has quit IRC *** tiredbones has joined #gnuenterprise *** jamest has left #gnuenterprise for the logs (and johannesV) searching on a calc prop seems to be broken maybe linked with the ignorecase...? lekma: what kind of system are you developing? it manages the selling of video tapes dvd *** titopbs has quit IRC cds and stock and production lekma: I did one of those before. but it's a dedicated app atm not really a generic erp will your system use a touch screen? nope for the logs (and johannesV) that's the fetch that is broken for calc props any svn guru around?? i need to see which files my last svn up changed... svn stat oh no, misread it svn log -v -r [revision number] * kilo is 1 yr older... kilo: happy birthday :) so you can try : svn log -v -r "HEAD" to get the latest changes thank you lekma *** sjc has quit IRC *** G2 has quit IRC congratualtion kilo *** holycow has quit IRC thx SachaS good nit *** kilo has quit IRC *** Mike1971 has joined #gnuenterprise hello *** Mike1971 has left #gnuenterprise *** jamest has joined #gnuenterprise *** michael301080 has joined #gnuenterprise hi all, anyone here *** michael301080 has left #gnuenterprise *** wendall911 has quit IRC *** ajmitch_ has joined #gnuenterprise *** ajmitch__ has joined #gnuenterprise *** ajmitch has quit IRC *** ajmitch_ has quit IRC *** jamest has quit IRC *** spencer_ has joined #gnuenterprise *** tiredbones has quit IRC *** mnemoc_ has joined #gnuenterprise *** mnemoc has quit IRC *** spencer_ has quit IRC