protected override void Save()
        {
            int sortorder = 0;

            foreach (var currentsaldos in Items)
            {
                int key = 0;
                if (!int.TryParse(currentsaldos.Key, out key))
                {
                    key = 0;
                }
                var saldo = new SaldoAnaliticModel();
                saldo.ACCFIELDKEY = currentsaldos.Fieldkey;
                saldo.ACCID       = AccID;
                saldo.DATA        = DateTime.Now;
                saldo.SORTORDER   = sortorder;
                sortorder++;
                int test;
                if (int.TryParse(currentsaldos.Key, out test))
                {
                    saldo.LOOKUPFIELDKEY = test;
                }
                saldo.TYPEACCKEY = typeAnaliticalKey;
                saldo.VALUEDATE  = currentsaldos.ValueDate;
                if (currentsaldos.Type == SaldoItemTypes.Date)
                {
                    if (string.IsNullOrWhiteSpace(currentsaldos.Value))
                    {
                        currentsaldos.Value = currentsaldos.ValueDate.ToShortDateString();
                    }
                }
                saldo.VAL      = currentsaldos.Value;
                saldo.VALS     = currentsaldos.Lookupval;
                saldo.VALUENUM = currentsaldos.ValueInt;


                saldo.GROUP = this.GroupId;
                if (currentsaldos.IsDK)
                {
                    saldo.VALKOLD    = currentsaldos.Fieldkey == 31 ? currentsaldos.ValueDebit : 0;
                    saldo.VALKOLK    = currentsaldos.Fieldkey == 31 ? currentsaldos.ValueCredit : 0;
                    saldo.VALVALK    = currentsaldos.Fieldkey == 30 ? currentsaldos.ValueDebit : 0;
                    saldo.VALVALD    = currentsaldos.Fieldkey == 30 ? currentsaldos.ValueCredit : 0;
                    saldo.VALUEMONEY = currentsaldos.Fieldkey == 29? currentsaldos.ValueCredit:0;
                    saldo.VALUED     = currentsaldos.Fieldkey == 29?currentsaldos.ValueDebit:0;
                }
                saldo.LOOKUPID = currentsaldos.Relookup;
                Context.SaveMovement(saldo);
            }
        }
 protected override void Update()
 {
     foreach (var currentsaldos in Items)
     {
         if (!currentsaldos.IsDK)
         {
             continue;
         }
         var ni = new SaldoAnaliticModel
         {
             ACCFIELDKEY    = currentsaldos.Fieldkey,
             ACCID          = AccID,
             DATA           = DateTime.Now,
             LOOKUPFIELDKEY =
                 string.IsNullOrWhiteSpace(currentsaldos.Key)
                                  ? 0
                                  : int.Parse(currentsaldos.Key),
             TYPEACCKEY = typeAnaliticalKey,
             VALUEDATE  = currentsaldos.ValueDate,
             VAL        = currentsaldos.Value,
             VALUEMONEY = 0,
             VALUENUM   = currentsaldos.ValueInt,
             VALUED     = 0,
             GROUP      = this.GroupId,
             VALKOLD    = 0,
             VALKOLK    = 0,
             VALVALD    = 0,
             VALVALK    = 0,
             LOOKUPID   = currentsaldos.Relookup,
             VALS       = currentsaldos.Vals,
         };
         if (currentsaldos.Fieldkey == 31)
         {
             ni.VALKOLD = currentsaldos.ValueDebit;
             ni.VALKOLK = currentsaldos.ValueCredit;
         }
         if (currentsaldos.Fieldkey == 30)
         {
             ni.VALVALD = currentsaldos.ValueDebit;
             ni.VALVALK = currentsaldos.ValueCredit;
         }
         if (currentsaldos.Fieldkey == 29)
         {
             ni.VALUED     = currentsaldos.ValueDebit;
             ni.VALUEMONEY = currentsaldos.ValueCredit;
         }
         Context.UpdateMovement(ni);
     }
 }
