Saturday, May 19, 2012

OpenERP - OpenObject Over Delphi

First of all , i am excited because of the powerful openerp interface , although these days less people talk about xmlrpc but i kind of really like its light weighted xml file ,it has less "noise" in xml response.

in OpenERP forum , i posted openerp xml-rpc "search" xml format
and i was inspired by OOOR and OOOP and here is my initial idea of
OOOD (D = Delphi) ,
unit openerp_enterprise_sync_proxy;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls,
  StdCtrls, XmlRpcClient, XmlRpcTypes, DB,  kbmMemTable;

CONST
      
  XMLRPC_OPENERP_COMMON = '/xmlrpc/common' ;
  XMLRPC_OPENERP_OBJECT = '/xmlrpc/object' ;
  XMLRPC_OPENERP_DATA   = '/xmlrpc/db' ;
  XMLRPC_OPENERP_REPORT = '/xmlrpc/report' ;
  XMLRPC_OPENERP_WIZARD = '/xmlrpc/wizard' ;

{
/xmlrpc/common
/xmlrpc/db
/xmlrpc/object
/xmlrpc/report
/xmlrpc/wizard
}

//   /xmlrpc/common
  XMLRPC_OPENERP_COMMON_METHOD_LOGIN = 'login';
//   /xmlrpc/db

//   /xmlrpc/object

//   /xmlrpc/report

//   /xmlrpc/wizard


type
 TOpenERPSyncProxyServer = class(TObject)
 private
   openerp_model : string ;
   openerp_sess_uid :  integer ;
   RpcCaller: TRpcCaller;
   RpcResult: IRpcResult;
   RpcFunction: IRpcFunction;
   RpcArray_prm1: IRpcArray;
   RpcArray_prm2: IRpcArray;
//   RpcStruct1: IRpcStruct;


 public
   RpcFldArray1 : IRpcArray;
   RpcsrchArray : IRpcArray;
   rpc_result_table : TDataSet;  //e.g. a rpc result which converted into a Dataset , e.g. res.partner
   rpc_source_table : TDataSet;  //e.g. local mysql POS machine table

   function connect( host,db,userName , passWd :string ):Boolean ;virtual; abstract;
   function create:boolean ;
   function read:Boolean ;
   function update :Boolean;
   function delete : Boolean ;
 published

end ;



implementation
 If you are like myself who came from a hardcore windows programming background and have developed lots of windows solutions which you think can still be a value to help growing local SME market , then you may want to do something similar like this one , build interface in order to REUSE the existing software which has gone through the FULL SDLC ... especially on the testing and debugging phase ,
yuck ... really hate it but NO CHOICE "LO" you have to go thru in order for software to be stable and useable !

I have been providing software customization donkey years ago in Malaysia and Singapore and my main market of focus are Retail and Servicing industries , for example , my POINT OF SALE system like this one ...

You tell me to rewrite everything after months of debugging , although my spirit is willing but my sense of business wisdom tell me NOT NOW , It is a good idea , if u tell me to use openERP V6.1 , well i love the idea , but i do not think it is quick ready for Retail yet , there are still lots of items needed by the Retail industries .in fact the POS in OpenERP V6.1 is mote suitable to a Restaurant then a Retail Business , in fact there are lots of features required by Restaurant are also not there , how about the basic requirement , such as Print Direct into printer like Receipt Printer ? Kicking the Cash Drawer ? ... Rolling up special discount price ? Discount Matrix e.g. Purchase with Purchase etc ...

A lot of POS in the market is already very well tested , why should we waste another day to redevelop it unless it is a crap right ?

If you have some idea or comment about this idea , feel free to give your two cents ! Bravo OpenERP , here i come , To integrate , collaborate and Accelerate !

1 comment:

  1. Hi Kalmen,
    I'm tryng to connect delphi with OpenERP.
    Can you help me ?
    How I can see the list of OpenERP xmlrpc functions?
    Have you an example with function calls ?

    Thanks

    ReplyDelete

Note: Only a member of this blog may post a comment.