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

Хранилище

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

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



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

Молчаливый
*
Группа: Пользователи
Сообщений: 3
Спасибо сказали: 0 раз
Рейтинг: 0

Передать параметр в форму документа очень просто.
Добавить реквизит формы с названием типа лНеВыводитьСообщения и типом Булево.
По умолчанию оно будет иметь значение Ложь.
При вызове формы документа из твоей обработки устанавливать значение реквизита.
Если форма не открывается - для оператора все проходит "в темную" - тогда добавить реквизит типа Булево в документ и в обрабоке проведения модуля документа вставить условие обхода этой ситуации:
Если НЕ (ТипЗнач() = "Документ.Перемещение" И лНеВыводитьСообщения) Тогда
Сообщить();
КонецЕсли
В этом случае ни человеческий фактор (в форме документа этот реквизит не будет присутствовать) ни другие волнующие тебя проблемы не будут проявляться.
Единственно, нужно отслеживать изменения при накате обновлений.

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

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

Цитата(Batchir @ 01.08.09, 16:30) *


глЗначениеПеременнойУстановить("а1сВыводитьСообщенияОНедостачеПартий",Истина);



А если так:
глЗначениеПеременнойУстановить("а1сВыводитьСообщенияОНедостачеПартий", Истина, ОбновлятьВоВсехКэшах = Ложь);


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

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

Batchir Подменю пользователя
сообщение 01.08.09, 15:38
Сообщение #23

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1427 раз
Рейтинг: 0

Цитата(sergefox @ 01.08.09, 15:34) *
Передать параметр в форму документа очень просто.
Добавить реквизит формы с названием типа лНеВыводитьСообщения и типом Булево.
По умолчанию оно будет иметь значение Ложь.
При вызове формы документа из твоей обработки устанавливать значение реквизита.
Если форма не открывается - для оператора все проходит "в темную" - тогда добавить реквизит типа Булево в документ и в обрабоке проведения модуля документа вставить условие обхода этой ситуации:
Если НЕ (ТипЗнач() = "Документ.Перемещение" И лНеВыводитьСообщения) Тогда
Сообщить();
КонецЕсли
В этом случае ни человеческий фактор (в форме документа этот реквизит не будет присутствовать) ни другие волнующие тебя проблемы не будут проявляться.
Единственно, нужно отслеживать изменения при накате обновлений.

А подумай как твоя схема отработает в случае когда: В "темную" провелся документ, у него стоит лНеВыводитьСообщения=ИСТИНА
документ никто не открывает. Правят приходну вручную, запускают восстановление партий, документ перемещения проведется и не ругнется, а надо что бы ругался.

Batchir Подменю пользователя
сообщение 01.08.09, 15:46
Сообщение #24

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1427 раз
Рейтинг: 0

Цитата(logist @ 01.08.09, 16:05) *
А если так:
глЗначениеПеременнойУстановить("а1сВыводитьСообщенияОНедостачеПартий", Истина, ОбновлятьВоВсехКэшах = Ложь);

глЗначениеПеременной("а1сВыводитьСообщенияОНедостачеПартий") на сервере предприятия отрабатывает с ошибкой, блин чую что можно как-то сделать, вот только не могу понять как.

Batchir Подменю пользователя
сообщение 01.08.09, 16:19
Сообщение #25

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1427 раз
Рейтинг: 0

Вобщем спаибо logist за помощь этот фрагмент отработал на сервере номально
При запуске 1С в модуле приложения выполняю:


глЗначениеПеременнойУстановить("а1сВыводитьСообщенияОНедостачеПартий", Истина, Истина);

и в общем модуле стандартную часть вывода сообщений заменил на


// ==============================
// Добавлено а1с:РБ: 31.07.2009
Попытка
Попытка
а1сВыводитьСообщенияОНедостачеПартий = глЗначениеПеременной("а1сВыводитьСообщенияОНедостачеПартий");
Исключение
глЗначениеПеременнойУстановить("а1сВыводитьСообщенияОНедостачеПартий", Истина, Истина);
а1сВыводитьСообщенияОНедостачеПартий = глЗначениеПеременной("а1сВыводитьСообщенияОНедостачеПартий");
КонецПопытки;
Исключение
а1сВыводитьСообщенияОНедостачеПартий = Истина;
КонецПопытки;
// ==============================

// Товара не хватило
Если (КоличествоОсталосьПогасить > 0) Тогда
// ==============================
// Добавлено а1с:РБ: 31.07.2009
Если а1сВыводитьСообщенияОНедостачеПартий Тогда
СообщитьОНехваткеПартии(СтрокаДокумента, СтруктураПараметров,
РегистрУчета, КоличествоОсталосьПогасить);
КонецЕсли;
// закоментировано
//СообщитьОНехваткеПартии(СтрокаДокумента, СтруктураПараметров, РегистрУчета, КоличествоОсталосьПогасить);
// ==============================

Иначе
Если ЗначениеЗаполнено(СтрокаДокумента.ДокументПартии)
И (СтрокаДокумента.КодОперацииПартииТоваров = Перечисления.КодыОперацийПартииТоваров.ВозвратПоставщику)
И (КоличествоСписанноеПоДоументуПартии < СтрокаДокумента.Количество) Тогда
// ==============================
// Добавлено а1с:РБ: 31.07.2009
Если а1сВыводитьСообщенияОНедостачеПартий Тогда
СообщитьОНеполномСписанииУказаннойПартии(СтрокаДокумента, СтруктураПараметров,
РегистрУчета, КоличествоОсталосьПогасить);
КонецЕсли;
// закоментировано
//СообщитьОНеполномСписанииУказаннойПартии(СтрокаДокумента, СтруктураПараметров, РегистрУчета,
КоличествоОсталосьПогасить);
// ==============================
КонецЕсли;
КонецЕсли;
// ==============================
// Добавлено а1с:РБ: 31.07.2009
глЗначениеПеременнойУстановить("а1сВыводитьСообщенияОНедостачеПартий", Истина, Истина);
// ==============================


И все заработало.
З.Ы. + везде поставил wink.gif

zetovich Подменю пользователя
сообщение 01.08.09, 18:16
Сообщение #26

Почти ветеран
Иконка группы
Группа: Местный
Сообщений: 718
Из: Северодонецк
Спасибо сказали: 121 раз
Рейтинг: 0

вот не докноца...видно....это всем/всегда НЕ будет выводится сие сообщенеи?
как помне из за таких проблем менять конфу....не
пусть тетя окошко внизу свернет...

Batchir Подменю пользователя
сообщение 01.08.09, 18:48
Сообщение #27

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1427 раз
Рейтинг: 0

Цитата(zetovich @ 01.08.09, 19:16) *
вот не докноца...видно....это всем/всегда НЕ будет выводится сие сообщенеи?
как помне из за таких проблем менять конфу....не
пусть тетя окошко внизу свернет...

Оно должно не выводится только в тех случаях, где мне нужно.
zetovich, неужели думаешь, что год разрабатывалась конфа на основе УТ и не менялась?
Там столько сделано ... мама не горюй ... Сеть аптек (20 шт), центральный офис и склад до этого сидели на заточенном и полностью передаланным под них тисе. База и требования к ней уже переросли свои возможности. Сейчас написан обмен между 7.7 и 8.1, т.к. переход планируется плавный. Сначала офис и склад переходят на 8.1, т.е. фактически функцонируют параллельно две конфы и пока последняя точка не перейдет на 8.1 так и будет. УТ дописана под них конкретно (штаный механизм старались торгать по минимуму), но шла в основном надстройка над типовой конфой, что бы оставить возможность обновлений, пусть даже и тяжелых. После синхронизации 7.7 и 8.1 база в 8.1 превышает 40 ГБ.
Просто хочу сказать что выражения типа "как помне из за таких проблем менять конфу" в этом случае не уместны.
Я сам когда мне говорят "хочу вот видеть то и то" и есть два пути решения: один легкий но с доработками конфы, а другой тяжелый но с испоьзованием каких то внешних обработок, то стараюсь делать второй вариант, предупреждая заказчика что сейчас Вы заплатите больше, но вдальнейшем без проблем будете обновляться.

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

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

Цитата(Batchir @ 01.08.09, 20:48) *
Просто хочу сказать что выражения типа "как помне из за таких проблем менять конфу" в этом случае не уместны.

Я мало понял, что же Вы все таки там делаете smile.gif Но из того, что я понял, я бы наверное искал другое решение, возможно "людское".

Цитата(Batchir @ 01.08.09, 20:48) *
Я сам когда мне говорят "хочу вот видеть то и то" и есть два пути решения: один легкий но с доработками конфы, а другой тяжелый но с испоьзованием каких то внешних обработок, то стараюсь делать второй вариант, предупреждая заказчика что сейчас Вы заплатите больше, но вдальнейшем без проблем будете обновляться.

+1


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

Batchir Подменю пользователя
сообщение 01.08.09, 21:05
Сообщение #29

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1427 раз
Рейтинг: 0

