Пример #1
0
        private static void StockTransactionSave()
        {
            string transDoc    = "ES";
            string transSerial = "1";
            double partyID     = 1;

            var Transaction       = new S50cBL18.BSOStockTransaction();
            var currency          = APIEngine.SystemSettings.BaseCurrency;
            var NewTransDocNumber = APIEngine.DSOCache.DocumentProvider.GetNewDocNumber(transSerial, transDoc);

//-------------------------------------------------------------
// *** Header
//-------------------------------------------------------------
            // Motor do documento
            Transaction.Transaction.TransDocType   = DocumentTypeEnum.dcTypeStock;
            Transaction.Transaction.TransDocNumber = NewTransDocNumber.DocNumber;
            Transaction.PermissionsType            = FrontOfficePermissionEnum.foPermByUser;

            //New Documento
            Transaction.InitNewTransaction(transDoc, transSerial);

            // Motor dos detalhes (linhas)
            var bsoStockTransDetail = new S50cBL18.BSOItemTransactionDetail();

            bsoStockTransDetail.PermissionsType   = FrontOfficePermissionEnum.foPermByUser;
            bsoStockTransDetail.TransactionType   = Transaction.Transaction.TransDocType;
            bsoStockTransDetail.UserPermissions   = APIEngine.SystemSettings.User;
            Transaction.BSOStockTransactionDetail = bsoStockTransDetail;
            //

            Transaction.PartyID = partyID;
            Transaction.TransactionTaxIncluded = true;
            Transaction.createDate             = DateTime.Now;
            Transaction.CreateTime             = new DateTime(DateTime.Now.TimeOfDay.Ticks);
            Transaction.ActualDeliveryDate     = DateTime.Now;
            Transaction.PartyType            = (short)S50cSys18.PartyTypeEnum.ptNothing; //igual a documento ja criado
            Transaction.BaseCurrency         = currency.CurrencyID;
            Transaction.BaseCurrencyExchange = currency.BuyExchange;
            Transaction.Transaction.Comments = "Returnable Packaging";
//-------------------------------------------------------------
// *** Header
//-------------------------------------------------------------


//-------------------------------------------------------------
// *** DETAILS
//-------------------------------------------------------------
            if (Transaction.Transaction.Details == null)
            {
                Transaction.Transaction.Details = new S50cBO18.ItemTransactionDetailList();
            }

            //Add Linha 1 : 10 7upLitro
            var StockTransactionDetail = AddStockDetail(Transaction, 1, "7upLitro", 10);

            Transaction.AddDetail(StockTransactionDetail, false);

            //Add Linha 2 : 10 TARAS
            StockTransactionDetail = AddStockDetail(Transaction, 1, "TARAS", 10);
            Transaction.AddDetail(StockTransactionDetail, false);

//-------------------------------------------------------------
// *** DETAILS
//-------------------------------------------------------------

            //*** SAVE DOCUMENT
            if (Transaction.Transaction.Details.Count > 0)
            {
                try {
                    Transaction.Calculate(true, true, true);
                    Transaction.SaveDocumentEx(true, false);
                    //Console.Error.Write(Transaction.Transaction.TransactionID.ToString());
                }
                catch (Exception ex) {
                    Console.Error.Write(ex.Message);
                }
            }
        }
Пример #2
0
        private static void ItemTransactionSaveSaleWithReturnOfReturnable()
        {
            string transDoc    = "FS";
            string transSerial = "1";
            double PartyID     = 1;

            var currency             = APIEngine.SystemSettings.BaseCurrency;
            var ItemTransaction      = new S50cBL18.BSOItemTransaction();
            DocumentTypeEnum DocType = DocumentTypeEnum.dcTypeSale;
            var NewTransDocNumber    = APIEngine.DSOCache.DocumentProvider.GetNewDocNumber(transSerial, transDoc);

//-------------------------------------------------------------
// *** Header
//-------------------------------------------------------------
            // Motor do documento
            ItemTransaction.Transaction.TransDocType   = DocType;
            ItemTransaction.Transaction.TransDocNumber = NewTransDocNumber.DocNumber;
            ItemTransaction.PermissionsType            = FrontOfficePermissionEnum.foPermByUser;
            ItemTransaction.InitNewTransaction(transDoc, transSerial);
            // Motor dos detalhes (linhas)
            var bsoItemTransDetail = new S50cBL18.BSOItemTransactionDetail();

            bsoItemTransDetail.PermissionsType       = FrontOfficePermissionEnum.foPermByUser;
            bsoItemTransDetail.TransactionType       = ItemTransaction.Transaction.TransDocType;
            bsoItemTransDetail.UserPermissions       = APIEngine.SystemSettings.User;
            ItemTransaction.BSOItemTransactionDetail = bsoItemTransDetail;
            //

            ItemTransaction.PartyID = PartyID;
            ItemTransaction.TransactionTaxIncluded = true;
            ItemTransaction.createDate             = DateTime.Now;
            ItemTransaction.CreateTime             = new DateTime(DateTime.Now.TimeOfDay.Ticks);
            ItemTransaction.ActualDeliveryDate     = DateTime.Now;
            ItemTransaction.BaseCurrency           = currency.CurrencyID;
            ItemTransaction.BaseCurrencyExchange   = currency.BuyExchange;
            ItemTransaction.Transaction.Comments   = "Returnable Packaging";
            //-------------------------------------------------------------
            // *** Header
            //-------------------------------------------------------------


            //-------------------------------------------------------------
            // *** DETAILS
            //-------------------------------------------------------------
            if (ItemTransaction.Transaction.Details == null)
            {
                ItemTransaction.Transaction.Details = new S50cBO18.ItemTransactionDetailList();
            }

            //Add Line_1: art1 type normal
            var StockTransactionDetail = AddItemDetail(ItemTransaction, 1, "Bacalhau", 1, 33);

            ItemTransaction.AddDetail(StockTransactionDetail, true);

            ////Add Line_2: Enter customer returnables ,Customer input value is negative
            StockTransactionDetail = AddItemDetail(ItemTransaction, 1, "TARAS", -3, 0.30);
            ItemTransaction.AddDetail(StockTransactionDetail, true);


//-------------------------------------------------------------
// *** DETAILS
//-------------------------------------------------------------

//-------------------------------------------------------------
// *** SAVE DOCUMENT
//-------------------------------------------------------------
            //*** SAVE only if document have Lines
            if (ItemTransaction.Transaction.Details.Count > 0)
            {
                try {
                    //Ensure Till is open
                    ItemTransaction.EnsureOpenTill(ItemTransaction.Transaction.Till.TillID);
                    //Calculate
                    ItemTransaction.Calculate(true, true);
                    //Save Document
                    ItemTransaction.SaveDocument(false, false);
                    //Console.Error.Write(ItemTransaction.Transaction.TransactionID.ToString());
                }
                catch (Exception ex) {
                    Console.Error.Write(ex.Message);
                }
            }
//-------------------------------------------------------------
// *** SAVE DOCUMENT
//-------------------------------------------------------------
        }