Beispiel #3
0
        public static void UpdateContoMovement(SaldoAnaliticModel saldoAnaliticModel)
        {
            var dbman = new DBManager(DataProvider.Firebird);

            dbman.ConnectionString = Entrence.ConnectionString;
            try
            {
                dbman.Open();
                dbman.BeginTransaction();
                dbman.CreateParameters(19);
                dbman.AddParameters(0, "@ACCID", saldoAnaliticModel.ACCID);
                dbman.AddParameters(1, "@ACCFIELDKEY", saldoAnaliticModel.ACCFIELDKEY);
                dbman.AddParameters(2, "@LOOKUPFIELDKEY", saldoAnaliticModel.LOOKUPFIELDKEY);
                dbman.AddParameters(3, "@VAL", saldoAnaliticModel.VAL);
                dbman.AddParameters(4, "@VALUEDATE", saldoAnaliticModel.VALUEDATE);
                dbman.AddParameters(5, "@VALUEMONEY", saldoAnaliticModel.VALUEMONEY);
                dbman.AddParameters(6, "@VALUENUM", saldoAnaliticModel.VALUENUM);
                dbman.AddParameters(7, "@TYPEACCKEY", saldoAnaliticModel.TYPEACCKEY);
                dbman.AddParameters(8, "@VALUED", saldoAnaliticModel.VALUED);
                dbman.AddParameters(9, "@LOOKUPID", saldoAnaliticModel.LOOKUPID);
                dbman.AddParameters(10, "@CONTOID", saldoAnaliticModel.CONTOID);
                dbman.AddParameters(11, "@TYPE", saldoAnaliticModel.TYPE);
                dbman.AddParameters(12, "@ID", saldoAnaliticModel.ID);
                dbman.AddParameters(13, "@KURS", saldoAnaliticModel.KURS);
                dbman.AddParameters(14, "@KURSD", saldoAnaliticModel.KURSD);
                dbman.AddParameters(15, "@KURSM", saldoAnaliticModel.KURSM);
                dbman.AddParameters(16, "@VALVAL", saldoAnaliticModel.VALVAL);
                dbman.AddParameters(17, "@LOOKUPVAL", saldoAnaliticModel.LOOKUPVAL);
                dbman.AddParameters(18, "@SORTORDER", saldoAnaliticModel.SORTORDER);
                dbman.ExecuteNonQuery(CommandType.StoredProcedure, "UPDATEMOVENTCONTO");
                dbman.CommitTransaction();
            }

            catch (Exception ex)
            {
                Logger.Instance().WriteLogError(ex.Message, "UpdateContoMovement");
                dbman.RollBackTransaction();
            }

            finally
            {
                dbman.Dispose();
            }
        }
Beispiel #4
0
        public static bool CheckMovement(SaldoAnaliticModel saldoAnaliticModel)
        {
            var dbman = new DBManager(DataProvider.Firebird);

            dbman.ConnectionString = Entrence.ConnectionString;
            bool result = true;

            try
            {
                dbman.Open();
                dbman.BeginTransaction();
                dbman.CreateParameters(11);
                dbman.AddParameters(0, "@ACCID", saldoAnaliticModel.ACCID);
                dbman.AddParameters(1, "@ACCFIELDKEY", saldoAnaliticModel.ACCFIELDKEY);
                dbman.AddParameters(2, "@LOOKUPFIELDKEY", saldoAnaliticModel.LOOKUPFIELDKEY);
                dbman.AddParameters(3, "@VAL", saldoAnaliticModel.VAL);
                dbman.AddParameters(4, "@VALUEDATE", saldoAnaliticModel.VALUEDATE);
                dbman.AddParameters(5, "@VALUEMONEY", saldoAnaliticModel.VALUEMONEY);
                dbman.AddParameters(6, "@VALUENUM", saldoAnaliticModel.VALUENUM);
                dbman.AddParameters(7, "@TYPEACCKEY", saldoAnaliticModel.TYPEACCKEY);
                dbman.AddParameters(8, "@VALUED", saldoAnaliticModel.VALUED);
                dbman.AddParameters(9, "@LOOKUPID", saldoAnaliticModel.LOOKUPID);
                dbman.AddOutputParameters(10, "@ISIN", saldoAnaliticModel.LOOKUPID);
                dbman.ExecuteNonQuery(CommandType.StoredProcedure, "CHECKMOVENT");
                dbman.CommitTransaction();
                result = (int)dbman.Parameters[10].Value == 0;
            }

            catch (Exception ex)
            {
                Logger.Instance().WriteLogError(ex.Message, "GetAllLookupsFields");
                dbman.RollBackTransaction();
                result = false;
            }

            finally
            {
                dbman.Dispose();
            }
            return(result);
        }
