1С: специалист по платформе. Задача 1.26

Публикация № 336032

Разработка - Решение задач на 1С:Специалист

-2
Решение задачи 1.26  специалиста по платформе.


За основу взял решение предыдущей задачи. Основное отличие - появились пени.  Поэтому и в регистр "Взаиморасчеты" необходимо добавить второй ресурс "Пени".
В документах потребуются косметические изменения.

3) Документ "Счет"
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
Движения.Счета.Записывать = Истина;
Движение = Движения.Счета.ДобавитьПриход();
Движение.Период = Дата;
Движение.Счет = Ссылка;
Движение.Сумма = Сумма;
КонецПроцедуры


4) Документ "Расходная накладная"
Чтобы документ вводился только на основании счета потребуется 2 процедуры
Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)
Если ТипЗнч(ДанныеЗаполнения) =Тип("ДокументСсылка.Счет") Тогда
 Счет = ДанныеЗаполнения; 
 Контрагент = ДанныеЗаполнения.Контрагент; 
 Дата = ТекущаяДата();
 Иначе
 Сообщение = Новый("СообщениеПользователю"); 
 Сообщение.Текст = "Документ можно вводить только на основании счета"; 
 Сообщение.Сообщить(); 
 КонецЕсли;
КонецПроцедуры
 

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
Если Не ЗначениеЗаполнено(Объект.Счет) Тогда
Отказ = Истина;
КонецЕсли;
КонецПроцедуры

 
Обработка проведения:
 
Движения.Счета.Записывать = Истина;
Движения.Взаиморасчеты.Записывать = Истина;
// Блокировка
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.Счета");
ЭлементБлокировки.УстановитьЗначение("Счет", Счет);
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
Блокировка.Заблокировать();
 
// Согласно новой методике проведения сначала делаем движения, затем проверку не ушли ли в минус
 
Движение = Движения.Счета.ДобавитьРасход();
Движение.Период = Дата;
Движение.Счет = Счет;
Движение.Сумма = СуммаПоДокументу;
 
Движение = Движения.Взаиморасчеты.ДобавитьПриход();
Движение.Период = Дата;
Движение.Счет = Счет;
Движение.Сумма = СуммаПоДокументу;
Движение.Контрагент = Контрагент;
//записываем движения чтобы они попали в запрос
Движения.Счета.Записать();
 
// запрос с проверкой
Запрос = Новый("Запрос");
Запрос.Текст ="ВЫБРАТЬ
|СчетаОстатки.СуммаОстаток КАК СуммаСчета
|ИЗ
|РегистрНакопления.Счета.Остатки(&ТочкаИтогов, Счет = &Счет) КАК СчетаОстатки
|ГДЕ
|СчетаОстатки.СуммаОстаток < 0";
 
Запрос.УстановитьПараметр("Счет",Счет);
ТочкаИтогов = ?(РежимПроведения= РежимПроведенияДокумента.Оперативный, Неопределено, Новый Граница(МоментВремени(),ВидГраницы.Включая));
Запрос.УстановитьПараметр("ТочкаИтогов",ТочкаИтогов);
Результат = Запрос.Выполнить();
Если  Не Результат.Пустой() Тогда 
Выборка = Результат.Выбрать();
Выборка.Следующий();
Если Выборка.СуммаСчета < СуммаПоДокументу Тогда
Отказ = Истина;
Сообщение = Новый("СообщениеПользователю");
Сообщение.Текст = "Сумма документа превышает сумму счета на "+ (-Выборка.СуммаСчета);
Сообщение.Сообщить();
КонецЕсли;
КонецЕсли;
 
 
 
5) Документ "Поступление денег"
По условию сначала списываются пени. Не нашел ничего лучшего как дважды обойти результат запроса,  первым обходом спишем пени, вторым сумму основного долга.


Процедура ОбработкаПроведения(Отказ, Режим)
Движения.Взаиморасчеты.Записывать = Истина;
Движения.Взаиморасчеты.Записать() ;
 
// Блокировка
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.Взаиморасчеты");
ЭлементБлокировки.УстановитьЗначение("Контрагент", Контрагент);
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
Блокировка.Заблокировать();
 
Запрос  = Новый("Запрос");
Запрос.Текст = "ВЫБРАТЬ
               |ПриходДенегСписокСчетов.Счет
               |ПОМЕСТИТЬ СписокСчетов
               |ИЗ
               |Документ.ПриходДенег.СписокСчетов КАК ПриходДенегСписокСчетов
               |ГДЕ
               |ПриходДенегСписокСчетов.Ссылка = &Ссылка
               |;
               |
               |////////////////////////////////////////////////////////////////////////////////
               |ВЫБРАТЬ
               |ВзаиморасчетыОстатки.Счет,
               |ВзаиморасчетыОстатки.СуммаОстаток КАК Долг,
               |ВзаиморасчетыОстатки.ПеняОстаток КАК Пеня
               |ИЗ
               |РегистрНакопления.Взаиморасчеты.Остатки(
               |&ТочкаИтогов,
               |Контрагент = &Контрагент
               |И Счет В
               |(ВЫБРАТЬ
               |СписокСчетов.Счет
               |ИЗ
               |СписокСчетов)) КАК ВзаиморасчетыОстатки
               |
               |УПОРЯДОЧИТЬ ПО
               |ВзаиморасчетыОстатки.Счет.Дата
               |ИТОГИ
               |СУММА(Долг),
               |СУММА(Пеня)
               |ПО
               |ОБЩИЕ";
 
Запрос.УстановитьПараметр("Контрагент",Контрагент);
ТочкаИтогов = ?(Режим= РежимПроведенияДокумента.Оперативный, Неопределено, Новый Граница(МоментВремени(),ВидГраницы.Исключая));
Запрос.УстановитьПараметр("ТочкаИтогов",ТочкаИтогов);
Запрос.УстановитьПараметр("Ссылка",Ссылка);
 
