Pliki cookie pomagają nam udostępniać nasze usługi. Korzystając z tych usług, zgadzasz się na użycie plików cookie. Więcej informacji
API - automatyzacja zakupów

2013-10-24

Kolejna klasa udostępniona w Sz@rk API pozwala na generowanie dokumentów magazynowych PZ, z możliwością automatycznego zakładania nowych kartotek w magazynie lub aktualizacji produktów już wcześniej utworzonych.

W programie dostępny jest nowy przykład z wykorzystaniem klasy GmPurchase.



Kod przykładu:

namespace Szark
{
    using System;
    using System.Drawing;
    using System.Windows.Forms;
    using TGSoft.UI;
    using TGSoft.Data;

    public partial class Form1 : DevExpress.XtraEditors.XtraForm
    {
        private GridController gc1;
        
        public Form1(GridController sender)
        {
            this.InitializeComponent();
            buttonNew.Click += buttonNew_click;
            gc1 = sender;
        }

        public void Main()
        {
            this.ShowDialog();
        }

        private void buttonNew_click(object sender, EventArgs e)
        {
            GmPurchase doc = new GmPurchase();
                
            doc.Stock = 1;
            doc.AutoCreateNewProducts = true;
            doc.Customer_id = 3;
            doc.InvoiceNumber = "Fra 1/10/2013";
            doc.Caption = "Test PZ (zakup) z API";
            doc.Total = 79.95M;
            doc.PurchaseDate = DateTime.Today;
            doc.Payment_id = 3;
            doc.Payment_days = 14;
            
            
            GmDocumentProduct product = doc.NewProduct();
            product.Code = "12-NEW"; // Nowa kartoteka
            product.Name1 = "Kartoteka automatyczna z PZ";
            product.Name2 = "dopisana szczegółowa";
            product.PurchasePrice = 10;
            product.SellingPrice = 20M;
            product.Unit = "szt";
            product.Tax_value = 23;
            product.Quantity = 1;
            doc.Add(product);
            
            product = doc.NewProduct();
            product.Code = "12-001"; // Kartoteka istnieje, aktualizacja
            product.PurchasePrice = 11;
            product.SellingPrice = 22;
            product.Quantity = 5;
            doc.Add(product);
            
            object id = doc.Save();
            if (id != null)
            {
                gc1.LoadData();
                gc1.DATable.FindKey(id);
                DialogResult = DialogResult.OK;
            }
        }
    }
}