Beispiel #5
0
 private void SaveContoMovement(SaldoAnaliticModel saldoAnaliticModel)
 {
     DBManager.CreateParameters(17);
     DBManager.AddParameters(0, "@ACCID", saldoAnaliticModel.ACCID);
     DBManager.AddParameters(1, "@ACCFIELDKEY", saldoAnaliticModel.ACCFIELDKEY);
     DBManager.AddParameters(2, "@LOOKUPFIELDKEY", saldoAnaliticModel.LOOKUPFIELDKEY);
     DBManager.AddParameters(3, "@VAL", saldoAnaliticModel.VAL);
     DBManager.AddParameters(4, "@VALUEDATE", saldoAnaliticModel.VALUEDATE);
     DBManager.AddParameters(5, "@VALUEMONEY", saldoAnaliticModel.VALUEMONEY);
     DBManager.AddParameters(6, "@VALUENUM", saldoAnaliticModel.VALUENUM);
     DBManager.AddParameters(7, "@TYPEACCKEY", saldoAnaliticModel.TYPEACCKEY);
     DBManager.AddParameters(8, "@VALUED", saldoAnaliticModel.VALUED);
     DBManager.AddParameters(9, "@LOOKUPID", saldoAnaliticModel.LOOKUPID);
     DBManager.AddParameters(10, "@CONTOID", saldoAnaliticModel.CONTOID);
     DBManager.AddParameters(11, "@TYPE", saldoAnaliticModel.TYPE);
     DBManager.AddParameters(12, "@KURS", saldoAnaliticModel.KURS);
     DBManager.AddParameters(13, "@KURSD", saldoAnaliticModel.KURSD);
     DBManager.AddParameters(14, "@KURSM", saldoAnaliticModel.KURSM);
     DBManager.AddParameters(15, "@VALVAL", saldoAnaliticModel.VALVAL);
     DBManager.AddParameters(16, "@LOOKUPVAL", saldoAnaliticModel.LOOKUPVAL);
     DBManager.ExecuteNonQuery(CommandType.StoredProcedure, "ADDMOVENTCONTO");
 }
Beispiel #6
0
 public static void SaveContoMovementWithNo(SaldoAnaliticModel saldoAnaliticModel, DBManager dbman)
 {
     dbman.CreateParameters(18);
     dbman.AddParameters(0, "@ACCID", saldoAnaliticModel.ACCID);
     dbman.AddParameters(1, "@ACCFIELDKEY", saldoAnaliticModel.ACCFIELDKEY);
     dbman.AddParameters(2, "@LOOKUPFIELDKEY", saldoAnaliticModel.LOOKUPFIELDKEY);
     dbman.AddParameters(3, "@VAL", saldoAnaliticModel.VAL);
     dbman.AddParameters(4, "@VALUEDATE", saldoAnaliticModel.VALUEDATE);
     dbman.AddParameters(5, "@VALUEMONEY", saldoAnaliticModel.VALUEMONEY);
     dbman.AddParameters(6, "@VALUENUM", saldoAnaliticModel.VALUENUM);
     dbman.AddParameters(7, "@TYPEACCKEY", saldoAnaliticModel.TYPEACCKEY);
     dbman.AddParameters(8, "@VALUED", saldoAnaliticModel.VALUED);
     dbman.AddParameters(9, "@LOOKUPID", saldoAnaliticModel.LOOKUPID);
     dbman.AddParameters(10, "@CONTOID", saldoAnaliticModel.CONTOID);
     dbman.AddParameters(11, "@TYPE", saldoAnaliticModel.TYPE);
     dbman.AddParameters(12, "@KURS", saldoAnaliticModel.KURS);
     dbman.AddParameters(13, "@KURSD", saldoAnaliticModel.KURSD);
     dbman.AddParameters(14, "@KURSM", saldoAnaliticModel.KURSM);
     dbman.AddParameters(15, "@VALVAL", saldoAnaliticModel.VALVAL);
     dbman.AddParameters(16, "@LOOKUPVAL", saldoAnaliticModel.LOOKUPVAL);
     dbman.AddParameters(17, "@SORTORDER", saldoAnaliticModel.SORTORDER);
     dbman.ExecuteNonQuery(CommandType.StoredProcedure, "ADDMOVENTCONTO");
 }
