示例#1
0
        static void Main(string[] args)
        {
            IConfiguration config = new ConfigurationBuilder()
                                    .AddJsonFile("appsettings.json", true, true)
                                    .Build();

            var rpcConnnectionSettings = new RpcConnectionSetting();

            config.GetSection("OdooConnection").Bind(rpcConnnectionSettings);

            //Connection
            var odooConn = new RpcConnection(rpcConnnectionSettings);

            //SaleOrder
            WriteSaleOrder(odooConn);
        }
示例#2
0
        static void Main(string[] args)
        {
            IConfiguration config = new ConfigurationBuilder()
                                    .AddJsonFile("appsettings.json", true, true)
                                    .Build();

            var rpcConnnectionSettings = new RpcConnectionSetting();

            config.GetSection("OdooConnection").Bind(rpcConnnectionSettings);

            //Connection
            var odooConn = new RpcConnection(rpcConnnectionSettings);

            //ExecutePartnerService(odooConn);

            //var result =  CreatePartnerService(odooConn);
            //if (result > 0)
            //    Console.WriteLine("Successs");

            var result = EditPartner(odooConn);

            //var result = new PartnerService(odooConn).Remove(50);
            Console.ReadLine();
        }
示例#3
0
        static void Main(string[] args)
        {
            IConfiguration config = new ConfigurationBuilder()
                                    .AddJsonFile("appsettings.json", true, true)
                                    .Build();

            var rpcConnnectionSettings = new RpcConnectionSetting();

            config.GetSection("OdooConnection").Bind(rpcConnnectionSettings);

            var odooConn = new RpcConnection(rpcConnnectionSettings);


            var rpcContext = new RpcContext(odooConn, "res.partner");

            rpcContext
            .AddField("id")
            .AddField("name");

            var data = rpcContext.Execute(false);

            var partner_1 = new RpcModel("res.partner", odooConn);

            var method_response = partner_1.CallMethod("find_or_create", new object[1] {
                "*****@*****.**"
            });


            //res.partner - Write
            var partner = new RpcContext(odooConn, "res.partner");

            partner.AddFields(new[] { "name", "phone", "email" });

            var results = partner.Execute(false, order: "id desc");

            //var results = partner.Execute(false, offset:1, limit:2, order: "id desc");
            foreach (var result in results)
            {
                result.SetFieldValue("phone", "55-66-666");
                result.Save();
            }

            //res.partner - Create
            RpcRecord record = new RpcRecord(odooConn, "stock.quant", -1, new List <RpcField>
            {
                new RpcField {
                    FieldName = "product_id"
                },
                new RpcField {
                    FieldName = "reserved_quantity"
                },
                new RpcField {
                    FieldName = "location_id"
                }
            });

            record.SetFieldValue("product_id", 52);
            record.SetFieldValue("reserved_quantity", 333);
            record.SetFieldValue("location_id", 8);
            record.Save();
        }
示例#4
0
        static void Main(string[] args)
        {
            IConfiguration config = new ConfigurationBuilder()
                                    .AddJsonFile("appsettings.json", true, true)
                                    .Build();

            var rpcConnnectionSettings = new RpcConnectionSetting();

            config.GetSection("OdooConnection").Bind(rpcConnnectionSettings);

            var odooConn   = new RpcConnection(rpcConnnectionSettings);
            var rpcContext = new RpcContext(odooConn, "res.partner");


            //Query Parameter
            rpcContext
            .RpcFilter
            .Or()
            .Equal("id", 1)
            .Equal("id", 14383);


            //Returns all fields if fields are not selected
            rpcContext
            .AddField("id")
            .AddField("name")
            .AddField("mobile")
            .AddField("phone");

            var data = rpcContext.Execute(true, limit: 5);

            foreach (var record in data)
            {
                var id     = record.GetField("id");
                var name   = record.GetField("name");
                var mobile = record.GetField("mobile");
                var phone  = record.GetField("phone");

                Console.WriteLine(record.GetField("id"));
                Console.WriteLine(record);

                // Update Record
                record.SetFieldValue("mobile", "xxx-xxx-xx");
                record.Save();
            }


            //New Record
            var fields = new List <RpcField>
            {
                new RpcField {
                    FieldName = "name", Value = 1
                },
                new RpcField {
                    FieldName = "website", Value = "www.odootr.com"
                },
            };
            var newRecord = new RpcRecord(odooConn, "res.partner", null, fields);

            newRecord.Save();

            var a = rpcContext.ToXml();

            Console.ReadLine();
        }