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

Хранилище

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

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



> Открыть созданный программно документ из обработки проведения 2 страниц V  < 1 2          
logist Подменю пользователя
сообщение 03.09.12, 12:53
Сообщение #21

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

Цитата(Vofka @ 03.09.12, 13:27) *
Цитата
Да, кстати, а как же мне в форме заполнить ДополнительныеСвойства, если у меня там объекта еще нету?

глупый и никто не отвечает или же никто не знает ответа?

ПослеЗаписи Объект уже есть, соответственно в какой-то серверной процедуре можно взять из ДополнительныхСвойств чего-то. Т.е. в модуле при проведении записываем туда ссылку нового объекта, а в форме ПослеЗаписиНаСервере получаем ее. Только вот доступны ли ДополнительныеСвойства в форме...


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

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

alex040269 Подменю пользователя
сообщение 03.09.12, 13:04
Сообщение #22

Крутой
Иконка группы
Группа: Местный
Сообщений: 1626
Из: Гуляйполе
Спасибо сказали: 236 раз
Рейтинг: 0

Цитата(logist @ 03.09.12, 13:53) *
Только вот доступны ли ДополнительныеСвойства в форме

не доступны. Это реквизит объекта. Время жизни равно времени жизни объекта.


Signature
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник.
ЗиУП

DartRomanius Подменю пользователя
сообщение 03.09.12, 13:13
Сообщение #23

Ветеран
Иконка группы
Группа: Местный
Сообщений: 824
Из: Запорожье
Спасибо сказали: 145 раз
Рейтинг: 0

Цитата(Vofka @ 03.09.12, 13:27) *
Ну так формы то самой нету, в которой эти события определены. Ну т.е. в событии формы документа ПередЗаписью, как писали выше, надо данные в хранилище поместить, а потом извлечь и что-то с ними сделать. Но в форме списка нету событий не ПередЗаписью не ПослеЗаписи. Соответственно вопрос стоит в том, как вернуть адрес хранища с сервера на клиент?


Собственно, в форме списка документов (кстати он как правило представлен "ДинамическийСписок") такого нет в принципе.
Посему вывод: подобный финт не возможен из формы списка, однако возможен из формы самого объекта. То есть, стандартными средствами не достижимо.
Однако, можно извратится:
- сделать кнопку на форме списка (со своей собственной процедурой/функцией вызова проведения того объекта на который спозиционированы).
- в данной команде вызываем открытие формы объекта с передачей определенных параметров вызова. (думаю взаимодействие 2-х и более форм описывать не требуется).
- потом получив из так не открывшейся (так надо задать в условиях данного вопроса насколько я понял) формы передаем контекст (привет 7.7)/ссылку на созданный объект.
- .........
- PROFIT

smile.gif


Signature
-----------------------------------------------------------------------------------
Единственный, интуитивно понятный интерфейс - мамкина сиська!
Всему остальному надо учиться! (с) Не знаю кто....

Vofka Подменю пользователя
сообщение 03.09.12, 13:29
Сообщение #24

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

Запутали ещё больше smile.gif . В общем, я по позже ещё тему перечитаю, покручу то о чем здесь написано и отпишу. Всем спасибо за ответы!

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

Ветеран
Иконка группы
Группа: Местный
Сообщений: 824
Из: Запорожье
Спасибо сказали: 145 раз
Рейтинг: 0

Ладно, попробую .....

Есть:
- "документ 1" - создаем, зписываем/проводим, проводим существующий из формы списка.
- "документ 2" - создается из модуля проведения (и проводится) документа1.

в догонку:
- "документ 1", знает о наличии отсутствии (как вариант реквизит-ссылка) "документа 2".

Варианты:
1. "Документ 1" - проводится (и записывается ессно..) из собственной формы документа.
2. "Документ 1" - проводится/перепроводится (хотя не суть важно) из "ФормаСписка"/"ФормаВыбора" (как вариант еще журналы, но принцип тот-же).

Решения:
1-й вариант, вроде все ясно, отлавливаем событие "ПриЗаписи" объекта и так-как объект уже есть (опустим пока транзакционные особенности), то можно достучаться уже до "ДополнительныеСвойства".
2-й вариант сложнее, требуется модернизировать "ФормуДокумента" у "документ 1". Требуется ввести параметр формы (причем возможно "ключевой"). Далее перед открытием формы делать анализ, и передавать данные форме (списка) которая открыла форму с параметрами (необходимыми нам). ЗЫ: Думаю отдельная команда в списке тут в самый раз. Так-как мы частично повторяем пункт 1-й, то алгоритм надо прописывать с учетом вариаций вызова.
Тут нам кстати пригодится структура "ПараметрыЗаписи", можно добавлять свои ключи.