Beispiel #7
0
        private void SaveConto(WrapConto CurrentConto)
        {
            CurrentConto.Conto.CDetails = "";
            CurrentConto.Conto.DDetails = "";
            foreach (SaldoItem currentsaldos in CurrentConto.ItemsCredits)
            {
                if (currentsaldos.Fieldkey == 30)
                {
                    CurrentConto.Conto.OborotValutaK = currentsaldos.Valuedecimal;
                }
                if (currentsaldos.Fieldkey == 31)
                {
                    CurrentConto.Conto.OborotKolK = currentsaldos.Valuedecimal;
                }
                CurrentConto.Conto.CDetails += string.Format("{0} - {1} {2}\n", currentsaldos.Name, currentsaldos.Value, currentsaldos.Lookupval);
            }
            foreach (SaldoItem currentsaldos in CurrentConto.ItemsDebits)
            {
                if (currentsaldos.Fieldkey == 30)
                {
                    CurrentConto.Conto.OborotValutaD = currentsaldos.Valuedecimal;
                }
                if (currentsaldos.Fieldkey == 31)
                {
                    CurrentConto.Conto.OborotKolD = currentsaldos.Valuedecimal;
                }
                CurrentConto.Conto.DDetails += string.Format("{0} - {1} {2}\n", currentsaldos.Name, currentsaldos.Value, currentsaldos.Lookupval);
            }
            SaveContoLocal(CurrentConto.Conto);
            if (CurrentConto.Conto.Id == 0)
            {
                return;
            }
            if (CurrentConto.ItemsCredits != null)
            {
                foreach (SaldoItem currentsaldos in CurrentConto.ItemsCredits)
                {
                    SaldoAnaliticModel sa = new SaldoAnaliticModel();
                    sa.ACCFIELDKEY = currentsaldos.Fieldkey;
                    sa.ACCID       = CurrentConto.Conto.CreditAccount;
                    sa.DATA        = DateTime.Now;
                    //if (currentsaldos.SelectedLookupItem != null && !string.IsNullOrWhiteSpace(currentsaldos.SelectedLookupItem.Key))
                    //{
                    //    if (currentsaldos.SelectedLookupItem.Key != null)
                    //    {
                    //        int rez;
                    //        sa.LOOKUPFIELDKEY = int.TryParse(currentsaldos.SelectedLookupItem.Key,out rez)?rez:0;
                    //        sa.LOOKUPVAL = currentsaldos.SelectedLookupItem.Value;
                    //    }

                    //}
                    sa.LOOKUPFIELDKEY = currentsaldos.LiD;
                    sa.LOOKUPVAL      = currentsaldos.Lookupval;
                    sa.TYPEACCKEY     = 2;
                    sa.VALUEDATE      = currentsaldos.ValueDate;
                    sa.VAL            = currentsaldos.Value;
                    sa.VALUEMONEY     = currentsaldos.Valuedecimal;
                    sa.VALUENUM       = currentsaldos.ValueInt;
                    sa.VALUED         = currentsaldos.Valuedecimald;
                    sa.KURS           = currentsaldos.ValueKurs;
                    sa.KURSM          = currentsaldos.MainKurs;
                    sa.VALVAL         = currentsaldos.ValueVal;
                    sa.KURSD          = currentsaldos.KursDif;
                    sa.TYPE           = 2;
                    sa.LOOKUPID       = currentsaldos.Relookup;
                    sa.CONTOID        = CurrentConto.Conto.Id;
                    SaveContoMovement(sa);
                }
            }
            if (CurrentConto.ItemsDebits != null)
            {
                foreach (SaldoItem currentsaldos in CurrentConto.ItemsDebits)
                {
                    SaldoAnaliticModel sa = new SaldoAnaliticModel();

                    sa.ACCFIELDKEY = currentsaldos.Fieldkey;
                    sa.ACCID       = CurrentConto.Conto.DebitAccount;
                    sa.DATA        = DateTime.Now;
                    //if (currentsaldos.SelectedLookupItem != null && !string.IsNullOrWhiteSpace(currentsaldos.SelectedLookupItem.Key))
                    //{
                    //    if (currentsaldos.SelectedLookupItem.Key != null)
                    //    {
                    //        int rez;
                    //        sa.LOOKUPFIELDKEY = int.TryParse(currentsaldos.SelectedLookupItem.Key,out rez)?rez:0;
                    //        sa.LOOKUPVAL = currentsaldos.SelectedLookupItem.Value;
                    //    }

                    //}
                    sa.LOOKUPFIELDKEY = currentsaldos.LiD;
                    sa.TYPEACCKEY     = 1;
                    sa.VALUEDATE      = currentsaldos.ValueDate;
                    sa.VAL            = currentsaldos.Value;
                    sa.VALUEMONEY     = currentsaldos.Valuedecimal;
                    sa.VALUENUM       = currentsaldos.ValueInt;
                    sa.VALUED         = currentsaldos.Valuedecimald;
                    sa.KURS           = currentsaldos.ValueKurs;
                    sa.KURSM          = currentsaldos.MainKurs;
                    sa.VALVAL         = currentsaldos.ValueVal;
                    sa.KURSD          = currentsaldos.KursDif;
                    sa.TYPE           = 1;
                    sa.LOOKUPID       = currentsaldos.Relookup;
                    sa.LOOKUPVAL      = currentsaldos.Lookupval;
                    sa.CONTOID        = CurrentConto.Conto.Id;

                    SaveContoMovement(sa);
                }
            }
        }