ВыборкаИтоги = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Общие");
ВыборкаИтоги.Следующий();
Если ВыборкаИтоги.Долг + ВыборкаИтоги.Пеня < Сумма Тогда
Отказ = Истина;
Сообщение = Новый("СообщениеПользователю");
Сообщение.Текст = "Сумма документа превышает сумму долга "+ (ВыборкаИтоги.Долг + ВыборкаИтоги.Пеня);
Сообщение.Сообщить();
Иначе
ОсталосьСписать = Сумма;
// спишем пени
Выборка = ВыборкаИтоги.Выбрать();
Пока Выборка.Следующий() и ОсталосьСписать >0    Цикл
Если Выборка.Пеня > 0 Тогда 
СуммаКСписанию = Мин(ОсталосьСписать, Выборка.Пеня);
Движение = Движения.Взаиморасчеты.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
Движение.Период = Дата;
Движение.Контрагент = Контрагент;
Движение.Счет = Выборка.Счет;
Движение.Пеня = СуммаКСписанию;
ОсталосьСписать = ОсталосьСписать - СуммаКСписанию;
КонецЕсли;
КонецЦикла;
 
 
Выборка.Сбросить();
// спишем долги по счетам
Пока Выборка.Следующий() и ОсталосьСписать >0   Цикл
Если Выборка.Долг>0 Тогда 
СуммаКСписанию = Мин(ОсталосьСписать, Выборка.Долг);
Движение = Движения.Взаиморасчеты.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
Движение.Период = Дата;
Движение.Контрагент = Контрагент;
Движение.Счет = Выборка.Счет;
Движение.Сумма = СуммаКСписанию;
ОсталосьСписать = ОсталосьСписать - СуммаКСписанию;
КонецЕсли;
КонецЦикла;
 
КонецЕсли;
КонецПроцедуры

 
 
 

6) Документ "Пени"


Процедура ОбработкаПроведения(Отказ, РежимПроведения)
Движения.Взаиморасчеты.Записывать = Истина;
Движения.Взаиморасчеты.Записать() ;
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.Взаиморасчеты");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.Счета");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
Блокировка.Заблокировать();
 
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
               |СчетаОстаткиИОбороты.Счет,
               |СчетаОстаткиИОбороты.СуммаКонечныйОстаток,
               |МАКСИМУМ(СчетаОстаткиИОбороты.Регистратор.Дата) КАК ДатаПолнойОтгрузки
               |ПОМЕСТИТЬ Счета
               |ИЗ
               |РегистрНакопления.Счета.ОстаткиИОбороты(, &ТочкаИтогов, Регистратор, , ) КАК СчетаОстаткиИОбороты
               |ГДЕ
               |СчетаОстаткиИОбороты.СуммаКонечныйОстаток = 0
               |
               |СГРУППИРОВАТЬ ПО
               |СчетаОстаткиИОбороты.Счет,
               |СчетаОстаткиИОбороты.СуммаКонечныйОстаток
               |;
               |
               |////////////////////////////////////////////////////////////////////////////////
               |ВЫБРАТЬ
               |Счета.Счет,
               |ЕСТЬNULL(ВзаиморасчетыОстатки.СуммаОстаток, 0) КАК Долг,
               |Счета.Счет.ПроцентПени КАК ПроцентПени,
               |ВзаиморасчетыОстатки.Контрагент,
               |РАЗНОСТЬДАТ(Счета.ДатаПолнойОтгрузки, &Дата, ДЕНЬ) КАК ДнейПросрочки
               |ИЗ
               |РегистрНакопления.Взаиморасчеты.Остатки(
               |&ТочкаИтогов,
               |Счет В
               |(ВЫБРАТЬ
               |Счета.Счет
               |ИЗ
               |Счета)) КАК ВзаиморасчетыОстатки
               |ЛЕВОЕ СОЕДИНЕНИЕ Счета КАК Счета
               |ПО ВзаиморасчетыОстатки.Счет = Счета.Счет";
 
Запрос.УстановитьПараметр("Дата", Дата);
ТочкаИтогов = ?(РежимПроведения= РежимПроведенияДокумента.Оперативный, Неопределено, Новый Граница(МоментВремени(),ВидГраницы.Исключая));
Запрос.УстановитьПараметр("ТочкаИтогов",ТочкаИтогов);
 
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Движение = Движения.Взаиморасчеты.ДобавитьПриход();
Движение.Период     = Дата;
Движение.Счет       = Выборка.Счет;
Движение.Контрагент = Выборка.Контрагент;
Движение.Пеня      = Выборка.Долг * Выборка.ДнейПросрочки *(Выборка.ПроцентПени/100);
КонецЦикла;
КонецПроцедуры

 
 
7) Отчет "Анализ состояния счетов"