Цитата(logist @ 01.08.09, 20:48) *
Я мало понял, что же Вы все таки там делаете smile.gif Но из того, что я понял, я бы наверное искал другое решение, возможно "людское".

Перевод крупной одесской сети аптек с уже написанной нами конфы на базе ТиС на УТ 8.1, серьёзный, крупный проект с огромным бюджетом. Я говорил, что описать всё немогу, лишь столкнулся с некоторыми вещами, которые просто нужно подправить.
Конфа построена так чтобы как можно больше облегчить работу пользователей с сохранением типового механизма работы, ежедневно центральный склад получает товара от 10 000 до 20 000 единиц товара (все это нужно правильно принять, отштрихкодировать и отправить на аптеки по их заказам). Большая часть документов формируется автоматом ночью: анализируются заказы и остатки аптек, рассылаются заказы поставщикам, обрабатываются присланные поставщиками приходные в электронном виде + все причуды фармацевтического бизнеса. И это лишь участок заказов и приемки товара.
Повторюсь я не в силах описать всё. Весь механизм приемки построен на специализированных АРМах и дополнительных регистрах, с помощью которых создаются, редактируются типовые документы.

sergefox Подменю пользователя
сообщение 02.08.09, 20:41
Сообщение #30

Молчаливый
*
Группа: Пользователи
Сообщений: 3
Спасибо сказали: 0 раз
Рейтинг: 0

Еще раз.
Предлагаемый реквизит в документе Перемещение используется только при программном формировании документа в твоей обработке.
Нигде больше он не проявляется и в форме его не видно.
Поэтому никакая тетя не сможет его изменить.
Значение по умолчанию - всегда Ложь, кроме этой конкретной обработки.
Поэтому при прочих обработках - Последовательность, групповое перепроведение документов он будет проводиться с этим значением.
И только там, где ты напишешь при создании документа
Реквизит = Истина;
будет измененная обработка проведения.

Fynjy Подменю пользователя
сообщение 03.08.09, 8:27
Сообщение #31

Сенсей Чака Норриса
**********
За вредность
Группа: Пользователи
Сообщений: 1994
Из: Ахметов сити
Спасибо сказали: 333 раз
Рейтинг: 0

ДокументОбъект.<Имя документа>.ДополнительныеСвойства (DocumentObject.<Имя документа>.AdditionalProperties)
ДокументОбъект.<Имя документа> (DocumentObject.<Имя документа>)
ДополнительныеСвойства (AdditionalProperties)
Использование:
Только чтение.
Описание:
Тип: Структура. Может использоваться в тех случаях, когда необходимо хранить некоторые значения, связанные с объектом, на время выполнения некоторых операций, без изменения объекта. Например, при обработке событий в подписке на события.
XML-сериализация.


Signature

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

Batchir Подменю пользователя
сообщение 03.08.09, 8:56
Сообщение #32

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1427 раз
Рейтинг: 0

Цитата(sergefox @ 02.08.09, 21:41) *
Еще раз.
Предлагаемый реквизит в документе Перемещение используется только при программном формировании документа в твоей обработке.
Нигде больше он не проявляется и в форме его не видно.
Поэтому никакая тетя не сможет его изменить.
Значение по умолчанию - всегда Ложь, кроме этой конкретной обработки.
Поэтому при прочих обработках - Последовательность, групповое перепроведение документов он будет проводиться с этим значением.
И только там, где ты напишешь при создании документа
Реквизит = Истина;
будет измененная обработка проведения.


И в созданных програмно документах он всегда будет истина, правильно? И дальнейшое проведение таких документов сообщений не покажет, правильно?

Batchir Подменю пользователя
сообщение 03.08.09, 8:59
Сообщение #33

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1427 раз
Рейтинг: 0

Цитата(Fynjy @ 03.08.09, 9:27) *
ДокументОбъект.<Имя документа>.ДополнительныеСвойства (DocumentObject.<Имя документа>.AdditionalProperties)
ДокументОбъект.<Имя документа> (DocumentObject.<Имя документа>)
ДополнительныеСвойства (AdditionalProperties)
Использование:
Только чтение.
Описание:
Тип: Структура. Может использоваться в тех случаях, когда необходимо хранить некоторые значения, связанные с объектом, на время выполнения некоторых операций, без изменения объекта. Например, при обработке событий в подписке на события.
XML-сериализация.

А вот этого не знал, спс

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

Сенсей Чака Норриса
**********
За вредность
Группа: Пользователи
Сообщений: 1994
Из: Ахметов сити
Спасибо сказали: 333 раз
Рейтинг: 0

Век живи, век учись и дураком помрешь smile.gif


Signature

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


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

 

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