Beispiel #8
0
        public void PopulateConto()
        {
            Entrence.ConnectionString =
                "User ID=sysdba;Password=masterkey;Database=localhost:E:\\Samples\\Tempo2012MVVM\\Tempo2012\\Tempo2012.UI.WPF\\bin\\Debug\\data\\TEMPO2012.FDB;DataSource=localhost;";
            ObservableCollection <SaldoItem> ItemsCredit = new ObservableCollection <SaldoItem>();
            ObservableCollection <SaldoItem> ItemsDebit  = new ObservableCollection <SaldoItem>();

            Tempo2012.EntityFramework.TempoDataBaseContext context =
                new Tempo2012.EntityFramework.TempoDataBaseContext();
            ObservableCollection <WraperConto> AllWrapedConto = new ObservableCollection <WraperConto>();
            var AllAccountsK =
                new ObservableCollection <AccountsModel>(
                    context.GetAllAccounts(1));
            var Lookups = new ObservableCollection <LookUpMetaData>(context.GetAllLookups(" where NAMEENG='k'"));

            var allconto = context.GetAllConto(1);

            foreach (Conto conto in allconto)
            {
                var cont = conto.Clone();
                cont.DataInvoise.AddDays(1);
                AllWrapedConto.Add(new WraperConto(cont));
            }
            foreach (WraperConto wraperConto in AllWrapedConto)
            {
                ItemsCredit = new ObservableCollection <SaldoItem>(LoadDetails(wraperConto.CurrentConto.Id, 2, context));
                ItemsDebit  = new ObservableCollection <SaldoItem>(LoadDetails(wraperConto.CurrentConto.Id, 1, context));
                var oldid = wraperConto.Id;
                List <SaldoAnaliticModel> debit  = new List <SaldoAnaliticModel>();
                List <SaldoAnaliticModel> credit = new List <SaldoAnaliticModel>();
                if (ItemsCredit != null)
                {
                    foreach (SaldoItem currentsaldos in ItemsCredit)
                    {
                        SaldoAnaliticModel sa = new SaldoAnaliticModel();
                        sa.ACCFIELDKEY = currentsaldos.Fieldkey;
                        sa.ACCID       = wraperConto.CurrentConto.CreditAccount;
                        sa.DATA        = wraperConto.CurrentConto.DataInvoise;
                        sa.TYPEACCKEY  = 0;
                        sa.VALUEDATE   = currentsaldos.ValueDate;
                        sa.VAL         = currentsaldos.Value;
                        sa.VALUEMONEY  = currentsaldos.Valuedecimal;
                        sa.VALUENUM    = currentsaldos.ValueInt;
                        sa.VALUED      = currentsaldos.Valuedecimald;
                        sa.KURS        = currentsaldos.IsKol?currentsaldos.OnePrice:currentsaldos.ValueKurs;
                        sa.VALVAL      = currentsaldos.IsKol?currentsaldos.ValueKol:currentsaldos.ValueVal;
                        sa.KURSM       = currentsaldos.MainKurs;
                        sa.KURSD       = currentsaldos.KursDif;
                        sa.TYPE        = 2;
                        sa.LOOKUPID    = currentsaldos.Relookup;
                        sa.CONTOID     = wraperConto.CurrentConto.Id;
                        //context.SaveContoMovement(sa);
                        debit.Add(sa);
                    }
                }
                if (ItemsDebit != null)
                {
                    foreach (SaldoItem currentsaldos in ItemsDebit)
                    {
                        SaldoAnaliticModel sa = new SaldoAnaliticModel();

                        sa.ACCFIELDKEY = currentsaldos.Fieldkey;
                        sa.ACCID       = wraperConto.CurrentConto.DebitAccount;
                        sa.DATA        = DateTime.Now;
                        sa.TYPEACCKEY  = 0;
                        sa.VALUEDATE   = currentsaldos.ValueDate;
                        sa.VAL         = currentsaldos.Value;
                        sa.VALUEMONEY  = currentsaldos.Valuedecimal;
                        sa.VALUENUM    = currentsaldos.ValueInt;
                        sa.VALUED      = currentsaldos.Valuedecimald;
                        sa.KURS        = currentsaldos.IsKol ? currentsaldos.OnePrice : currentsaldos.ValueKurs;
                        sa.VALVAL      = currentsaldos.IsKol ? currentsaldos.ValueKol : currentsaldos.ValueVal;
                        sa.KURSM       = currentsaldos.MainKurs;
                        sa.KURSD       = currentsaldos.KursDif;
                        sa.TYPE        = 1;
                        sa.LOOKUPID    = currentsaldos.Relookup;

                        sa.CONTOID = wraperConto.CurrentConto.Id;
                        credit.Add(sa);
                        // context.SaveContoMovement(sa);
                    }
                }
                context.SaveConto(wraperConto.CurrentConto, debit, credit);
                #region sells

                if (wraperConto.IsSales)
                {
                    DdsDnevnikModel ddsDnevnikModel = context.LoadDenevnicItem(oldid, 2);
                    //ddsDnevnikModel.DocId = CurrentWraperConto.CurrentConto.DocNum;
                    ddsDnevnikModel.Date         = wraperConto.CurrentConto.Data;
                    ddsDnevnikModel.KindActivity = 2;

                    if (ddsDnevnikModel.LookupID == 0)
                    {
                        ddsDnevnikModel.CodeDoc = "01";
                        if (wraperConto.IsPurchases)
                        {
                            foreach (SaldoItem saldoItem in ItemsCredit)
                            {
                                if (saldoItem.IsLookUp)
                                {
                                    ddsDnevnikModel.LookupID = saldoItem.Relookup;
                                    if (saldoItem.SelectedLookupItem != null)
                                    {
                                        int lokalkey;
                                        if (int.TryParse(saldoItem.SelectedLookupItem.Key, out lokalkey))
                                        {
                                            ddsDnevnikModel.LookupElementID = lokalkey;
                                        }
                                    }
                                }
                                if (saldoItem.Name.Contains("Дата на фактура"))
                                {
                                    ddsDnevnikModel.DataF = saldoItem.ValueDate;
                                }
                                if (saldoItem.Name.Contains("Номер фактура"))
                                {
                                    ddsDnevnikModel.DocId = saldoItem.Value;
                                }
                            }
                        }
                        else
                        {
                            foreach (SaldoItem saldoItem in ItemsDebit)
                            {
                                if (saldoItem.IsLookUp)
                                {
                                    ddsDnevnikModel.LookupID = saldoItem.Relookup;
                                    if (saldoItem.SelectedLookupItem != null)
                                    {
                                        int lokalkey;
                                        if (int.TryParse(saldoItem.SelectedLookupItem.Key, out lokalkey))
                                        {
                                            ddsDnevnikModel.LookupElementID = lokalkey;
                                        }
                                    }
                                }
                                if (saldoItem.Name.Contains("Дата на фактура"))
                                {
                                    ddsDnevnikModel.DataF = saldoItem.ValueDate;
                                }
                                if (saldoItem.Name.Contains("Номер фактура"))
                                {
                                    ddsDnevnikModel.DocId = saldoItem.Value;
                                }
                            }
                        }
                    }

                    if (ddsDnevnikModel.LookupID > 0)
                    {
                        var SelectedLookup = new ObservableCollection <ContragentInfo>();
                        var Lookup         = Lookups.FirstOrDefault(e => e.Id == ddsDnevnikModel.LookupID);
                        var list           = context.GetLookup(Lookup.Tablename,
                                                               1);
                        foreach (List <string> li in list)
                        {
                            if (li != null && li.Count > 5)
                            {
                                SelectedLookup.Add(new ContragentInfo
                                {
                                    Id      = int.Parse(li[1]),
                                    Name    = li[2],
                                    Bulstad = li[4],
                                    Nzdds   = li[5]
                                });
                            }
                        }
                        if (ddsDnevnikModel.LookupElementID > 0)
                        {
                            LookupElementInfo =
                                SelectedLookup.FirstOrDefault(e => e.Id == ddsDnevnikModel.LookupElementID);
                            ddsDnevnikModel.Num = wraperConto.CurrentConto.Id;
                            if (LookupElementInfo != null)
                            {
                                ddsDnevnikModel.LookupElementID = LookupElementInfo.Id;
                                ddsDnevnikModel.Bulstat         = LookupElementInfo.Bulstad;
                                ddsDnevnikModel.Nzdds           = LookupElementInfo.Nzdds;
                                ddsDnevnikModel.NameKontr       = LookupElementInfo.Name;
                            }
                        }
                    }
                    ddsDnevnikModel.Num = wraperConto.CurrentConto.Id;
                    context.SaveDdsDnevnicModel(ddsDnevnikModel, ddsDnevnikModel.IsLinked);
                }


                #endregion

                #region purchases

                if (wraperConto.IsPurchases)
                {
                    var ddsDnevnikModel = context.LoadDenevnicItem(oldid, 1);
                    //ddsDnevnikModel.DocId = CurrentWraperConto.CurrentConto.DocNum;
                    ddsDnevnikModel.Date         = wraperConto.CurrentConto.Data;
                    ddsDnevnikModel.KindActivity = 1;

                    if (ddsDnevnikModel.LookupID == 0)
                    {
                        foreach (SaldoItem saldoItem in ItemsCredit)
                        {
                            if (saldoItem.IsLookUp)
                            {
                                ddsDnevnikModel.LookupID = saldoItem.Relookup;
                            }
                            if (saldoItem.Name.Contains("Дата на фактура"))
                            {
                                ddsDnevnikModel.DataF = saldoItem.ValueDate;
                            }
                            if (saldoItem.Name.Contains("Номер фактура"))
                            {
                                ddsDnevnikModel.DocId = saldoItem.Value;
                            }
                        }
                    }

                    if (ddsDnevnikModel.LookupID > 0)
                    {
                        var SelectedLookup = new ObservableCollection <ContragentInfo>();
                        var Lookup         = Lookups.FirstOrDefault(e => e.Id == ddsDnevnikModel.LookupID);
                        var list           = context.GetLookup(Lookup.Tablename,
                                                               1);
                        foreach (List <string> li in list)
                        {
                            if (li != null && li.Count > 5)
                            {
                                SelectedLookup.Add(new ContragentInfo
                                {
                                    Id      = int.Parse(li[1]),
                                    Name    = li[2],
                                    Bulstad = li[4],
                                    Nzdds   = li[5]
                                });
                            }
                        }
                        if (ddsDnevnikModel.LookupElementID > 0)
                        {
                            LookupElementInfo =
                                SelectedLookup.FirstOrDefault(e => e.Id == ddsDnevnikModel.LookupElementID);
                            ddsDnevnikModel.Num = wraperConto.CurrentConto.Id;
                            if (LookupElementInfo != null)
                            {
                                ddsDnevnikModel.LookupElementID = LookupElementInfo.Id;
                                ddsDnevnikModel.Bulstat         = LookupElementInfo.Bulstad;
                                ddsDnevnikModel.Nzdds           = LookupElementInfo.Nzdds;
                                ddsDnevnikModel.NameKontr       = LookupElementInfo.Name;
                            }
                        }
                    }
                    ddsDnevnikModel.Num = wraperConto.CurrentConto.Id;
                    context.SaveDdsDnevnicModel(ddsDnevnikModel, ddsDnevnikModel.IsLinked);
                }
                #endregion
            }
        }
