Имя: Пароль:
1C
1С v8
Изменение реквизита документа РеализацияТоваровиУслуг
,
0 dkonakov
 
09.10.13
14:27
Добрый день! Конфигурация УТ 10.2
Есть некий документ Доставка, самописный, его задача собрать реализации за определенную дату, распечататься и в реализациях выставить добавленный реквизит "отгружен" в истину. Как это сделать - понятно, даже обработчик "при записи" подойдет.
Но вот момент - допустим, собрали реализации, записали, реквизиты проставились. Следом кто-то зашел, все удалил, и документ записал. А реквизит "отгружен" на предыдущих реализациях остался истинным и соответственно неверным.
Как реализовать удаление истинности значения реквизита в документе реализация товаров и услуг?
1 Aleksey
 
09.10.13
14:29
а зачем он что-то удалил, если товар отгружен?
2 Aleksey
 
09.10.13
14:30
Т.е. налицо отсутствия условия отгрузки, и проставления реквизита от фонаря
3 dkonakov
 
09.10.13
14:31
(1) ну допустим сначала провели, а потом выяснилось, что этот контрагент сегодня не едет, его удаляют из документа и заново формируют документ Доставка. а на том остается надпись - ОТГРУЖЕН.
4 КоньЛапчатый
 
09.10.13
14:32
При уалении получай объект и изменяй значение реквизита
5 BuHu
 
09.10.13
14:34
(3) не используйте реквизит документа Реализация товаров и услуг , используйте регистр сведений или в документ Доставка добавте таб часть где указывайте документы Реализации
6 Aleksey
 
09.10.13
14:34
(4) там не объект удаляется, а формируется отдельный документ - "доставка" и при проведении этого документа программа пробегается по табличной части и проставляет документам из ТЧ реквизит доставка в "истина"

И у ТЧ ситуация когда документ "достава" провели, а потом зашли и удалил строчку из ТЧ
7 Шапокляк
 
09.10.13
14:35
Может, есть смысл на регистр сведений посмотреть? Ну чтоб доставка была регистратором и туда писала?
8 КоньЛапчатый
 
09.10.13
14:36
(6) вот при удалении строки с документом из ТЧ, получаешь удаляемый документ, потом меняешь реквизит доставка в "ложь"
9 Aleksey
 
09.10.13
14:37
(5) я так понял так и есть

Собственно вариант 1 При записи документа доставка у тебя 2 состояния- объект который записан в базу (через получитьОбъект() он должен быть доступен) и то что на форме, так что сначало получаешь документ из БД удаляешь реквизит, а потом заполняешь

Ну или РС который двигает документ
10 dkonakov
 
09.10.13
14:40
(9) да, вы меня верно поняли. По сути перед записью мне нужно отменить все записи у реализаций в ТЧ(Объект) и повторно записать  те, что на форме. Так?
11 dkonakov
 
09.10.13
14:40
(8) при удалении строки - плохо. Человек случайно удалил, а потом нажал закрыть без записи.
12 dkonakov
 
09.10.13
14:41
Aleksey, спасибо, сейчас буду пробовать!
13 Serg_1960
 
09.10.13
14:46
(0) Не надо в документах реализации такой реквизит делать. В документе фиксируется только то, что этим документом фиксируется. Сложно сказал? А ты попробуй понять эту простую истину :)

Посмотри, например, реализацию показа суммы взаиморасчетов в счете покупателю.

Твой самописный документ доставки должен делать движения в РС. И всё. А вместо реквизита на форме документа реализации - показываются записи из этого РС.
14 dkonakov
 
09.10.13
14:58
(13) Получается надо сделать РС с двумя измерениями: сам документ доставки, реализация и ресурсом Отгружен - Истина/Ложь?
15 Aleksey
 
09.10.13
15:32
(14) а ложь зачем?, он или есть или нет
16 dkonakov
 
09.10.13
16:09
Пока вот не пойму как мне полученное вывести на форму из регистра сведений. Вот допустим нанёс я элементформы ДокументСсылка.Доставка, получаю его из РС при открытии формы. Как их связать, чтобы видно было значения, но они никуда не записывались?
17 dkonakov
 
09.10.13
16:10
Всё, уже понял)
18 dkonakov
 
09.10.13
16:15
Всем спасибо, вопрос закрыт :)
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший