![]() |
![]() |
![]() |
|
Как создать еще один экземпляр внешней обработки? | ☑ | ||
---|---|---|---|---|
0
Гений 1С
гуру
21.06.07
✎
13:41
|
Нарпимер, при расшифровке я хочу создать еще один экземпляр самой себя. Можно это сделать, или очередная черная дыра?
|
|||
1
Naumov
21.06.07
✎
13:50
|
в отчете должен быть ключьУникальности разный
|
|||
2
Гений 1С
гуру
21.06.07
✎
14:31
|
(1) речь идет о внешней обработке, то что вы написали в (1) я знаю.
|
|||
3
Гений 1С
гуру
22.06.07
✎
09:21
|
апп
|
|||
4
AversDik2
22.06.07
✎
10:09
|
(2) Тебе нужна ВнешняяОбработкаОбъект или все еще экземпляр ее формы?
Если форма, то см (1). |
|||
5
Гений 1С
гуру
22.06.07
✎
10:10
|
(4) Гм... ты предлагаешь ЭтаФорма.Открыть(,,Новый УникальныйИдентификатор()) - для формы это прокатит, но мне блин нужен новый экземпляр обработки.
|
|||
6
AversDik2
22.06.07
✎
10:13
|
(5) Ну и создай ее. Кто мешает?
ВнешняяОбработка1 = ВнешниеОбработки.Создать(ПолноеИмяФайла); ВнешняяОбработка2 = ВнешниеОбработки.Создать(ПолноеИмяФайла); |
|||
7
Гений 1С
гуру
22.06.07
✎
11:50
|
(6) не знаю имя файла
|
|||
8
Гений 1С
гуру
22.06.07
✎
11:51
|
Блин, через хранилище!
|
|||
9
Гений 1С
гуру
22.06.07
✎
12:18
|
(8) Блин, не прокатило:
Функция обСкопироватьВнешнююОбработку(ОбъектВнешнейОбработки) Перем Хр; Хр=Новый ХранилищеЗначения(ОбъектВнешнейОбработки); Возврат Хр.Получить(); КонецФункции Не работает, зараза... |
|||
10
AversDik2
22.06.07
✎
12:58
|
(9) А тебе точно нужна новая копия обработки?
Может пойти другим путем? |
|||
11
snc
22.06.07
✎
15:55
|
Если я правильно понял тему, то это можно решить.
Решение: храним копию в макете. Потом выгружаем в файл во временный каталог и запускаем. Ну и, естественно, при открытии новый идентификатор. |
|||
12
snc
22.06.07
✎
15:56
|
и никаких черных дыр
|
|||
13
Гений 1С
гуру
22.06.07
✎
16:10
|
(10) точно, потому что реквизиты обработки используются в форме. Если я создам копию формы, затрутся реквизиты текущей обработки.
(11) чтото ты гонишь... У меня есть открытая обработка, кроме ЭтотОбъект больше ничего нет... Как создать копию? |
|||
14
AversDik2
22.06.07
✎
16:20
|
(13) Сохрани данные текущей формы в структуру, а потом восстановишь обратно.
|
|||
15
snc
22.06.07
✎
16:30
|
(13) сохранить в макет как двоичные данные. Неужели никогда не ковырял типовые обработки по переносу данных - там это широко практикуется
|
|||
16
Гений 1С
гуру
22.06.07
✎
18:23
|
(15) не тупи СНК, как я получу файл, если я не знаю его местоположение. Я пишу универсальную обработку, имя файла не знаю...
|
|||
17
snc
22.06.07
✎
18:31
|
(16) Я все подробно объяснил. Если ты нехочешь понимать (или просто прикалываешься) я тебя заставлять небуду. Ищи решения сам. Все написано выше.
|
|||
18
Гений 1С
гуру
25.06.07
✎
09:12
|
(17) СНК, ты не понимаешь.
Вот я делаю поставку внешней обработки. Когда она запускается, она не знает, где она находится, понимаешь? Невозможно определить имя файла, поэтому твои методы не работают. А ты тупишь и не понимаешь ситуации! |
|||
19
AversDik2
25.06.07
✎
09:24
|
(17) +1
(18) ИмяФайла = ПолучитьИмяВременногоФайла("epf"); ЭтотОбъект.ПолучитьМакет("ДвоичныеДанныеОбработки").Записать(ИмяФайла); НовыйЭкземпляр = ВнешниеОбработки.Создать(ИмяФайла); |
|||
20
Гений 1С
гуру
25.06.07
✎
09:43
|
(19) клево. ;-) Офигеть как извращенно, но клево. ;-)
|
|||
21
Гений 1С
гуру
25.06.07
✎
09:57
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |