Имя: Пароль:
1C
1С v8
Проведение документа, если на его основании существуют введеные документы
,
0 Валидатор
 
17.05.13
10:35
Есть документ Заказ Покупателя в УПП 8.2 1.3.38, если на основании этого документа введены какие то другие, то потом, при изменении данных в Заказе покупателя(например дату отгрузки изменили) программа не дает его перепровести, как сделать, чтобы разрешала? можно так сделать?
1 MKZM
 
17.05.13
10:36
а корректировки заказа нет в упп?
2 mikecool
 
17.05.13
10:36
я не против, сделай
3 Валидатор
 
17.05.13
10:37
(1) без корректировки нужно, чтобы я открыл уже созданный документ, именно Заказ Покупателя, изменил в нем дату, нажал записать, и данные в документе записались
4 Валидатор
 
17.05.13
10:40
(2) вот я и спрашиваю как)
5 MKZM
 
17.05.13
10:41
в отладчик смотришь, что мешает проводить и исправляешь это дела + дополняешь своими хотелками
6 mikecool
 
17.05.13
10:43
(3) а вот без корректировки - такие реквизиты надо выносить в регистр сведений...
7 kiabs
 
17.05.13
10:47
(5) Дело говорит.
УПП блокирует изменение документов по понятным причинам, что бы логику создания документов не нарушить, ты этим делом не шибко увлекайся, а то через пару месяцев база сыпаться начнет.
8 mikecool
 
17.05.13
10:48
+6 либо изменение реквизитов, не влияющих на логику движений делать обработкой с программным Записать(режим.Запись)
9 Валидатор
 
17.05.13
10:49
(7) я бы корректировкой делал, но клиент хочет вот именно так(
10 Галахад
 
гуру
17.05.13
10:50
ПередЗаписью посмотреть.
11 Валидатор
 
17.05.13
10:51
(8) не совсем понял, писать обработку для изменения данных реквизита документа что ли?
12 mikecool
 
17.05.13
10:51
(11) да
13 Валидатор
 
17.05.13
10:52
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
   Если ОбменДанными.Загрузка  Тогда
       Возврат;
   КонецЕсли;

   // Если договор с комиссионером, то надо почистить закладку "Услуги".
   Если Услуги.Количество() > 0
      И ДоговорКонтрагента.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.СКомиссионером Тогда

       Услуги.Очистить();

   КонецЕсли;

   // Проверка заполнения единицы измерения мест и количества мест
   ОбработкаТабличныхЧастей.ПриЗаписиПроверитьЕдиницуИзмеренияМест(Товары);
   ОбработкаТабличныхЧастей.ПриЗаписиПроверитьСтавкуНДС(ЭтотОбъект, Товары);
   ОбработкаТабличныхЧастей.ПриЗаписиПроверитьСтавкуНДС(ЭтотОбъект, Услуги);

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

вот что находится в ПередЗаписью, хотел добавить туда
РежимЗаписи = Истина;
но тогда ошибка вылетает про несоответствие получаемых типов что ли
14 Валидатор
 
17.05.13
10:52
РежимЗаписиДокумента.Запись = Истина точнее пишу
15 kiabs
 
17.05.13
10:52
(12) Может не взлететь, если проверка наличие созданных на основании документов стоит в процедуре ПередЗаписью(). Тупо не даст записать.
16 Валидатор
 
17.05.13
10:53
и возвращает он мне
Документ.ЗаказПокупателя.МодульОбъекта(2980)}: Поле объекта недоступно для записи (Запись)
17 kiabs
 
17.05.13
10:58
Кинь текст Процедуры ПриЗаписи()
18 Валидатор
 
17.05.13
10:59
Процедура ПриЗаписи(Отказ)
   
   Если ОбменДанными.Загрузка  Тогда
       Возврат;
   КонецЕсли;

КонецПроцедуры
19 kiabs
 
17.05.13
11:02
У меня УПП нет под рукой, ищи под отладчиком, что блокирует. Иначе никак
20 Валидатор
 
17.05.13
11:11
,kznm, в обработку проведения вообще не заходит,блочит в процедуре перед Записью, уже все там перелопатил, а результата 0((
21 Валидатор
 
17.05.13
11:13
хотя нет, закоментил всю процедуру перед записью, и все равно не записывает док, бред