Пришлось помучаться, текст запроса получился довольно громоздким, вангую критику от некоторых комрадов)
Текст запроса:
ВЫБРАТЬ
СчетаОстаткиИОбороты.Счет,
МАКСИМУМ(СчетаОстаткиИОбороты.Регистратор.Дата) КАК РегистраторДата
ПОМЕСТИТЬ ОтгруженныеСчета
ИЗ
РегистрНакопления.Счета.ОстаткиИОбороты(, &Период, Регистратор, , ) КАК СчетаОстаткиИОбороты
ГДЕ
СчетаОстаткиИОбороты.СуммаКонечныйОстаток = 0
СГРУППИРОВАТЬ ПО
СчетаОстаткиИОбороты.Счет
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
СчетаОстатки.Счет,
СчетаОстатки.СуммаОстаток
ПОМЕСТИТЬ НеотгруженныеСчета
ИЗ
РегистрНакопления.Счета.Остатки(&Период, ) КАК СчетаОстатки
ГДЕ
СчетаОстатки.СуммаОстаток > 0
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ВзаиморасчетыОстатки.Счет,
ОтгруженныеСчета.РегистраторДата КАК ДатаПолнойОтгрузки,
ВзаиморасчетыОстатки.СуммаОстаток КАК ЗадолженностьПоСчету,
ВзаиморасчетыОстатки.ПеняОстаток КАК ЗадолженностьПоПеням
ИЗ
РегистрНакопления.Взаиморасчеты.Остатки(
&Период,
Счет В
(ВЫБРАТЬ
НеотгруженныеСчета.Счет КАК Счет
ИЗ
НеотгруженныеСчета КАК НеотгруженныеСчета)
ИЛИ Счет В
(ВЫБРАТЬ
ОтгруженныеСчета.Счет КАК Счет
ИЗ
ОтгруженныеСчета КАК ОтгруженныеСчета)) КАК ВзаиморасчетыОстатки
ЛЕВОЕ СОЕДИНЕНИЕ ОтгруженныеСчета КАК ОтгруженныеСчета
ПО ВзаиморасчетыОстатки.Счет = ОтгруженныеСчета.Счет
ГДЕ
ВзаиморасчетыОстатки.СуммаОстаток > 0
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
НеотгруженныеСчета.Счет,
"",
НеотгруженныеСчета.СуммаОстаток,
0
ИЗ
НеотгруженныеСчета КАК НеотгруженныеСчета


8) Отчет "Анализ счета за период"
ВЫБРАТЬ
ВзаиморасчетыОстаткиИОбороты.Регистратор КАК Документ,
ВзаиморасчетыОстаткиИОбороты.СуммаПриход КАК Задолженность,
ВзаиморасчетыОстаткиИОбороты.СуммаРасход КАК Оплачено,
ВЫБОР
КОГДА ВзаиморасчетыОстаткиИОбороты.ПеняПриход > 0
ТОГДА ВзаиморасчетыОстаткиИОбороты.ПеняПриход
КОГДА ВзаиморасчетыОстаткиИОбороты.ПеняРасход > 0
ТОГДА -ВзаиморасчетыОстаткиИОбороты.ПеняРасход
КОНЕЦ КАК Пеня
ИЗ
РегистрНакопления.Взаиморасчеты.ОстаткиИОбороты(&ДатаНачала, &ДатаОкончания, Регистратор, ДвиженияИГраницыПериода, Счет = &Счет) КАК ВзаиморасчетыОстаткиИОбороты
УПОРЯДОЧИТЬ ПО
ВзаиморасчетыОстаткиИОбороты.Регистратор.Дата
 

РАБОТА НАД ОШИБКАМИ:


1) Документ "Расходная накладная"

Движения.Счета.Записывать = Истина;
Движения.Счета.Очистить();

// Согласно новой методике проведения сначала делаем движения, затем проверку не ушли ли в минус
Движение = Движения.Счета.ДобавитьРасход();
Движение.Период = Дата;
Движение.Счет = Счет;
Движение.Сумма = СуммаПоДокументу;

//блокировка
Движения.Счета.БлокироватьДляИзменения = Истина;
Движения.Записать();

// запрос с проверкой
Запрос = Новый("Запрос");
Запрос.Текст ="ВЫБРАТЬ
| СчетаОстатки.СуммаОстаток КАК СуммаСчета
|ИЗ
| РегистрНакопления.Счета.Остатки(&ТочкаИтогов, Счет = &Счет) КАК СчетаОстатки
|ГДЕ
| СчетаОстатки.СуммаОстаток < 0";

Запрос.УстановитьПараметр("Счет",Счет);
ТочкаИтогов = ?(РежимПроведения= РежимПроведенияДокумента.Оперативный, Неопределено, Новый Граница(МоментВремени(),ВидГраницы.Включая));
Запрос.УстановитьПараметр("ТочкаИтогов",ТочкаИтогов);

Результат = Запрос.Выполнить();
Если Не Результат.Пустой() Тогда 
Выборка = Результат.Выбрать();
Выборка.Следующий();
Если Выборка.СуммаСчета < СуммаПоДокументу Тогда
Отказ = Истина;
Сообщение = Новый("СообщениеПользователю");
Сообщение.Текст = "Сумма документа превышает сумму счета на "+ (-Выборка.СуммаСчета);
Сообщение.Сообщить();
Возврат;
КонецЕсли;
КонецЕсли;

// Если не случился отказ
Движения.Взаиморасчеты.Записывать = Истина;
Движение = Движения.Взаиморасчеты.ДобавитьПриход();
Движение.Период = Дата;
Движение.Счет = Счет;
Движение.Сумма = СуммаПоДокументу;
Движение.Контрагент = Контрагент;

1) Документ "Приход денег"

Движения.Взаиморасчеты.Записывать = Истина;

Движения.Взаиморасчеты.Очистить();
Движения.Записать();

// Блокировка
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.Взаиморасчеты");
ЭлементБлокировки.УстановитьЗначение("Контрагент", Контрагент);

// В первоначальном варианте упустил добавить параметр на счета из таб. части.

ЭлементБлокировки.ИспользоватьИзИсточникаДанных(СписокСчетов);

ЭлементБлокировки.ИспользоватьИзИсточникаДанных("Счет","Счет");

ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
Блокировка.Заблокировать();