Где-то как-то так... smile.gif


Signature
-----------------------------------------------------------------------------------
Единственный, интуитивно понятный интерфейс - мамкина сиська!
Всему остальному надо учиться! (с) Не знаю кто....

Vofka Подменю пользователя
сообщение 03.09.12, 14:11
Сообщение #26

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

Цитата(DartRomanius @ 03.09.12, 14:45) *
1-й вариант, вроде все ясно, отлавливаем событие "ПриЗаписи" объекта и так-как объект уже есть (опустим пока транзакционные особенности), то можно достучаться уже до "ДополнительныеСвойства"

Так а как потом достучаться до дополнительных свойств в процедуре ПослеЗаписи из модуля формы на клиенте?

DartRomanius Подменю пользователя
сообщение 03.09.12, 14:16
Сообщение #27

Ветеран
Иконка группы
Группа: Местный
Сообщений: 824
Из: Запорожье
Спасибо сказали: 145 раз
Рейтинг: 0

Цитата(Vofka @ 03.09.12, 15:11) *
Так а как потом достучаться до дополнительных свойств в процедуре ПослеЗаписи из модуля формы на клиенте?


Так объект уже в базе.... события происходят уже после транзакции....
Правда тока на серверной части формы, но все-же....

Сообщение отредактировал DartRomanius - 03.09.12, 14:16


Signature
-----------------------------------------------------------------------------------
Единственный, интуитивно понятный интерфейс - мамкина сиська!
Всему остальному надо учиться! (с) Не знаю кто....

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

Крутой
Иконка группы
Группа: Местный
Сообщений: 1626
Из: Гуляйполе
Спасибо сказали: 236 раз
Рейтинг: 0

Цитата(DartRomanius @ 03.09.12, 15:16) *
Так объект уже в базе.... события происходят уже после транзакции....

Объект в базе - не означает, что события происходят после транзакции...

ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения) - еще можно влиять на значение реквизитов документа

ПриЗаписи(Отказ) - изменить реквизиты можно, но бесполезно (документ записан). Отказаться от проведения дока еще можно - транзакция продолжается!

Да к стати. Есть еще одна мыслишка на сервере доступна форма, может получится создать еще один служебный реквизит формы. Запихнуть туда уникальный идентификатор созданного дока и прочитать его на клиенте.


Signature
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник.
ЗиУП

DartRomanius Подменю пользователя
сообщение 03.09.12, 14:33
Сообщение #29

Ветеран
Иконка группы
Группа: Местный
Сообщений: 824
Из: Запорожье
Спасибо сказали: 145 раз
Рейтинг: 0

Цитата(alex040269 @ 03.09.12, 15:28) *
Объект в базе - не означает, что события происходят после транзакции...

ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения) - еще можно влиять на значение реквизитов документа

ПриЗаписи(Отказ) - изменить реквизиты можно, но бесполезно (документ записан). Отказаться от проведения дока еще можно - транзакция продолжается!

Да к стати. Есть еще одна мыслишка на сервере доступна форма, может получится создать еще один служебный реквизит формы. Запихнуть туда уникальный идентификатор созданного дока и прочитать его на клиенте.


Не знаю, не знаю... Сам конечно экспериментально не пробовал, но согласно вышеприведенной выше ссылке на схему
(собственно страница 832 из 1С:Предприятие 8.2 Практическое пособие разработчика)
событие "ПослеЗаписиНаСервере" в серверной части формы, уже после транзакции записи происходит.


Signature
-----------------------------------------------------------------------------------
Единственный, интуитивно понятный интерфейс - мамкина сиська!
Всему остальному надо учиться! (с) Не знаю кто....

Vofka Подменю пользователя
сообщение 03.09.12, 14:44
Сообщение #30

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

Цитата(DartRomanius @ 03.09.12, 15:16) *
Так объект уже в базе.... события происходят уже после транзакции....
Правда тока на серверной части формы, но все-же....

Наверное я чего-то не пониманию.

Итак, на пальцах. Процедура модуля объекта:

Процедура ОбработкаПроведения(Отказ, РежимПроведения)
    ДополнительныеСвойства.Вставить("Тест", "Есть");
КонецПроцедуры


Процедуры в модуле формы:

&НаСервере
Процедура Тест()
    // как мне отсюда к дополнительным свойствам достучаться?
        // объекта того нету. И если мы даже получим тут объект - то это будет другой объект с пустыми дополнительными свойствами.
