|
Задача по перезагрузки документа | ☑ | ||
---|---|---|---|---|
0
Nikname232
18.06.16
✎
15:57
|
Приветствую вас, форумчане. Имеется один вопрос, который еще задавался здесь v8: "Перегрузка документа" Изучаю 1С четвёртый день :) . Задача та же. Я понимаю, задача не из легких и я не прошу написать за меня код, кто может мне объяснить как собрать все данные документа с помощью метаданных?
|
|||
1
zak555
18.06.16
✎
15:59
|
так в 17 ответ
|
|||
2
Nikname232
18.06.16
✎
16:06
|
(1) Да, я это изучал, вот в задаче имеется пункт, что нельзя использовать xml. А про метаданные в 17 ответе нет ни слова.
|
|||
3
Nikname232
18.06.16
✎
16:47
|
Не зная на сколько правильно я делаю вот что получается
: &НаСервере Процедура РаботаСМетаданными (Документ) МетаданныеО = Метаданные.Документы; Объект1 = ДОкумент.Ссылка.Метаданные(); СП = Новый Структура(); Текст = ""; Для Каждого реквизит ИЗ объект1.реквизиты Цикл СП.Вставить(Реквизит.Имя); ТТТ = ""; КонецЦикла; Для каждого Элемент Из СП Цикл ТТТ = ТТТ + Элемент.Ключ + " = " + ДОкумент.Ссылка[Элемент.Ключ] + Символы.ПС; КонецЦикла; КонецПроцедуры Теперь вопрос такой, а как свойства формы в текст записать? |
|||
4
Garykom
гуру
18.06.16
✎
16:54
|
Чем то это напоминает куяк, куяк и за 4 дня в дамки.
|
|||
5
Garykom
гуру
18.06.16
✎
16:56
|
ТС для начала пойми что "информация документа" которую хотишь "записать в файл" не линейная текстовая. А объектно/иерархическая.
К примеру при загрузке документа выясняется что организации или контрагента или чего другого (реквизит шапки или ТЧ ссылочного типа) нету в базу куда загружаем из файла. Что будем делать? ЗЫ Правильный ответ "Изучать КД2" |
|||
6
zak555
18.06.16
✎
17:01
|
(2) чо можно использовать ?
|
|||
7
Nikname232
18.06.16
✎
17:02
|
(6) нужно в txt
|
|||
8
Garykom
гуру
18.06.16
✎
17:03
|
(7) Не подскажешь что изменится если расширение .xml поменять на .txt ?
|
|||
9
Garykom
гуру
18.06.16
✎
17:04
|
(8)+ Не знать что XML это обычный текстовый файл... мдя...
|
|||
10
Nikname232
18.06.16
✎
17:05
|
(9) это я знаю, но сама задача заключается в том, чтобы в txt записать.
|
|||
11
Garykom
гуру
18.06.16
✎
17:07
|
(10) Берешь XML, кодируешь Base64 и записывай куда хочешь, хоть в txt.
|
|||
12
Garykom
гуру
18.06.16
✎
17:07
|
(11)+ А против JSON нет предубеждений?
|
|||
13
Nikname232
18.06.16
✎
17:09
|
(12) Нет. про это ни слова.
(11) Ключевое слово "Берешь xml" - нельзя брать :D |
|||
14
Garykom
гуру
18.06.16
✎
17:12
|
Изучил ветку по задаче и понял смысл задания.
Кароче ТС придумывай свою сериализацию с любым способом разметки. Технически можно и XML но все врукопашную без готовых парсеров/сериализаторов. Т.е. через метаданные обходишь все реквизиты документа, если реквизит (причем не пустой) это ссылка то рекурсия и обход реквизитов объекта что по ссылке. Далее все это сам сериализуешь в текст и пишешь. При чтении все назад причем нужно предусмотреть как просто нахождение в базе существующих объектов ссылочных, так и их создание/обновление. |
|||
15
Nikname232
18.06.16
✎
17:12
|
Задача в том, чтобы записать с одной конфигурации документ в txt, и этот txt файл выгрузить в другую конфигурацию, чтобы они были одинаковые на вид.
|
|||
16
Nikname232
18.06.16
✎
17:14
|
(15) И проводились
|
|||
17
Garykom
гуру
18.06.16
✎
17:15
|
(15) Мы то поняли, а сам то понял сложность задачи? Честно скажу без опыта программирования до этого и/или знания других языков.
Новичек полный в 1С не может решить эту задачу самостоятельно в разумные сроки. Разумный срок для спеца на такую задачу не более 10 часов. Для новичка почти нереально уложиться в месяц. |
|||
18
Garykom
гуру
18.06.16
✎
17:16
|
(16) Не смеши, проведение это простейшее.
Там не проведение нуна кстати, а статус документа - 2 флага "пометка удаления" и "проведен" сохранять и восстанавливать. |
|||
19
Garykom
гуру
18.06.16
✎
17:17
|
(18)+ Т.е. как понял полный перенос документа (про прочие объекты нет данных) за исключением его "Номер" который следующий порядковый из базы.
|
|||
20
Nikname232
18.06.16
✎
17:21
|
(19) а я наивно полагал, что есть вариант записать все данные с документа в том числе и свойства формы и залить в другую базу )) Не так то все просто походу.
|
|||
21
Garykom
гуру
18.06.16
✎
17:24
|
(20) ХеХе ))
|
|||
22
RomanYS
18.06.16
✎
17:24
|
(15) ЗначениеВФайл - ЗначениеИзФайла, для одинаковых конфигураций подойдет
|
|||
23
Nikname232
18.06.16
✎
17:26
|
(22) Да, знаю, но к сожаленью тоже нельзя.
|
|||
24
Рэйв
18.06.16
✎
17:29
|
(23)Это почему еще?
|
|||
25
RomanYS
18.06.16
✎
17:31
|
(24) Ну нельзя же просто взять... и решить ). Походу нельзя использовать средства, которые могут привести к решению задачи ))).
|
|||
26
Nikname232
18.06.16
✎
17:33
|
(25) и смех и грех ))
|
|||
27
Garykom
гуру
18.06.16
✎
17:34
|
(24) Читы запрещены.
|
|||
28
Garykom
гуру
18.06.16
✎
17:35
|
(27)+ Но паравоз разрешен как и донат ))
|
|||
29
Рэйв
18.06.16
✎
17:42
|
Как все сложно то :-)...
|
|||
30
Nikname232
18.06.16
✎
17:43
|
(29) Легких путей не ищем
|
|||
31
Рэйв
18.06.16
✎
17:44
|
(30)Я заметил.
|
|||
32
Nikname232
18.06.16
✎
17:44
|
Вот нашел еще такую тему, правда давняя, но задача та же v8: v8: Перезагрузка документа. УТ
|
|||
33
Garykom
гуру
18.06.16
✎
17:46
|
(32) Те еще рано темы или готовый код искать.
Сначала на бумажке/в екселе распиши по шагам что и как делать нуна. Выложи сюды те подскажут что забыл )) А вот когда план будет уже можно его курить, искать как каждый шаг/пункт выполнить. |
|||
34
Nikname232
18.06.16
✎
17:51
|
(33) Дельный совет.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |