Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Присвоить значение реквизиту документа 2 страниц V   1 2 >          
alexkhua Подменю пользователя
сообщение 02.08.13, 14:36
Сообщение #1

Завсегдатай
****
Группа: Пользователи
Сообщений: 181
Спасибо сказали: 2 раз
Рейтинг: 0

Есть реквизит документа "Стоимость" . В процедуре проведения этому реквизиту присваивается итоговое значение суммы регистра накопления "Остатки материалов". Если зайти в документ и провести его то значение присваивается,а если проводить стандартной обработкой проведения то не присваивается. Как это можно исправить?

Petre Подменю пользователя
сообщение 02.08.13, 15:50
Сообщение #2

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2905
Из: Київ, Україна
Спасибо сказали: 1147 раз
Рейтинг: 1228.9

Что гадать? Надо смотреть отладчиком.


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

logist Подменю пользователя
сообщение 02.08.13, 16:32
Сообщение #3

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(alexkhua @ 02.08.13, 15:36) *
Как это можно исправить?

Записывать данные этого реквизита в процедуре ПередЗаписью


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Agapov_Stas Подменю пользователя
сообщение 05.08.13, 8:38
Сообщение #4

Завсегдатай
****
Группа: Пользователи
Сообщений: 217
Из: Днепропетровск
Спасибо сказали: 18 раз
Рейтинг: 0

скорее всего ВАША процедура находится в модуле формы, а не в модуле документа
такая процедура будет срабатывать только если Вы откроеТЕ документ и проведеТЕ, но не будет срабатывать если Вы будеТЕ проводить программно
необходимо перенести данную процедуру в модуль документа


 ! 

Правила, п.1
 


Сообщение отредактировал logist - 05.08.13, 9:52

alexkhua Подменю пользователя
сообщение 05.08.13, 10:12
Сообщение #5

Завсегдатай
****
Группа: Пользователи
Сообщений: 181
Спасибо сказали: 2 раз
Рейтинг: 0

Цитата(Agapov_Stas @ 05.08.13, 9:38) *
скорее всего ВАША процедура находится в модуле формы, а не в модуле документа
такая процедура будет срабатывать только если Вы откроеТЕ документ и проведеТЕ, но не будет срабатывать если Вы будеТЕ проводить программно
необходимо перенести данную процедуру в модуль документа

Спасибо конечно за совет, но процедура в модуле документа. Чудеса какие-то.


 ! 

Правила, п.13
 

Может все из-за того, что этот реквизит вытащен на форму?

Сообщение отредактировал logist - 05.08.13, 10:55

logist Подменю пользователя
сообщение 05.08.13, 11:00
Сообщение #6

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Повторюсь
Цитата(logist @ 02.08.13, 17:32) *
Записывать данные этого реквизита в процедуре ПередЗаписью

в модуле объекта.


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Agapov_Stas Подменю пользователя
сообщение 05.08.13, 11:01
Сообщение #7

Завсегдатай
****
Группа: Пользователи
Сообщений: 217
Из: Днепропетровск
Спасибо сказали: 18 раз
Рейтинг: 0

Цитата(alexkhua @ 05.08.13, 11:12) *
Может все из-за того, что этот реквизит вытащен на форму?

т.е. его нет в реквизитах документа ? 19000000.gif
такие элементы формы данные не хранят

alexkhua Подменю пользователя
сообщение 07.08.13, 8:43
Сообщение #8

Завсегдатай
****
Группа: Пользователи
Сообщений: 181
Спасибо сказали: 2 раз
Рейтинг: 0

Как нет в реквизитах ? Это и есть реквизит "Стоимость". В модуле документа, не в процедуре ПередЗаписью, не в процедуре Проведения, с помощью проведения документа ИзВне я не могу изменить значение этого реквизита, только когда захожу в документ и провожу внутри. Это какие-то особенности программы что ли?

Agapov_Stas Подменю пользователя
сообщение 07.08.13, 8:57
Сообщение #9

Завсегдатай
****
Группа: Пользователи
Сообщений: 217
Из: Днепропетровск
Спасибо сказали: 18 раз
Рейтинг: 0

Цитата(alexkhua @ 07.08.13, 9:43) *
Как нет в реквизитах ? Это и есть реквизит "Стоимость". В модуле документа, не в процедуре ПередЗаписью, не в процедуре Проведения, с помощью проведения документа ИзВне я не могу изменить значение этого реквизита, только когда захожу в документ и провожу внутри. Это какие-то особенности программы что ли?

Когда Вы проводите "ИзМне" тогда срабатываю процедуры которые находятся в модуле документа(!)- поместите код в процедуру ПередЗаписью() и будет Вам счастье
А если код срабатывает ТОЛЬКО когда вы заходите в документ и проводите внутри - это говорит о том, что код находится в модуле ФОРМЫ - это разные вещи

Спасибо сказали: alexkhua,

alexkhua Подменю пользователя
сообщение 07.08.13, 9:53
Сообщение #10

Завсегдатай
****
Группа: Пользователи
Сообщений: 181
Спасибо сказали: 2 раз
Рейтинг: 0

Цитата(Agapov_Stas @ 07.08.13, 9:57) *
Когда Вы проводите "ИзМне" тогда срабатываю процедуры которые находятся в модуле документа(!)- поместите код в процедуру ПередЗаписью() и будет Вам счастье
А если код срабатывает ТОЛЬКО когда вы заходите в документ и проводите внутри - это говорит о том, что код находится в модуле ФОРМЫ - это разные вещи

Вы меня конечно извините, но я писал уже не раз, что процедуры все в модуле документа. Делал так: В процедуру
ПередЗаписью() вставлял Функцию типа ОпределитьСтоимость(), в этой функции запросом выбирал из регистра накопления итог по измерению Сумма и присваивал его переменной (реквизиту) Стоимость.

logist Подменю пользователя
сообщение 07.08.13, 10:37
Сообщение #11

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(alexkhua @ 07.08.13, 10:53) *
но я писал уже не раз, что процедуры все в модуле документа

Нет такого понятия "Модуль документа", есть Модуль объекта и Модуль формы.

Цитата(alexkhua @ 07.08.13, 10:53) *
ПередЗаписью() вставлял Функцию типа ОпределитьСтоимость(), в этой функции запросом выбирал из регистра накопления итог по измерению Сумма и присваивал его переменной (реквизиту) Стоимость.

У вас перед записью объекта еще нет в базе, какую стоимость вы пытаетесь получить? Суть проблемы до сих пор не понятна. Ну и в любом случае то как вы поступаете это не правильно.


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Agapov_Stas Подменю пользователя
сообщение 07.08.13, 11:59
Сообщение #12

Завсегдатай
****
Группа: Пользователи
Сообщений: 217
Из: Днепропетровск
Спасибо сказали: 18 раз
Рейтинг: 0

Вы меня конечно извините - но приведите кусок кода - а то я вставил туда и туда - а не деле окажется не так

Цитата(logist @ 07.08.13, 11:37) *
У вас перед записью объекта еще нет в базе

если перепроводить - то есть

alexkhua Подменю пользователя
сообщение 07.08.13, 14:25
Сообщение #13

Завсегдатай
****
Группа: Пользователи
Сообщений: 181
Спасибо сказали: 2 раз
Рейтинг: 0

Цитата(logist @ 07.08.13, 11:37) *
У вас перед записью объекта еще нет в базе, какую стоимость вы пытаетесь получить? Суть проблемы до сих пор не понятна. Ну и в любом случае то как вы поступаете это не правильно.

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

Цитата(logist @ 07.08.13, 11:37) *
У вас перед записью объекта еще нет в базе, какую стоимость вы пытаетесь получить?
Я вставил в модуль объекта Записать(), а потом выбираю значение регистров.

logist Подменю пользователя
сообщение 07.08.13, 14:35
Сообщение #14

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

icon_budo7.gif


Signature
Личные бесплатные консультации не даю, для этого есть форум!

alexkhua Подменю пользователя
сообщение 07.08.13, 14:59
Сообщение #15

Завсегдатай
****
Группа: Пользователи
Сообщений: 181
Спасибо сказали: 2 раз
Рейтинг: 0

А, что? why.gif

logist Подменю пользователя
сообщение 07.08.13, 15:04
Сообщение #16

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Та не, ниче. Каждый извращается как может, но записывать документ в ПередЗаписью это не правильно.


Signature
Личные бесплатные консультации не даю, для этого есть форум!

alexkhua Подменю пользователя
сообщение 07.08.13, 15:10
Сообщение #17

Завсегдатай
****
Группа: Пользователи
Сообщений: 181
Спасибо сказали: 2 раз
Рейтинг: 0

Цитата(logist @ 07.08.13, 16:04) *
Та не, ниче. Каждый извращается как может, но записывать документ в ПередЗаписью это не правильно.

Записываю я его в процедуре проведения. Ладно буду разбираться. Спасибо всем.

Vofka Подменю пользователя
сообщение 07.08.13, 15:40
Сообщение #18

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

Цитата(alexkhua @ 07.08.13, 16:10) *
Записываю я его в процедуре проведения.

А надо в ПередЗаписью(). А выше, что Логист написал, так это шутка юмора.

Спасибо сказали: alexkhua,

logist Подменю пользователя
сообщение 07.08.13, 15:58
Сообщение #19

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(Vofka @ 07.08.13, 16:40) *
А надо в ПередЗаписью()

Нет. Это не шутка юмора, человек считывает данные из регистров уже после проведения документа (данные этого же документа), но почему-то в ПередЗапсью. Вообще, я перечитал тему пару раз и так и не понял, где и что записывается. Всё я удаляюсь, без примеров кода говорить больше не о чем.


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Спасибо сказали: alexkhua,

alexkhua Подменю пользователя
сообщение 07.08.13, 20:50
Сообщение #20

Завсегдатай
****
Группа: Пользователи
Сообщений: 181
Спасибо сказали: 2 раз
Рейтинг: 0

Получилось в процедуре ПередЗаписью(<Отказ>, <РежимЗаписи>, <РежимПроведения>) только при условии Отказ = Ложь.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


2 страниц V   1 2 >
Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 02.05.24, 5:19
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!