--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
--
I have a client that was already using PHP against D3 but they recently created a simple wrapper around mv.NET so now their PHP client runs against their D3 system with a nice pooling server.
If I need PHP/MV for little ditties, I've been working on mvEsperanto which I mentioned that I was writing here some time recently. In short it exposes a single connectivity class for any MV DBMS. So far I have interfaces for all databases using mv.NET, D3/MVSP, U2/UOJ, QM/QMClient, and a couple others. There's also a SSH login to execute TCL/UDT commands without going through a DBMS pipe, and a web service interface to get into anything else. So it's "PHP to any MV system using whatever pipe you prefer". I haven't had much time to work on it but the "Esperanto" piece of this is that the same API and server interfaces can be used by other languages like Ruby, Java, .NET, or whatever other language one wishes. Need Ruby to U2? Got it. Want to swap out UOJ with UO.NET without changing your Ruby code? No problem. Want to swap QM and still use the same Ruby code? No problem. Want PHP with jBase? Sure. What if your developer writes with Java against jBase but you're running Caché? No problem, their code will work against your server. Need to pull from D3 and QM using the same PHP or Java code? Got it.
The code is awful and only partially working in places. It's supposed to be an Open Source project but I just haven't had time (in the last 3 years that I've been working on this) to publish the docs and code. Ultimately the idea here is that you should be able to get people who know any language to access any Pick environment, and they shouldn't need to learn UOJ for U2, MVSP for mvBase, and some custom API for QM. This is a single API for all languages to all MV platforms using any comms pipe … well, that's the plan if I can find any time (or funding) to keep working on it… (What's a language/platform-agnostic binding worth to this industry?)
Anyway, that's not viable for general usage yet. Generally for anything more than a simple ditty, I use web services from PHP (REST or SOAP) because that's as fast and generic as it gets. Then on the back-end I tend to use mv.NET, but you can use any connector for any DB here.
I went through all of the above to provide an answer to "the next" question, which is "how do I use Ruby with MV?" Substitute Java, Perl, BF, Eiffel, F#, COBOL, or any other language. This industry is short on language bindings. The MV providers are all playing the same game in providing what they think is important - and providing us with their proprietary APIs and bugs in the process. Then a decade goes by with inadequate solutions and people are still asking the same questions. The solution for all of these is the same. We need to stop thinking in terms of getting single-purpose solutions from vendors and start creating more general purpose solutions for ourselves.
T
.... javascript is client side (in the browser),
--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
$results = $sharedsub->command($request, "0", "COUNT VOC"); echo "call sharedsub.command=$results";
Life can be really simple. Check it out at http://www.u2logic.com/php.html for more example code.
Regards,
Doug
www.u2logic.com
Yes, I have been watching this, interested in nodejs, but not interested enough to give it a spin...
Can you utilize jQuery in conjunction with server side javascript?
--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+unsubscribe@googlegroups.com
Rocket supply three supported methods to integrate into U2, a com one called uniobjects, a .net library called uniobjects.net and a java one called uniobjects.java. The recommended approach is to write your access layer in one of these technologies (e.g. an asp.net web service) and to then access the data using whatever language you want via the web service.
We use uniobjects.net, and just happen to access the web services in asp.net, but I could just as easily access it via php.
Rgds
Symeon.
--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
No virus found in this message.
Checked by AVG - www.avg.com
Version: 10.0.1424 / Virus Database: 2411/4972 - Release Date: 05/01/12
As I say in my comments the interface into u2 is via web services. The web service can be written either using the com object or in asp.net or wcf or java, so the client can be anything and need not concern itself with the technology underneath. Uniobjects.java will work on basically any machine so you don’t have many restrictions in place at all. Uniobjects.net works inside the net framework, which is also free, with free development tools, you just have to buy a windows licence, but most businesses have windows licences anyway.
Version: 10.0.1424 / Virus Database: 2411/4975 - Release Date: 05/03/12
(Consider this an AD)
Jon, for exactly the reasons you documented, one of my clients wrapped mv.NET into their PHP interface. So they get pooling without changing their PHP middle-tier page processing. Now that they have pooling (and this is my conclusion though I don't yet know how they intend to proceed here), the overall cost of their application to end-users can come down, thus making it easier for them to sell more product (and even more DBMS licenses) to new and existing sites. I know this developer monitors this group, perhaps they will post their own commentary.
Tony Gravagno
Nebula Research and Development
TG@ remove.pleaseNebula-RnD.com
Nebula R&D sells mv.NET worldwide
and provides related development services
remove.pleaseNebula-RnD.com/blog
Visit http://PickWiki.com! Contribute!
http://Twitter.com/TonyGravagno
http://groups.google.com/group/mvdbms/about
From: jsaltzman
I have worked on a PHP connector for D3 - which seems reasonable with one major drawback, which is it does not have connection pooling, severly limiting scalability….
This architecture has worked, but is limited by # of phantoms, and unfortunately, it is not connection pooling.
My experience thus far, for D3 at least, is MV.net or MVS toolkit are the only two robust commercial solutions for connection pooling connectivity.
MVSP is good up to a point, but does not have connection pooling built in. Anything else is not really a solid option, unless you are a C programmer and build your own connection pooling socket server for D3 such as Coyote (or use that product).
Wish we had better options out of the box..
Jon