Запрос = Новый("Запрос");
Запрос.Текст = "ВЫБРАТЬ
| ПриходДенегСписокСчетов.Счет
|ПОМЕСТИТЬ СписокСчетов
|ИЗ
| Документ.ПриходДенег.СписокСчетов КАК ПриходДенегСписокСчетов
|ГДЕ
| ПриходДенегСписокСчетов.Ссылка = &Ссылка
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ВзаиморасчетыОстатки.Счет,
| ВзаиморасчетыОстатки.СуммаОстаток КАК Долг,
| ВзаиморасчетыОстатки.ПеняОстаток КАК Пеня
|ИЗ
| РегистрНакопления.Взаиморасчеты.Остатки(
| &ТочкаИтогов,
| Контрагент = &Контрагент
| И Счет В
| (ВЫБРАТЬ
| СписокСчетов.Счет
| ИЗ
| СписокСчетов)) КАК ВзаиморасчетыОстатки
|
|УПОРЯДОЧИТЬ ПО
| ВзаиморасчетыОстатки.Счет.Дата
|ИТОГИ
| СУММА(Долг),
| СУММА(Пеня)
|ПО
| ОБЩИЕ";

Запрос.УстановитьПараметр("Контрагент",Контрагент);
ТочкаИтогов = ?(Режим= РежимПроведенияДокумента.Оперативный, Неопределено, Новый Граница(МоментВремени(),ВидГраницы.Исключая));
Запрос.УстановитьПараметр("ТочкаИтогов",ТочкаИтогов);
Запрос.УстановитьПараметр("Ссылка",Ссылка);

ВыборкаИтоги = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Общие");
ВыборкаИтоги.Следующий();
Если ВыборкаИтоги.Долг + ВыборкаИтоги.Пеня < Сумма Тогда
Отказ = Истина;
Сообщение = Новый("СообщениеПользователю");
Сообщение.Текст = "Сумма документа превышает сумму долга "+ (ВыборкаИтоги.Долг + ВыборкаИтоги.Пеня);
Сообщение.Сообщить();
Иначе
ОсталосьСписать = Сумма;
// спишем пени
Выборка = ВыборкаИтоги.Выбрать();
Пока Выборка.Следующий() и ОсталосьСписать >0 Цикл
Если Выборка.Пеня > 0 Тогда 
СуммаКСписанию = Мин(ОсталосьСписать, Выборка.Пеня);
Движение = Движения.Взаиморасчеты.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
Движение.Период = Дата;
Движение.Контрагент = Контрагент;
Движение.Счет = Выборка.Счет;
Движение.Пеня = СуммаКСписанию;
ОсталосьСписать = ОсталосьСписать - СуммаКСписанию;
КонецЕсли;

КонецЦикла;


Выборка.Сбросить();
// спишем долги по счетам
Пока Выборка.Следующий() и ОсталосьСписать >0 Цикл
Если Выборка.Долг>0 Тогда 
СуммаКСписанию = Мин(ОсталосьСписать, Выборка.Долг);
Движение = Движения.Взаиморасчеты.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
Движение.Период = Дата;
Движение.Контрагент = Контрагент;
Движение.Счет = Выборка.Счет;
Движение.Сумма = СуммаКСписанию;
ОсталосьСписать = ОсталосьСписать - СуммаКСписанию;
КонецЕсли;
КонецЦикла;

КонецЕсли;

КонецПроцедуры


3) Документ "Пени".

Движения.Взаиморасчеты.Записывать = Истина;
Движения.Взаиморасчеты.Очистить();
Движения.Записать();

Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.Взаиморасчеты");
ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.Счета");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
Блокировка.Заблокировать();

Подозреваю, что делаю что-то не так, вот так лихо блокируя целиком 2 регистра, но не могу понять, как здесь можно задать параметры в блокировке.

 

-2

Скачать файлы

Наименование Файл Версия Размер
Z1_26.dt
.dt 184,20Kb
13.03.15
5
.dt 184,20Kb 5 Скачать

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. GROOVY 2490 14.03.15 14:36 Сейчас в теме
Блокировки установлены некорректно. Не продемонстрирована технология оперативного проведения. -2 балла.
spetzpozh; +1 Ответить
2. Betis 27 16.03.15 20:29 Сейчас в теме
(1) GROOVY, Здравствуйте, Павел!
Спасибо за внимание. Если Вас не затруднит, гляньте небольшую работу над ошибками.(добавил в конце статьи):
1) Изменил обработку проведения накладной по мотивам Вашей статьи о новой методике оперативного проведения
2) В "приходе денег" изменил блокировку
3) Пользуясь случаем хотел бы задать Вам вопрос насчет использования конструктора Новый("") (Не для объектов) .
Например Запрос = Новый("Запрос"), Сообщение = Новый("СообщениеПользователю"), Структура = Новый("Структура") и тд. Можно ли так делать? Есть ли какая-то проблема?
6. slazzy 38 18.03.15 12:49 Сейчас в теме
(2), ну снова Вы за своё
3) Пользуясь случаем хотел бы задать Вам вопрос насчет использования конструктора Новый("") (Не для объектов) .
Например Запрос = Новый("Запрос"), Сообщение = Новый("СообщениеПользователю"), Структура = Новый("Структура") и тд. Можно ли так делать? Есть ли какая-то проблема?


я уже отвечал на вопрос. Физически так можно делать. Нужно ли так делать? Нет, не нужно. Так НИКТО не делает. Если можно штаны одеть через голову, то это вовсе не призыв их одевать через голову.
Есть стандарты разработки, есть соглашения о коде, есть просто "тут так принято". Так вот "тут не принято" делать так и в маломальски серьезных фирмах за это бьют по рукам. Не надо показывать характер и пытаться доказать, что мол если не написано "так нельзя", то я буду делать.
7. Bukaska 131 18.03.15 14:00 Сейчас в теме
(6) slazzy, Бесполезняк.. неужели на форуме Чистова не пообщаться по данной тематике? Зачем создавать публикашку с кучей косяков? Я понимаю, человек сдал и выложил вариант, как правильно сдавать, а не так, что я не понимая, не сдавал, помогите сдать...
3. TODD22 18 17.03.15 17:40 Сейчас в теме
3) Пользуясь случаем хотел бы задать Вам вопрос насчет использования конструктора Новый("") (Не для объектов) .
Например Запрос = Новый("Запрос"), Сообщение = Новый("СообщениеПользователю"), Структура = Новый("Структура") и тд. Можно ли так делать? Есть ли какая-то проблема?