КонецПроцедуры

&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
    Тест();
КонецПроцедуры


И если можно, давайте продолжим на примерах какого-то кода.

Сообщение отредактировал Vofka - 03.09.12, 14:45

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

Крутой
Иконка группы
Группа: Местный
Сообщений: 1626
Из: Гуляйполе
Спасибо сказали: 236 раз
Рейтинг: 0

а как открыть форму, если есть ссылка на документ?

[необходимо зарегистрироваться для просмотра ссылки]


Signature
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник.
ЗиУП

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

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

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

Цитата(alex040269 @ 03.09.12, 17:01) *
а как открыть форму, если есть ссылка на документ?

ОткрытьЗначение();


Но в моем случае используется не ссылка, а объект, т.к. ссылки ещё нету. Но не в этом суть, это так, небольшой отступ, который не является предметом обсуждения данной темы.

Цитата(alex040269 @ 03.09.12, 17:04) *
[необходимо зарегистрироваться для просмотра ссылки]

И что мне покажет пустой конфиг?

alex040269 Подменю пользователя
сообщение 03.09.12, 19:38
Сообщение #33

Крутой
Иконка группы
Группа: Местный
Сообщений: 1626
Из: Гуляйполе
Спасибо сказали: 236 раз
Рейтинг: 0

Цитата(Vofka @ 03.09.12, 17:09) *
И что мне покажет пустой конфиг?


ну конфиг не совсем пучтой!!! А что вы ожидали УПП за 15 мин?

Цитата(Vofka @ 03.09.12, 17:09) *
Но в моем случае используется не ссылка, а объект, т.к. ссылки ещё нету

а разве объекты доступны на клиенте?


Signature
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник.
ЗиУП

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

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

Цитата(alex040269 @ 03.09.12, 20:38) *
ну конфиг не совсем пучтой!!!

Странно, я просмотрел, ничего не увидел там вообще. Завтра ещё раз гляну.

Цитата(alex040269 @ 03.09.12, 20:38) *
а разве объекты доступны на клиенте?

Не доступен, но это роли не играет http://pro1c.org.ua/index.php?showtopic=7950

Vofka Подменю пользователя
сообщение 04.09.12, 9:11
Сообщение #35

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

Цитата(alex040269 @ 03.09.12, 20:38) *
ну конфиг не совсем пучтой!!!

Перекачал, появилось 2 документа. Как добраться до объекта теперь я понял faceoff.gif . Но ваш вариант немного не то, что надо, потому что вы создаете документ и записываете его, а мне надо без записи. Но с остальным я разобрался. Мой затык был в том, что я не знал, как потом добраться до текущего объекта. Тепер я понял к чему было сказано
Цитата(DartRomanius @ 03.09.12, 12:58) *
Практическое пособие разработчика - 832 стр.

smile.gif .

При решении воспользовался, как писали:
Цитата(pumbaE @ 03.09.12, 9:38) *
Дополнительные свойства только на сервере или толстом клиенте. Создаем временное хранилище, проводим документ, во временное хранилище возвращаем ссылку и уже на клиенте делаем Ссылка.ОткрытьЗначение() .


Если будет время и не забуду, то на досуге оформлю в виде заметки как это сделать.

Всем спасибо, всем жму палец! smile.gif

PS. Не смог удержаться

DartRomanius Подменю пользователя
сообщение 04.09.12, 11:18
Сообщение #36

Ветеран
Иконка группы
Группа: Местный
Сообщений: 824
Из: Запорожье
Спасибо сказали: 145 раз
Рейтинг: 0

Ох.!!!!1111адынадын

Сам в свое время мозги в гипсу держал. Теперь с ужасом сморю на формы "обыкновенные". smile.gif
Запомним как данность, объект существует даже если он не записан в базу, следовательно..... надеюсь продолжать не надо?
Ссылка будет существовать (всегда) если объект записан в базу данных.

Ну и напомню прописные истины:
Модуль формы (клиент) - не имеет доступа к данным, только к своему объекту и то ограниченно, и то с оговорками.
Модуль формы (сервер) - имеет доступ к данным, но есть некоторые (относительно незначительные) особенности.
Модуль (общий? объекта?) (сервер) - имеет доступ к данным.

За сим откланяюсь.


Signature
-----------------------------------------------------------------------------------
Единственный, интуитивно понятный интерфейс - мамкина сиська!
Всему остальному надо учиться! (с) Не знаю кто....

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


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

 

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