Exemple #1
0
        public void CanAddRecursive()
        {
            var organization         = dataContext.Single <Организации>(x => x.ИНН == organizationInn);
            var counterpartyContract = new ДоговорыКонтрагентов
            {
                ВидДоговора  = ВидыДоговоровКонтрагентов.СПокупателем,
                Наименование = "test name",
                Владелец     = new Контрагенты
                {
                    ИНН          = "1234567890",
                    Наименование = "test-counterparty",
                    ЮридическоеФизическоеЛицо = ЮридическоеФизическоеЛицо.ЮридическоеЛицо
                },
                Организация = organization
            };

            dataContext.Save(counterpartyContract);
            Assert.That(string.IsNullOrEmpty(counterpartyContract.Код), Is.False);
            Assert.That(string.IsNullOrEmpty(counterpartyContract.Владелец.Код), Is.False);

            var valueTable = globalContext.Execute("ВЫБРАТЬ * ИЗ Справочник.ДоговорыКонтрагентов ГДЕ Код=&Code", new Dictionary <string, object>
            {
                { "Code", counterpartyContract.Код }
            }).Unload();

            Assert.That(valueTable.Count, Is.EqualTo(1));
            Assert.That(valueTable[0].GetString("Наименование"), Is.EqualTo("test name"));
        }
Exemple #2
0
        public void DbNullInUniqueIdentifier()
        {
            var counterpart = new Контрагенты
            {
                Наименование = "test-counterpart-name",
                ИНН          = "0987654321",
                КПП          = "987654321"
            };

            dataContext.Save(counterpart);
            var договор = new ДоговорыКонтрагентов
            {
                ВидДоговора  = ВидыДоговоровКонтрагентов.Прочее,
                Владелец     = counterpart,
                Наименование = "Основной договор"
            };

            dataContext.Save(договор);

            var counterparties = dataContext.Select <ДоговорыКонтрагентов>()
                                 .Where(x => x.УникальныйИдентификатор == договор.УникальныйИдентификатор)
                                 .Select(x => new
            {
                Id = x.Организация.УникальныйИдентификатор
            })
                                 .ToArray();

            Assert.That(counterparties.Length, Is.EqualTo(1));
            Assert.That(counterparties[0].Id, Is.Null);
        }
        public void NestedObjectNullException()
        {
            var договор = new ДоговорыКонтрагентов
            {
                Владелец = null
            };

            dataContext.Save(договор);
            Assert.That(договор.УникальныйИдентификатор, Is.Not.Null);
            var договоры = dataContext.Select <ДоговорыКонтрагентов>()
                           .Where(x => x.УникальныйИдентификатор == договор.УникальныйИдентификатор)
                           .ToArray();

            Assert.That(договоры.Length, Is.EqualTo(1));
            Assert.That(договоры[0].Владелец, Is.Null);
        }
        public void SimpleInnerSave()
        {
            var counterparty = new Контрагенты
            {
                Наименование = "Тестовый контрагент"
            };
            var contract = new ДоговорыКонтрагентов
            {
                Наименование = "Тестовый договор",
                Владелец     = counterparty
            };

            dataContext.Save(contract);
            var array = dataContext.Select <Контрагенты>().ToArray();

            Assert.That(array.Length, Is.EqualTo(1));
            Assert.That(array[0].Наименование, Is.EqualTo("Тестовый контрагент"));
        }
        protected ПоступлениеТоваровУслуг CreateFullFilledDocument()
        {
            var контрагент = new Контрагенты
            {
                ИНН          = "7711223344",
                Наименование = "ООО Тестовый контрагент"
            };
            var организация          = dataContext.Single <Организации>(x => x.ИНН == organizationInn);
            var валютаВзаиморасчетов = dataContext.Single <Валюты>(x => x.Код == "643");
            var договорСКонтрагентом = new ДоговорыКонтрагентов
            {
                Владелец             = контрагент,
                Организация          = организация,
                ВидДоговора          = ВидыДоговоровКонтрагентов.СПоставщиком,
                Наименование         = "test contract",
                Комментарий          = "test contract comment",
                ВалютаВзаиморасчетов = валютаВзаиморасчетов
            };
            var счет26              = dataContext.Single <Хозрасчетный>(x => x.Код == "26");
            var счет1904            = dataContext.Single <Хозрасчетный>(x => x.Код == "19.04");
            var счет6001            = dataContext.Single <Хозрасчетный>(x => x.Код == "60.01");
            var счет6002            = dataContext.Single <Хозрасчетный>(x => x.Код == "60.02");
            var материальныеРасходы = new СтатьиЗатрат
            {
                Наименование  = "Материальные расходы",
                ВидРасходовНУ = ВидыРасходовНУ.МатериальныеРасходы
            };

            return(new ПоступлениеТоваровУслуг
            {
                ДатаВходящегоДокумента = new DateTime(2016, 6, 1),
                Дата = new DateTime(2016, 6, 1),
                НомерВходящегоДокумента = "12345",
                ВидОперации = ВидыОперацийПоступлениеТоваровУслуг.Услуги,
                Контрагент = контрагент,
                ДоговорКонтрагента = договорСКонтрагентом,
                Организация = организация,
                СпособЗачетаАвансов = СпособыЗачетаАвансов.Автоматически,
                ВалютаДокумента = валютаВзаиморасчетов,
                СчетУчетаРасчетовСКонтрагентом = счет6001,
                СчетУчетаРасчетовПоАвансам = счет6002,
                Услуги = new List <ПоступлениеТоваровУслуг.ТабличнаяЧастьУслуги>
                {
                    new ПоступлениеТоваровУслуг.ТабличнаяЧастьУслуги
                    {
                        Номенклатура = new Номенклатура
                        {
                            Наименование = "стрижка"
                        },
                        Количество = 10,
                        Содержание = "стрижка с кудряшками",
                        Сумма = 120,
                        Цена = 12,
                        СтавкаНДС = СтавкиНДС.НДС18,
                        СуммаНДС = 21.6m,
                        СчетЗатрат = счет26,
                        СчетЗатратНУ = счет26,
                        СчетУчетаНДС = счет1904,
                        ОтражениеВУСН = ОтражениеВУСН.Принимаются,
                        Субконто1 = материальныеРасходы,
                        ПодразделениеЗатрат = ПолучитьОсновноеПодразделение()
                    },
                    new ПоступлениеТоваровУслуг.ТабличнаяЧастьУслуги
                    {
                        Номенклатура = new Номенклатура
                        {
                            Наименование = "мытье головы"
                        },
                        Количество = 10,
                        Содержание = "мытье головы хозяйственным мылом",
                        Сумма = 120,
                        Цена = 12,
                        СтавкаНДС = СтавкиНДС.НДС18,
                        СуммаНДС = 21.6m,
                        СчетЗатрат = счет26,
                        СчетЗатратНУ = счет26,
                        СчетУчетаНДС = счет1904,
                        ОтражениеВУСН = ОтражениеВУСН.Принимаются,
                        Субконто1 = материальныеРасходы,
                        ПодразделениеЗатрат = ПолучитьОсновноеПодразделение()
                    }
                }
            });
        }