А разве "Запрос", "СообщениеПользователю", "Структура" это не объекты?

Как мне кажется проблемы в создании объектов нет. Если они создаются через конструктор.
Есть проблема множественного создания объектов. Когда то давно меня из за этого не взяли на работу :(

И кстати вот недавно решал в двух организациях билеты на спеца по опер учёту на собеседование. Из за новой методики проведения а именно из за того что я одним запросом проверял остатки и если их хватало делал второй запрос уже к регистру партий моё решение не защитали. Сказали что не надо делать два запроса к базе. Типа можно было проверить хватает остатков или нет простым запросом к регистру партий. А это типа быдлокод :(
4. Betis 27 17.03.15 19:55 Сейчас в теме
(3) TODD22, Я имел в виду конструктор создания именно для НЕ прикладных объектов.
По-поводу случая на собеседовании, то чего только не бывает на собесах. насчет партионного списания, по-моему Вы сделали правильно, по-крайней мере Чистов рекомендует именно так делать, но видимо там были спецы круче)
5. TODD22 18 18.03.15 06:19 Сейчас в теме
По-поводу случая на собеседовании, то чего только не бывает на собесах. насчет партионного списания, по-моему Вы сделали правильно, по-крайней мере Чистов рекомендует именно так делать, но видимо там были спецы круче)

Ага... чего только не бывает. В одну контору как то пришёл года два назад устраиваться. Мне дают задачу на спеца как тестовое задание. Я спросил у человека а он сам может решить эту задачу, он сказал что нет :)
Оставьте свое сообщение

См. также

Конфигурация для проведения тестов (например, для подготовки к 1С: Профессионал) 1

Конфигурация Программист Конфигурация (md, cf) v8 Абонемент ($m) Решение задач на 1С:Специалист

Конфигурация для платформы 8.3 - проведение тестов с выбором из вариантов ответов, например 1С: Профессионал. В соответствии с правилами, в комплекте не содержатся тексты вопросов и ответов, только пустая конфигурация. Протестировано на платформе 8.3.13.1644. Ключевые особенности: # Поддержка многопользовательского режима # Поддержка вопросов с картинками (в том числе в отчетах) # Загрузка комплекта вопросов из файла Excel + картинки, который максимально подходит для наполнения из электронной версии брошюры для подготовки к экзамену 1С

1 стартмани

28.09.2019    926    3    alexey_kurdyukov    0       

Решенные билеты для экзамена Специалист по платформе. 2019 52

Отчеты и формы Программист Архив с данными v8 Абонемент ($m) Конфигурирование 1С Решение задач на 1С:Специалист

Архив с 16 решенными билетами для экзамена по платформе 2019. Выполнено на платформе 8.3.11. Решения не содержат текстов задач.

1 стартмани

25.09.2019    4220    104    kassbar    7       

Конфигурация для подготовки к тестированию 1С Профессионал 19

Отчеты и формы no Архив с данными v8::УФ Россия Windows Абонемент ($m) Решение задач на 1С:Специалист

Конфигурация для подготовки к тестированию на сертификат "Профессионал 1С". Тренажер для тестирования. Подготовка к профессионалу по 1С (1С:Профессионал) по ERP, Бухгалтерия 8, Управление торговлей 8, Документооборот, Розница, ЗУП и т. д. Конфигурация служит для подготовки к тестированию. Функционал получился универсальный, подойдёт для подготовке к любой сдаче на сертификат профессионала по 1С. Тестировалось на платформе 1С:Предприятие 8.3 (8.3.15.1534).

1 стартмани

23.09.2019    3300    22    vik2006    15       

Решение 6 билетов и 6 блоков из сборника задач к экзамену 1С: Специалист-консультант по ЗУП 3

Отчеты и формы Бухгалтер Пользователь Архив с данными v8 v8::СПР ЗУП3.x Россия БУ УУ Зарплата Управление персоналом (HRM) Учет рабочего времени Абонемент ($m) Решение задач на 1С:Специалист

Краткое описание решений 6 билетов по экзамену 1С: Специалист-консультант по ЗУП. И также решение 6 блоков сборника задач. Сами тексты задач в файлах не содержатся.

2 стартмани

14.08.2019    1334    13    user1093930    3       

Управляемые блокировки - для подготовки к экзамену Специалист 1С 13

Инструменты и обработки Пользователь Архив с данными v8::blocking 1cv8.cf Абонемент ($m) Практика программирования Решение задач на 1С:Специалист Разработка

Демо-база по управляемым блокировкам в 1С. Очень пригодится для тех, что хочет сдать экзамен "Специалист 1С"

5 стартмани

05.08.2019    3615    2    astracrypt    6       

Подготовка к экзамену 1С: Специалист по платформе 8.3. Собрание материалов для подготовки. Актуальность - май 2019 г. 16

Отчеты и формы Программист Архив с данными v8 Абонемент ($m) Решение задач на 1С:Специалист

В архиве находятся полностью решенные первые 7 билетов для подготовки к экзамену плюс решение задачи по расчетам из 8 билета. Как было установлено ранее, при дистанционной сдаче попадаются задачи из первых семи билетов.

2 стартмани

22.05.2019    2391    25    user1193495    9       

Экзамен 1С:Специалист по платформе 8.3. Полностью решенные все 15 билетов к экзамену (актуальны на март 2019 г.) 10

