Пармузин Андрей

0
Рейтинг

andreyparmuzin
Андрей Пармузин



  •   Регистрация: 25.01.2011 (13 лет назад)

  •   Был(а) на сайте: 19.04.2024

Друзья
  • Max But
  • Дмитрий Белов
  • Никита Зайцев
Подписчики 5

Группы

Участник конференции "Анализ & Управление в ИТ-проектах"

IE2023 Участник


Комментарии

НовостиКонференция INFOSTART TECH EVENT 2023 завершилась. Доступны видеозаписи. Отзывы участников#259 20.10.23 14:06
Минусы:
Доклады на интересные и современные темы рассматривались в маленьких помещениях, была толкучка и восприятие материала падала на порядок. (Решение: предварительная оценка посещения)
Очереди на обед. Необходим более гибкий интервал приёма пиши.

Плюсы:
Интересные доклады, реальный опыт внедрения
Хорошая территориальная локация
Дискотека
DevОстатки отпусков#4 07.10.14 12:22
Доработай возможность использования обработки в конфигурации УПП (ИДКонфигурации )

Код
Функция НайтиДокументИсправление(Сотрудник, ДатаОстатков)
   
   ИДКонфигурации  = РегламентированнаяОтчетность.ИДКонфигурации();
   
   Запрос = Новый Запрос;
   
   Запрос.Текст = 
   "ВЫБРАТЬ РАЗЛИЧНЫЕ ПЕРВЫЕ 1
   |   ФактическиеОтпускаОрганизацийОбороты.Регистратор
   |ИЗ
   |   РегистрНакопления.ФактическиеОтпускаОрганизаций.Обороты(, , Регистратор, Сотрудник = &Сотрудник) КАК ФактическиеОтпускаОрганизацийОбороты
   |ГДЕ";
   Если ИДКонфигурации = "ЗУП" Тогда 
         Запрос.Текст = Запрос.Текст +   
        " ФактическиеОтпускаОрганизацийОбороты.Регистратор ССЫЛКА Документ.КорректировкаЗаписейРегистровНакопления";
    ИначеЕсли ИДКонфигурации = "УПП" Тогда 
         Запрос.Текст = Запрос.Текст +
       " ФактическиеОтпускаОрганизацийОбороты.Регистратор ССЫЛКА Документ.КорректировкаЗаписейРегистров";
    КонецЕсли;
   
   Запрос.Текст = Запрос.Текст + " 
   |   И ФактическиеОтпускаОрганизацийОбороты.Регистратор.Дата = &ДатаОстатков
   |
   |УПОРЯДОЧИТЬ ПО
   |   ФактическиеОтпускаОрганизацийОбороты.Регистратор.Дата УБЫВ";
   
   Запрос.УстановитьПараметр("Сотрудник"   , Сотрудник);
   Запрос.УстановитьПараметр("ДатаОстатков", ДатаОстатков);
   
   Выборка = Запрос.Выполнить().Выбрать();
   Возврат ?(Выборка.Следующий(), Выборка.Регистратор, Неопределено);
   
КонецФункции

