30
Рейтинг

e401



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

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

Подписчики 2

Рейтинг 30


Комментарии

DevТребование-накладная на основании Авансового отчета в БП 3.0#3 17.04.23 10:21
(2)
Цитата
Передачи мат в эксплуатацию
Такой задачи не стояло, поэтому такую обработку не делал. Сделать не проблема, немного переписав эту обработку. Но там надо определяться, по какому признаку разносить материалы по вкладкам, если учесть, что Виды номенклатуры "Спецодежда", "Спецоснастка" и "Инвентарь и хозпринадлежности" помечены в справочнике, как "Применяется до 2022 года".
DevСдвиг даты контроля последовательности проведения документов в БП 3.0#10 26.10.21 13:54
Спасибо, уважаемый Snip!
Да, Вы абсолютно правы, это была ошибка и я её вовремя не обнаружил, т.к. разрабатывал для базы с одной организацией. Поправил обработку и перевыложил.
БУПомогите разобраться с ошибкой#16 18.06.18 14:43
Была такая ошибка при выгрузке выписки из банка после оплаты поставщику "Не заполнена колонка "Курс расчетов" в строке 1 списка "Расшифровка платежа". База БП 3.0 была новая, созданная путем переноса документов за 1.5 года и начальных остатков. Оказалось, что в справочнике валют у Российского рубля не был проставлен курс! А он должен быть равен = 1.
DevСдвиг даты контроля последовательности проведения документов в БП 3.0#7 18.10.17 10:51
(6) Добрый день, Александр!
Подправил, заработала снова.
Спасибо, рад, что кому-то пригодилось))
Dev1С 8.2-8.3. Создать на основании новый документ или открыть существующий.#6 18.07.16 7:45
(5) artik1994,
Вы не поняли суть: Используя типовой "Ввод на основании" создать новый документ. Если таковой уже создан, то открыть существующий, а не выводить сообщение о том, что такой документ уже создан.
DevСдвиг даты контроля последовательности проведения документов в БП 3.0#5 26.10.15 14:57
(4) gull22,
Добрый день, Юрий!
Спасибо за замечание. Да, действительно, перестал работать второй вариант, т.к. разработчики убрали из общего модуля РаботаСПоследовательностями функцию УстановитьПоследовательность(...), которую я здесь использовал.
Подправил, добавив копию этой функции в модуль формы самой обработки. Выложил новую версию.
Юрий, а куда можно Вам выслать обновленную версию обработки?
DevСдвиг даты контроля последовательности проведения документов в БП 3.0#2 28.04.15 19:27
(1) romku, Вам нужна сама функция?
Вроде как вот она
Код
// Устанавливает состояние "Проведен в последовательности" для всех записей 
// последовательности за указанный период. 
//
// Параметры:
//    Организация    - СправочникСсылка.Организации, по которой меняется последовательность.
//   ДатаНачала       - Дата начала периода. Если указана пустая дата, то самого начала последовательности.
//    ДатаОкончания   - Дата окончания периода, за который необходимо установить состояние последовательности.
//
// Возвращаемое значение:
//   Момент времени, на который фактически была установлена последовательность.
//
Функция УстановитьПоследовательность(Организация, ДатаНачала, ДатаОкончания) Экспорт

   МоментСледующегоДокумента = Неопределено;
   
   // Для изменения состояний в последовательности блокируем последовательность
   // в целом по организации. 
   // Установка управляемой блокировки возможно только в рамках транзакции.
   // В случае возникновения ошибок отменяем транзакцию.
   
   НачатьТранзакцию();

   Попытка 

      УстановитьБлокировкуПоследовательностиПоОрганизации(Организация);

      Запрос = Новый Запрос;
      Запрос.УстановитьПараметр("Организация",    Организация);
      Запрос.УстановитьПараметр("ДатаНачала",    ДатаНачала);
      Запрос.УстановитьПараметр("ДатаОкончания",    ДатаОкончания);

      Запрос.Текст = 
      "ВЫБРАТЬ РАЗЛИЧНЫЕ
      |   ТаблицаПоследовательности.Регистратор
      |ИЗ
      |   Последовательность.ДокументыОрганизаций КАК ТаблицаПоследовательности
      |ГДЕ
      |   ТаблицаПоследовательности.Организация = &Организация
      |   И &УсловиеПериод
      |   И ТаблицаПоследовательности.СостояниеПроведения В (ЗНАЧЕНИЕ(Перечисление.СостоянияПроведенияВПоследовательности.ПроведенСНарушениемПоследовательности), ЗНАЧЕНИЕ(Перечисление.СостоянияПроведенияВПоследовательности.ИсключенИзПоследовательности))";
      
      ТекстУсловиеПериод = "";
      Если ЗначениеЗаполнено(ДатаНачала) И ЗначениеЗаполнено(ДатаОкончания) Тогда
         ТекстУсловиеПериод = "ТаблицаПоследовательности.Период МЕЖДУ &ДатаНачала И &ДатаОкончания";
      ИначеЕсли ЗначениеЗаполнено(ДатаНачала) Тогда
         ТекстУсловиеПериод = "ТаблицаПоследовательности.Период >= &ДатаНачала";
      ИначеЕсли ЗначениеЗаполнено(ДатаОкончания) Тогда
         ТекстУсловиеПериод = "ТаблицаПоследовательности.Период <= &ДатаОкончания";
      КонецЕсли;
      
      Если ЗначениеЗаполнено(ТекстУсловиеПериод) Тогда
         Запрос.Текст = СтрЗаменить(Запрос.Текст, "&УсловиеПериод", ТекстУсловиеПериод);
      Иначе
         Запрос.Текст = СтрЗаменить(Запрос.Текст, "И &УсловиеПериод", "");
      КонецЕсли;
      
      Выборка = Запрос.Выполнить().Выбрать();
      
      НаборЗаписей = Последовательности.ДокументыОрганизаций.СоздатьНаборЗаписей();
      
      Пока Выборка.Следующий() Цикл
      
         НаборЗаписей.Отбор.Регистратор.Установить(Выборка.Регистратор);
         НаборЗаписей.Прочитать();
         
         ВГраница = НаборЗаписей.Количество() - 1;
         
         Для Сч = 0 По ВГраница Цикл
            // Удаляем с конца набора
            Движение = НаборЗаписей[ВГраница - Сч];
            
            // У документа могут быть записи последовательности по нескольким организациям,
            // если у него ранее меняли реквизит Организация, поэтому обрабатываем
            // только записи по текущей организации.
            Если Движение.Организация = Организация Тогда
            
               Если Движение.СостояниеПроведения = Перечисления.СостоянияПроведенияВПоследовательности.ИсключенИзПоследовательности Тогда
                  НаборЗаписей.Удалить(Движение);
               Иначе
                  Движение.СостояниеПроведения = Перечисления.СостоянияПроведенияВПоследовательности.ПроведенВПоследовательности;
               КонецЕсли;
            
            КонецЕсли;
         
         КонецЦикла;
         
         НаборЗаписей.Записать();
      
      КонецЦикла;
      
      Если ЗначениеЗаполнено(ДатаОкончания) Тогда
      
         // Следующий по очереди документ объявляем проведенным с нарушением, 
         // чтобы с него начать потом перепроведение.
         МоментСледующегоДокумента = МоментВремениПервогоДокументаВПоследовательности(Организация, ДатаОкончания + 1);
         
         Если МоментСледующегоДокумента <> Неопределено Тогда
         
            СброситьСостояниеПоследовательностиДокумента(
               МоментСледующегоДокумента.Ссылка, 
               МоментСледующегоДокумента.Дата,
               Организация);
            
         КонецЕсли;
      
      КонецЕсли;
      
      ЗафиксироватьТранзакцию();
   
   Исключение
   
      ТекстОшибки = ОписаниеОшибки();
      ОписаниеОшибки = ИнформацияОбОшибке();
   
      ОтменитьТранзакцию();
      
      ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстОшибки);
      ЗаписьЖурналаРегистрации(НСтр("ru = 'Операция не выполнена'"), УровеньЖурналаРегистрации.Ошибка,,, ОписаниеОшибки.Описание);
      ВызватьИсключение ТекстОшибки;
   
   КонецПопытки;
      
   Возврат МоментСледующегоДокумента;
   
КонецФункции
БУОтчет по оплатам счетов на оплату БП 3.0#1 05.03.15 10:32
Отчет неправильно работает, если счет на оплату выставлен в валюте (по договору), а оплата прошла в рублях
DevСдвиг даты контроля последовательности проведения документов в БП 3.0#0 11.02.15 8:49
Обработка для контроля и сдвига даты контроля последовательности проведения документов в БП 3.0 при необходимости.