Beispiel #9
0
        private static void SaveMainConto(TempoDataBaseContext context, ContoAll allconto)
        {
            int ii = 0;
            List <SaldoAnaliticModel> debit  = new List <SaldoAnaliticModel>();
            List <SaldoAnaliticModel> credit = new List <SaldoAnaliticModel>();

            if (allconto.ItemsCredit != null)
            {
                foreach (SaldoItem currentsaldos in allconto.ItemsCredit)
                {
                    SaldoAnaliticModel sa = new SaldoAnaliticModel();
                    sa.ACCFIELDKEY = currentsaldos.Fieldkey;
                    sa.ACCID       = allconto.Conto.CreditAccount;
                    sa.DATA        = DateTime.Now;
                    //if (currentsaldos.SelectedLookupItem != null && !string.IsNullOrWhiteSpace(currentsaldos.SelectedLookupItem.Key))
                    //{
                    //    if (currentsaldos.SelectedLookupItem.Key != null)
                    //    {
                    //        int rez;
                    //        sa.LOOKUPFIELDKEY = int.TryParse(currentsaldos.SelectedLookupItem.Key,out rez)?rez:0;
                    //        sa.LOOKUPVAL = currentsaldos.SelectedLookupItem.Value;
                    //    }

                    //}
                    sa.LOOKUPFIELDKEY = currentsaldos.LiD;
                    sa.LOOKUPVAL      = currentsaldos.Lookupval;
                    sa.TYPEACCKEY     = 0;
                    sa.VALUEDATE      = currentsaldos.ValueDate;
                    sa.VAL            = currentsaldos.Value;
                    sa.VALUEMONEY     = currentsaldos.Valuedecimal;
                    sa.VALUENUM       = currentsaldos.ValueInt;
                    sa.VALUED         = currentsaldos.Valuedecimald;
                    sa.KURS           = currentsaldos.IsKol ? currentsaldos.OnePrice : currentsaldos.ValueKurs;
                    sa.VALVAL         = currentsaldos.IsKol ? currentsaldos.ValueKol : currentsaldos.ValueVal;
                    sa.KURSM          = currentsaldos.MainKurs;
                    sa.KURSD          = currentsaldos.KursDif;
                    sa.KURSD          = currentsaldos.KursDif;
                    sa.TYPE           = 2;
                    sa.LOOKUPID       = currentsaldos.Relookup;
                    sa.CONTOID        = allconto.Conto.Id;
                    sa.SORTORDER      = ii;
                    debit.Add(sa);
                    ii++;
                }
            }
            ii = 0;
            if (allconto.ItemsDebit != null)
            {
                foreach (SaldoItem currentsaldos in allconto.ItemsDebit)
                {
                    SaldoAnaliticModel sa = new SaldoAnaliticModel();

                    sa.ACCFIELDKEY    = currentsaldos.Fieldkey;
                    sa.ACCID          = allconto.Conto.DebitAccount;
                    sa.DATA           = DateTime.Now;
                    sa.LOOKUPFIELDKEY = currentsaldos.LiD;
                    sa.TYPEACCKEY     = 0;
                    sa.VALUEDATE      = currentsaldos.ValueDate;
                    sa.VAL            = currentsaldos.Value;
                    sa.VALUEMONEY     = currentsaldos.Valuedecimal;
                    sa.VALUENUM       = currentsaldos.ValueInt;
                    sa.VALUED         = currentsaldos.Valuedecimald;
                    sa.KURS           = currentsaldos.IsKol ? currentsaldos.OnePrice : currentsaldos.ValueKurs;
                    sa.VALVAL         = currentsaldos.IsKol ? currentsaldos.ValueKol : currentsaldos.ValueVal;
                    sa.KURSM          = currentsaldos.MainKurs;
                    sa.KURSD          = currentsaldos.KursDif;
                    sa.KURSD          = currentsaldos.KursDif;
                    sa.TYPE           = 1;
                    sa.LOOKUPID       = currentsaldos.Relookup;
                    sa.LOOKUPVAL      = currentsaldos.Lookupval;
                    sa.CONTOID        = allconto.Conto.Id;
                    sa.SORTORDER      = ii;
                    credit.Add(sa);
                    ii++;
                }
            }
            context.SaveConto(allconto.Conto, debit, credit);
        }
Beispiel #10
0
 public bool CheckMovement(SaldoAnaliticModel saldoAnaliticModel)
 {
     return(RealDataContext.CheckMovement(saldoAnaliticModel));
 }
Beispiel #11
0
 public void UpdateContoMovement(SaldoAnaliticModel sa)
 {
     RealDataContext.UpdateContoMovement(sa);
 }
Beispiel #12
0
 public void SaveContoMovement(SaldoAnaliticModel saldoAnaliticModel)
 {
     RealDataContext.SaveContoMovement(saldoAnaliticModel);
 }
Beispiel #13
0
 public virtual void UpdateMovement(SaldoAnaliticModel saldoAnaliticModel)
 {
     RealDataContext.UpdateMovement(saldoAnaliticModel);
 }