Процедура ВвестиИсправление(СтрокаДереваЗначений) Экспорт
   
 Для Каждого РабочийГод Из СтрокаДереваЗначений.Строки Цикл
       Если Не РабочийГод.ОтредактированоВручную Или РабочийГод.ВведеныОстатки Тогда
          Продолжить;
      КонецЕсли;
      
      НаборЗаписей       = РегистрыНакопления.ФактическиеОтпускаОрганизаций.СоздатьНаборЗаписей();
      ФактическиеОтпуска = НаборЗаписей.ВыгрузитьКолонки();
      
       РезультатПоиска  = мПодсистема.РегистрыСведений.ВидыЕжегодныхОтпусков.НайтиСтроки(Новый Структура("Использование", Истина));
       Для Каждого ВидОтпуска Из РезультатПоиска Цикл
         КоличествоДней = (РабочийГод["ВидОтпуска_ОстатокДней_" + ВидОтпуска.Идентификатор] - РабочийГод["ВидОтпуска_ОстатокДней_" + ВидОтпуска.Идентификатор + "_СтароеЗначение"]);
          Если РабочийГод["ВидОтпуска_КоличествоДнейЗаПолныйГод_" + ВидОтпуска.Идентификатор] = 0 Или КоличествоДней = 0 Тогда
             Продолжить;
         КонецЕсли;
         
         Запись = ФактическиеОтпуска.Добавить();
         
         Запись.ВидЕжегодногоОтпуска = ВидОтпуска.ВидЕжегодногоОтпуска;  
         Запись.Сотрудник            = СтрокаДереваЗначений.Сотрудник;
         Запись.Количество           = -КоличествоДней;
         
         Запись.ДатаОкончания        = РабочийГод.РабочийГодПо;
         Запись.ДатаРегистрации      = ДатаАктуальности;
         Запись.Период               = РабочийГод.РабочийГодС;
         
         Запись.Активность           = Истина;
      КонецЦикла;
      
      Если ФактическиеОтпуска.Количество() > 0 Тогда
         
         Если ЗначениеЗаполнено(РабочийГод.ДокументИсправление) Тогда
            ДокументИсправление = РабочийГод.ДокументИсправление.ПолучитьОбъект();
         Иначе
            ИДКонфигурации  = РегламентированнаяОтчетность.ИДКонфигурации();
                  Если ИДКонфигурации = "ЗУП" Тогда 
                ДокументИсправление      = Документы.КорректировкаЗаписейРегистровНакопления.СоздатьДокумент();
            ИначеЕсли ИДКонфигурации = "УПП" Тогда 
                ДокументИсправление      = Документы.КорректировкаЗаписейРегистров.СоздатьДокумент();
            КонецЕсли;   
            ДокументИсправление.Дата = РабочийГод.РабочийГодС;
            
            ДокументИсправление.УстановитьНовыйНомер();
            
            НоваяСтрока = ДокументИсправление.ТаблицаРегистровНакопления.Добавить();
             НоваяСтрока.Имя           = "ФактическиеОтпускаОрганизаций";
             НоваяСтрока.Представление = "Фактические отпуска организаций";
            
            //ДокументИсправление.ОбменДанными.Загрузка = Истина;
            //ДокументИсправление.Записать();
         КонецЕсли;
         
         НаборЗаписей = РегистрыНакопления.ФактическиеОтпускаОрганизаций.СоздатьНаборЗаписей();
         НаборЗаписей.Отбор.Регистратор.Установить(ДокументИсправление.Ссылка);
         НаборЗаписей.Прочитать();
         
         Для Каждого Запись Из НаборЗаписей Цикл
            Исправление = ФактическиеОтпуска.Найти(Запись.ВидЕжегодногоОтпуска,"ВидЕжегодногоОтпуска");
            Если Исправление = Неопределено Тогда
               ЗаполнитьЗначенияСвойств(ФактическиеОтпуска.Добавить(), Запись);
            Иначе
               Исправление.Количество = Исправление.Количество + Запись.Количество;   
            КонецЕсли;
         КонецЦикла;
         
         ДокументИсправление.Комментарий   = "#Исправление остатков отпусков по работнику " + СтрокаДереваЗначений.Сотрудник + " за период работы с " + Формат(РабочийГод.РабочийГодС, "ДФ=dd.MM.yyyy") + " по " + Формат(РабочийГод.РабочийГодС, "ДФ=dd.MM.yyyy");
         ДокументИсправление.Ответственный = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ОсновнойОтветственный");
             
         ДокументИсправление.Движения.ФактическиеОтпускаОрганизаций.Загрузить(ФактическиеОтпуска);

         ДокументИсправление.ОбменДанными.Загрузка = Истина;
         ДокументИсправление.Записать();
      КонецЕсли;   
   КонецЦикла;   
       
КонецПроцедуры
UtilsВосстановление последовательностей#0 26.05.13 18:09
Обработка изменяет актуальную дату выбранных последовательностей без проведения документов
О жизниПочему не находит поле Документ??(новичок)#5 06.06.12 8:21
Документ = Запрос.УстановитьПараметр("Хозрасчетный.Субконто3"); замени на

Запрос.УстановитьПараметр("Документ",Хозрасчетный.Субконто3);
DevКлиент банк (выгрузка платежных поручений)#5 14.05.12 18:29
1) Оплачена
2) Помечена на удаление
3) Не поподает Дата Платёжного поручения в интервал выставленный в Клиент-Банке