Отчеты и формы Программист Стажер Архив с данными v8 Абонемент ($m) Решение задач на 1С:Специалист

Решения не содержат текстов задач в соответствии с требованиями 1С. Решения тестировались на версии 8.3.12.

1 стартмани

01.04.2019    2230    34    Nonreply    12       

Решение 10 задач из сборника для подготовки к экзамену 1С: Специалист-консультант по бухгалтерии 7

Отчеты и формы Бухгалтер Пользователь Архив с данными v8 v8::БУ БП3.0 Россия БУ Абонемент ($m) Решение задач на 1С:Специалист

Вниманию предлагается решение еще нескольких задач из сборника для подготовки к экзамену 1С: Специалист-консультант по бухгалтерии. Решения выполнялись на релизе, на котором сейчас сдается экзамен, а именно 51.27.

1 стартмани

04.02.2019    3601    159    yiulka    12       

Задача 1.13. 1С: Специалист по платформе 8.3 3

Отчеты и формы Программист Архив с данными v8 v8::ОУ Абонемент ($m) Практика программирования Решение задач на 1С:Специалист

Вариант решения задачи 1.13 с комментарием основных моментов (тестировалось на релизе 8.3.9.2170).

1 стартмани

05.01.2019    4696    user913680    8       

Решенные задания для сертификационного экзамена 1С: Специалист по Платформе 8.3 + Шпаргалки 42

Отчеты и формы Программист Архив с данными v8 Россия Абонемент ($m) Решение задач на 1С:Специалист

Мои решения актуальных билетов для подготовки к экзамену 1С:Специалист по платформе. Первоначальная актуальность Ноябрь 2018 г. Кроме билетов прилагаю Удобочитаемые "Шпаргалки", по которым удобно самостоятельно готовиться - решать задачи.

1 стартмани

03.12.2018    9143    96    antonio_i    65       

Решение некоторых задач из сборника для подготовки к экзамену 1С:Специалист-консультант по Бухгалтерии 5

Отчеты и формы Бухгалтер Архив с данными v8 v8::БУ БП3.0 Россия БУ Абонемент ($m) Решение задач на 1С:Специалист

Вашему вниманию предлагается текст решения некоторых задач из сборника. Вы можете воспользоваться данными файлами, чтобы понять, как именно это должно выглядеть на экзамене.

1 стартмани

22.10.2018    3672    149    yiulka    0       

Подготовка к 1С:Специалист-консультант по бухгалтерии 15

Отчеты и формы Бухгалтер Архив с данными v8 v8::БУ БП3.0 Россия БУ Windows Абонемент ($m) Решение задач на 1С:Специалист

Вашему вниманию предлагается база в формате ДТ с решением более 30 задач с экзамена и из сборника. Все задачи, которые имеют место выпадать на экзамене, а именно: Автодом, Автор, Прога, СОБР, Земеля, Батый и прочее представлены в виде решений в базе.

1 стартмани

16.10.2018    4492    82    yiulka    1       

1С:Специалист по УТ 3.1 (для Украины) 1

Инструменты и обработки Программист Архив с данными v8 УТ11 Украина Windows Абонемент ($m) Решение задач на 1С:Специалист

Мои шпаргалки на экзамен 1С Специалист УТ 3.1 (ДЛЯ УКРАИНЫ, НЕ ДЛЯ РОССИИ).

1 стартмани

03.09.2018    3916    4    harvester_sorrow    0       

Решение задач и материалы для подготовки в одном архиве для "1С:Специалист по конфигурированию и внедрению торговых решений" / "Специалист УТ 11" 18

Отчеты и формы Программист Архив с данными v8 v8::ОУ v8::УФ УТ11 УУ Абонемент ($m) Решение задач на 1С:Специалист

Решения всех задач из сборника в одном архиве. Собрал всё , что поможет Вам подготовиться и сдать экзамен 1С:Специалист УТ 11. Комбинации билетов, рекомендации по сдаче присутствуют.

1 стартмани

06.04.2018    11368    140    leobrn    24       

Решения всех задач сборника Специалист по УТ 11.3 69

Отчеты и формы Программист Архив с данными v8::ОУ v8::УФ УТ11 Россия УУ Абонемент ($m) Решение задач на 1С:Специалист

В архивах инструкции по решению задач как по настройке системы, так и по ее конфигурированию.

1 стартмани

05.04.2018    16555    302    fr13    19       

Подготовка к экзамену 1С Специалист. Решение билетов с 1 по 3 4

Отчеты и формы Программист Архив с данными v8 Россия БУ УУ Абонемент ($m) Решение задач на 1С:Специалист

Решение билетов с 1 по 3 для подготовки к экзамену 1С Специалист по платформе 1С 8.3, интерфейс Такси.

5 стартмани

17.01.2018    8156    9    astracrypt    4       

План подготовки к аттестации на 1С: Специалиста по платформе (+ Ссылки на материалы) 51

Статья Программист Архив с данными v8 Россия Абонемент ($m) Решение задач на 1С:Специалист

Хочу поделиться собственным планом подготовки к аттестации на 1С: Специалист по платформе 8.3 со ссылками на материалы (и указанием стоимости).

1 стартмани

23.12.2017    14593    9    tmn72.1C    38       

Консультация для сдачи экзамена "1С:Специалист" по конфигурированию платформы 120

Статья Программист Конфигурация (md, cf) v8 Россия Абонемент ($m) Решение задач на 1С:Специалист

В данной статье приведено описание решения задач при подготовке к сдаче экзамена на специалиста по платформе "1С:Предприятие 8.3".

1 стартмани

23.12.2017    24194    47    FoxSPb2012    5       

Решения всех экзаменационных билетов экзамена 1С:Специалист по платформе 8.3. Советы по подготовке к экзамену. 39

