ODBC Insert or Update a lvarbinary field with an image file's contents

ClayGoss

Member
I am trying to automate placing image file contents in a lvarbinary field. The progress sql92 documentation I have indicates using sql "Insert values" for this type is not possible. It mentions using BINARY LOAD/DUMP. Is this the load done via "proutil -C load..." or something else?

I do not want to "load" the entire table, just the lvarbinary field for selected records.

Ideas?
 

ClayGoss

Member
>> ...why not use ABL?

Sorry, I do not know what the TLA (Three Letter Acronym) ABL stands for. Please explain.
 

ClayGoss

Member
I am not an ABLer or 4GLer - we did not develop the application.

If I can do it with ABL with the tools I have and it is not that much code, I suppose I could jump into it. Currently, I am doing such tasks with ODBC from another language and this is the first time I have wanted to write something to the DB using SQL and could not see a way to handle it.

I do see an application compiler in the OpenEdge menu group, but have no clue where one would start.
 

tamhas

ProgressTalk.com Sponsor
Well, it sounds like it would be a very simple piece of ABL code, but not knowing any is a bit of an obstacle. :)

You would need a development license on the system in any case.
 

tamhas

ProgressTalk.com Sponsor
Isn't that what you indicated that the documentation says? That or a binary load, which is for the whole record, not just the LOB.

Seriously, though, this has to be a really trivial piece of ABL. Can't you get the people who developed the application to whip something up for you? It is the kind of task where you will spend more time describing exactly what you want than they will spend coding it.
 

ClayGoss

Member
Well, I am a developer. I am working with this customer who has a Progress based system. I have done many things for them in VB, Visual FoxPro, VC and the like. As I indicated, this is the first instance where I could not get there with ODBC.

When we go back to the developer of the app, modifications start at $1,200 + maintenance - compared to a developer's license, this seems like a bargain - but what about the next one - and the much more complicated one (like the one we just ordered for $8,800 + maintenance? And, as you noted, the delays in getting them to understand what is needed?

If ABL is the only way, then I would like to know how to obtain a developer's license.
 

tamhas

ProgressTalk.com Sponsor
Well, obviously your developer isn't me since my minimum charge for a modification is one hour ... and I don't charge $1200 an hour ... yet.

The first thing you should do is to find out if your customer has a development license. Many partners include a 4GL license with the rest of the Progress licenses since this enables them to compile source code on site. One clue to this will be seeing if the customer has .p and .w files in addition to .r code. It the customer has a development license, then your only problem is learning enough ABL code to do the load.

Alternatively, you might be able to find a contractor out there with his or her own license who can whip something up for you at a lower charge. The one complication is that they will need a copy of the schema to compile against.

Or, you or the customer could buy a development license, either from the partner or from Progress directly. A "4GL" license, which would be sufficient for what you want to do, would cost $2240 on OE10. For $3600 you can get OpenEdge Architect with the Eclipse IDE and a much larger toolset.

OpenEdge Architect is a Windows tool at this point, so unless the database is also on Windows, you would have to write the program, compile it against the target database, and deliver .r code to the customer to run. This is one of the reasons that I deliver a "4GL" license to all customers on whatever their database platform might be so that I can write test and diagnostic and utility programs in addition to compiling the application.
 

ClayGoss

Member
There are NO .p or .w files, only .r How do I tell if the system had a 4GL developer's license with it? Is the Application Compiler in the OpenEdge Start Menu folder part of it?
 

tamhas

ProgressTalk.com Sponsor
If there are only .r files, then it seems likely that the AP is only delivering compiled code and it is likely that there is no development license. That menu entry is not indicative. If you go to the bin directory under the directory where Progress is installed ($DLC), there is a command showcfg which should show you which licenses are installed. The customer should also have a "green sheet" showing the licenses and serial numbers.
 

ClayGoss

Member
I have posted on the progress site to have some one contact me about purchasing the Developer Kit.

Thanks for the input!
 

tamhas

ProgressTalk.com Sponsor
"Developer's Kit" sounds like a reference to the PSDN Subscriptions, which I think may only be sold to partners. You can read about it here
http://www.psdn.com/library/kbcategory.jspa?categoryID=81
In any case, it is a subscription, i.e., an annual cost, but it includes pretty much anything that one could want to develop for Progress. If all you want to do is to write an occasional ABL program, it will be a *lot* more expensive than one of the licenses I mentioned earlier.

What I would strongly consider doing is getting the evaluation kit which you can download here
http://www.psdn.com/library/entry.jspa?entryID=1131
This is a 60 day license ... which would be enough to get you past the current problem for free! And, if you look at the presentations and fiddle with the stuff in the kit, then you can decide if you want one of the development licenses or want to go whole hog and try to talk them into one of the PSDN subscriptions.
 
Top