Отчеты и формы Программист Архив с данными v8 Россия Абонемент ($m) Решение задач на 1С:Специалист

В данной публикации хочу предложить полностью решенные актуальные билеты (декабрь 2017) для экзамена 1С:Специалист по платформе 8.3, а также дать несколько советов по подготовке к экзамену.

1 стартмани

07.12.2017    24684    369    serwk    23       

Система тестирования. Тренажер для тестирования. Подготовка к профессионалу по 1С (1С:Профессионал), школьные тесты, вопросы ПДД, корпоративные проверки и многое другое 46

Инструменты и обработки no Конфигурация (md, cf) v8::УФ Россия Абонемент ($m) Решение задач на 1С:Специалист

Конфигурация (программа) служит для подготовки к тестированию, а также возможности организации тестовой проверки. Функционал получился универсальный, подойдёт для подготовке к любой сдаче профессионала по платформе, ERP, бухгалтерии и др. Так же можно вносить другие тесты - вопросы по правилам дорожного движения или школьные тесты. Если у вас в компании есть внутренние обучения, с помощью данной программы вы можете закреплять пройденный курс.

1 стартмани

31.10.2017    24239    92    rpgshnik    56       

Профессионал по 1С. Программа для подготовки к тесту 10

Отчеты и формы Программист Конфигурация (md, cf) v8::УФ Россия Абонемент ($m) Решение задач на 1С:Специалист

Профессионал по 1С. Программа для подготовки к экзамену. Подготовься к тесту за 2 недели!

10 стартмани

17.06.2017    21759    30    venvlad    13       

Алгоритмы с решениями для экзамена Специалист УТ 11.1 48

Статья Программист Архив с данными v8::ОУ УТ11 Россия УУ Windows Абонемент ($m) Решение задач на 1С:Специалист

Решение 20 задач встречающихся на экзамене, в виде подробных инструкций. Решение на релизе УТ 11.1.10.199.

1 стартмани

08.01.2017    18473    32    IgorXml    5       

Варианты решений заданий для подготовки к экзамену 1С: Специалист ЗУП 3.0 14

Отчеты и формы Программист Архив с данными v8::СПР ЗУП3.x Россия БУ УУ Windows Зарплата Абонемент ($m) Практика программирования Решение задач на 1С:Специалист

Объяснение ключевых моментов для нахождения решений тестовых заданий с сайта 1С для подготовки к экзамену 1С: Специалист ЗУП 3.0. Не подменяет собой курсы и/или книги, но поясняет на конкретных примерах работу типовых механизмов. Текстов билетов не содержит.

1 стартмани

11.11.2016    13695    69    StudentTr    6       

50+ советов для успешной сдачи 1С: Специалист по платформе 340

Статья Программист Архив с данными v8 Windows Абонемент ($m) Решение задач на 1С:Специалист

Данная подборка содержит советы по основным вопросам, возникающих при решении задач ОУ, БУ и ПР. В процессе подготовки использовал много материалов от методичек 1С и курсов до публикаций  ресурса Infostart. Предлагаю вниманию  программистов 1С, решивших сдать этот экзамен, свою скромную подборку  советов. В ней Вы найдете основную информации по часто возникающим вопросам при решении экзаменационных задач. Прошу объективно  покритиковать материал. Впоследствии планирую его дорабатывать, т.к. полагаю, что это сэкономит  время готовящихся, и они смогут сосредоточиться  непосредственно на решении задач  вместо поиска верных решений для  реализации той  или иной задачи.    Цель данной публикации - получить обратную связь от готовящихся и уже сдавших этот экзамен программистов 1С, чтобы на основе полученных данных создать максимально полный гайд по подготовке к этому серьезному экзамену.Верю, что совместными усилиями это - реально.

1 стартмани

24.10.2016    73620    141    NN2P    29       

Полное решение билетов сертификации 1С: Специалист УТ 11 16

Инструменты и обработки Программист Архив с данными v8 УТ10 Оптовая торговля, дистрибуция, логистика Россия УУ Абонемент ($m) Решение задач на 1С:Специалист

Решение 10 основных билетов на экзамене 1С: Специалист по УТ 11. Все билеты попадались группе пользователей, из которой сдали все.

1 стартмани

18.08.2016    21512    160    maksimov-y-v    6       

Решение задач при подготовке на Специалиста по платформе по 1С:8.3 24

Инструменты и обработки Программист Архив с данными v8 Россия Windows Абонемент ($m) Решение задач на 1С:Специалист

Практические занятия. Решение задач из сборника задач при подготовке к сертификату Специалист по Платформе 1С 8.3.

1 стартмани

17.08.2016    17888    138    BraunAlex    11       

Запрос-тестер. Экспресс-тестирование на знание языка запросов в 1С 8

Инструменты и обработки Программист Архив с данными v8 Windows Абонемент ($m) Практика программирования Решение задач на 1С:Специалист

Cоздание данного продукта было навеяно знакомством с проектом SQL-ex и желанием довести хорошую идею до ее логического завершения.

1 стартмани

28.07.2016    12141    38    mkalimulin    7       

Экзамен 1С:Специалист по платформе 8.3. Полностью решенные ВСЕ билеты экзамена (актуальны на сентябрь 2019 г.). Последние требования к экзамену. Описание интерфейса сдачи экзамена 1С:Гуру. 383

Отчеты и формы Программист Стажер Архив с данными v8 Абонемент ($m) Решение задач на 1С:Специалист

Хотел бы познакомить Вас с последними требованиями на экзамене «1С:Специалист по платформе 8.3», полностью решенными билетами экзамена (ВСЕ 16 БИЛЕТОВ ЭКЗАМЕНА) с учетом последних нововведений в заданиях экзамена, а также новый удобным интерфейсом сдачи экзамена 1С:Гуру.

1 стартмани

18.07.2016    87802    3671    PoZiTiFFF    219       

Конфигурация "Мобильное тестирование" 24

Инструменты и обработки Программист Конфигурация (md, cf) v8::Mobile Абонемент ($m) Решение задач на 1С:Специалист

Я давно слышал о конфигурации «Тестирование». Но сейчас пришла эра смартфонов, и тратить время дома можно на развлечения, а вот время, которое я трачу впустую при поездке в общественном транспорте, можно потратить на подготовку к «1С:Профессионал»! Если ты такой же, то читай дальше, как это сделать!

1 стартмани

25.04.2016    19669    26    Xershi    29       

Обработка для подготовки к тестированию 1С: Профессионал 6

Инструменты и обработки Программист Архив с данными v8 1cv8.cf Windows Абонемент ($m) Решение задач на 1С:Специалист

Обработка предназначена для подготовки к сдаче экзаменов из серии 1С: Профессионал. Поскольку ответы к тестам 1С выкладывать запрещено, перед использованием обработки необходимо создать текстовый файл с правильными вопросами-ответами.

1 стартмани

06.04.2016    14244    19    kogeron_    5       

Специалист 1С: Зарплата и управление персоналом 3.0. 13

Инструменты и обработки Программист Архив с данными v8::СПР ЗУП3.x Россия Windows Зарплата Абонемент ($m) Решение задач на 1С:Специалист

Решил я, значит, готовиться в экзамену, и как следствие просмотрел чужие решения, некоторые мне понравились, некоторые нет. Например, не понравилась запись данных об отработанном времени в регистр табельного учета и, как следствие, исключение возможности пользователем формировать табель. Также не нашёл хорошего решения 3-го билета, во многих решениях не выполняются все условия задачи. Постарался делать максимально прозрачно и читабельно.

2 стартмани

23.03.2016    15688    204    mrBart    9       

Специалист-Консультант по ЗУП 3.0 - решение всех задач из сборника 27

Инструменты и обработки Программист Бухгалтер Сборник задач v8::СПР ЗУП3.x Россия Windows Зарплата Управление персоналом (HRM) Абонемент ($m) Решение задач на 1С:Специалист Управленческий учет (прочее) Бухгалтерский учет

Файл-Word содержит решение всех задач из "Сборника задач для подготовки к экзамену 1С:Специалист-Консультант по внедрению прикладного решения ЗУП.3.0" (Май 2014 года).

3 стартмани

26.02.2016    39565    323    user_2010    58       

Решения билетов экзамена 1С:Специалист по Бухгалтерии (БП 3.0) 25

Инструменты и обработки Программист Архив с данными v8::БУ БП3.0 БУ Windows Абонемент ($m) Решение задач на 1С:Специалист

Представлены выгрузки информационных баз (.dt) с решениями всех 12-ти билетов, и некоторые соображения и рекомендации по экзамену.

1 стартмани

15.02.2016    27543    171    VitaliyCeban    11       

Решение билетов к экзамену "1С: Специалист по конфигурированию УТ 11" 13

Инструменты и обработки Программист Архив с данными v8 УТ11 Россия Windows Абонемент ($m) Решение задач на 1С:Специалист

Во вложении 2 архива (по 10-ти билетам): 1. Пояснительная записка (что и как настраивать, какие галки ставить и т.д.). 2. Отчеты (по билетам, где нужно создать отчет) Описание самих билетов - отсутствует.

1 стартмани

08.02.2016    22034    68    dimbasbear    17       

Моя подготовка к экзамену "1С: Специалист по платформе". Решения актуальных билетов, в которых были добавлены самые свежие изменения 17

Инструменты и обработки Программист Стажер Конфигурация (md, cf) v8 Россия Windows Абонемент ($m) Решение задач на 1С:Специалист

В данной публикации будут выкладываться решения тех задач из актуальных билетов экзамена 1С: Специалист Платформа, которые были изменены на экзамене (со слов сдающих). На данный момент (3 февраля 2016) - по данным разведки были изменены задачи по СПР, из билета 1 и 2 (добавили новые условия). Итак, здравствуйте) 29-го экзамен сдан на 4. Ошибка в схеме бизнесс-процесса, и всё, судя по комментариям. Билет попался 1 ый, один в один из "Актуальных", + изменения в добавлении кнопки "Рассчитать" - сделал так же как и в представленном решении - претензий не было. Чуть позже соберу все решения с подготовки(пока более об изменениях информации нет, поэтому выложу как есть ! Успехов!

1 стартмани

03.02.2016    17435    110    zorky80    8       

Пример решения задач Специалист ЗУП 3.0 12

Инструменты и обработки Программист Сборник задач v8 ЗУП2.5 Россия Windows Абонемент ($m) Решение задач на 1С:Специалист

Пример решения задач Специалист Зарплата и управление персоналом 3.0. В данных примерах использованы личный опыт, консультации с сертифицированными специалистами, участвующими во внедрениях, форумы. Экзамен еще не сдавал, поэтому буду благодарен за комментарии и подсказки. В прилагаемых документах код.

1 стартмани

03.09.2015    21143    137    sdw2007    9       

Алгоритмы и выгрузка ИБ с решениями для экзамена Специалист ЗУП 3.0. 45

Инструменты и обработки Программист Архив с данными v8::СПР ЗУП3.x Россия БУ Windows Зарплата Абонемент ($m) Решение задач на 1С:Специалист

Аттестацию "1С:Специалист" по конфигурированию подсистем расчета зарплаты и управления персоналом в прикладных решениях "1С:Предприятие 8" автор сдал на отлично. Здесь решение обновлено до 3.0.24.125.

3 стартмани

24.08.2015    29839    83    IgorXml    54