|
1с Составление договора
|
|||
---|---|---|---|
#18+
1с 7.7 Сразу говорю строго не судите, возможно вопрос очень глупый, но всеж "1с" запускаю всего второй раз :) Надо составить договор с клиентами, где будут автоматически заполнянся поля с их данными (телефон, паспорт ...) и не только. Договор составляется с шаблона. (doc) Допустим в шаблоне написано: Код: plaintext 1. 2. 3. 4.
Выглядеть уже в готовом виде через 1с это будет примерно вот так: Код: plaintext 1. 2. 3. 4.
Допустим мне надо вывести в документе его имя я пишу в шаблоне: <Пациенты.Имя> Уже как только не пробовал "0". Вопрос: как мне узнать название этих полей(<Фирма>, <Пациент> ....) ? Я так понимаю они находятся в режиме "Конфигирутора", но где именно их можно посмотреть так и не нашел. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2008, 17:37 |
|
1с Составление договора
|
|||
---|---|---|---|
#18+
Надо пользоваться объектом Метаданные. Вот так выглядит обход реквизитов объекта (документа): Код: plaintext 1. 2. 3. 4. 5.
Номер = Номер документа = "125" Дата = Дата = "01.01.2008" Контрагент = Контрагент = "Ромашка" СуммаПоДокументу = Сумма по документу = "452.50" Тоже самое можно сделать и со справочником. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2008, 17:56 |
|
1с Составление договора
|
|||
---|---|---|---|
#18+
я так понял, это надо прописывать в глобальном модуле ? А там как ? Без разници где я буду писать год (я имею ввиду позицию, в конце, середине). ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2008, 18:40 |
|
1с Составление договора
|
|||
---|---|---|---|
#18+
Есть некоторые работающие поля т.е. при вводе в шаблоне: <СтрокаВрача1>, <Пациент> ... (методом тыка). Искал эти слова в "Глобальном модуле" ничего нету, что-то похожее на выше приведенный код тоже нету. Можно ли брать значения без написание подобного кода, ведь в предыдущих приведенных значениях он не требовался. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2008, 18:55 |
|
1с Составление договора
|
|||
---|---|---|---|
#18+
Т.е. если я вишу в шаблоне: <СтрокаВрача1>. То уже в сформированном документе он выдает мне нужное значение. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2008, 18:56 |
|
1с Составление договора
|
|||
---|---|---|---|
#18+
Так, понятно. Видимо действительно "1С запускаю второй раз". Код экспорта в Word можно писать где угодно. Просто надо подумать, как это лучше организовать. Можно оформить прямо в модуле конкретного документа, можно сделать отдельную обработку, но я бы посоветовал вынести всё в общий модуль и оформить все это хозяйство в виде функции, например: ВыгрузкаОбъектаВШаблонWord(СсылкаНаОбъект) Экспорт Алгоритм функции такой: Сначала создаем COM-объект Word. Word = Новый COMОбъект("Word.Application"); Потом организуем цикл, который я уже описал. Внутри цикла организуем получение значений реквизитов конкретного документа и вызываем методы Word'a Find.Execute (см. справочник по VBA). Т.е. программа бежит по реквизитам документа, получает их значения и пытается найти соответствие имени реквизита имени параметра в шаблоне. Если находит, то происходит замена. Потом берется следующий реквизит и так далее. После завершения цикла записываем измененный шаблон через SaveAs(ИмяФайла) (cм справку по VBA). Схематично примерно так. Главный плюс - так можно выводить любой документ, не заботясь о его структуре. Если нужны еще и табличные части, то придется попотеть еще. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2008, 19:05 |
|
1с Составление договора
|
|||
---|---|---|---|
#18+
BHy4okЕсть некоторые работающие поля т.е. при вводе в шаблоне: <СтрокаВрача1>, <Пациент> ... (методом тыка). Искал эти слова в "Глобальном модуле" ничего нету, что-то похожее на выше приведенный код тоже нету. Можно ли брать значения без написание подобного кода, ведь в предыдущих приведенных значениях он не требовался. Стоп. Так код подстановки уже написан или нет? Если он чего-то там формирует, то значит написан. Тогда вариантов два: 1. Параметры с угловыми скобками - это просто имена реквизитов. Искать их надо не в коде, а слева, в панели "Конфигурация". Нужно найти необходимый документ, раскрыть его и посмотреть ветку "Реквизиты". По идее, параметр в шаблоне равен имени реквизита. Т.е. Дата = <Дата>, Контрагент = <Контрагент> и т.д. 2. Соответствие параметров для конкретного документа хранится в каком-то справочнике. Нужно найти этот справочник, открыть его в пользовательском режиме (не из Конфигуратора) и посмотреть на его содержимое. 3. Тоже самое, что и п.2, только вместо справочника нужно глянуть в регистры сведений. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2008, 19:11 |
|
1с Составление договора
|
|||
---|---|---|---|
#18+
Да код уже написан. Мне надо отредактировать сам шаблон, спс за подсказку. Буду искать. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2008, 19:28 |
|
1с Составление договора
|
|||
---|---|---|---|
#18+
Все так мутно :) Если мне надо договор по пациентам значит это: справочники - пациенты. Захожу в ветку "документы", нахожу там "договор". Там две колонки реквизитов: "Реквизиты шапки", "Реквизиты табличной части". Вторая вообще пустая. Из первой колонки шаблон реагирует только на "Пациент", все. Пытаюсь добавить туда-же "Имя"(чтобы в шаблоне оно распознавалось) Пишу: индефикатор - Имя. Синоним - Имя. Тип значения - выбираю "Справочник пациенты". НОЛЬ ! В самом справочнике поле "Имя" есть. Теперь я вообще запустался :( ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2008, 20:02 |
|
1с Составление договора
|
|||
---|---|---|---|
#18+
Главное не отчаиваться. Ничего там сложного не должно быть. Надо найти код экспорт в Word. Ключевое выражение для глобального поиска по конфигурации - "Word.Application". Надо посмотреть, откуда берутся данные для подстановки и всё. Но для этого надо найти кусок кода, который за это отвечает. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2008, 21:11 |
|
1с Составление договора
|
|||
---|---|---|---|
#18+
В глобальном модуле по ключу "Word.Application" ничего нету. Вбивал просто "Word" тоже ничего. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2008, 07:00 |
|
1с Составление договора
|
|||
---|---|---|---|
#18+
BHy4okВ глобальном модуле по ключу "Word.Application" ничего нету. Вбивал просто "Word" тоже ничего.Надо через глобальный поиск работать. Отметить галочкой "Модули" и искать. Тогда поиск просмотрит все модули в системе, не только общие, но и модули форм, документов и т.д. Т.е. вообще весь код, какой есть в конфигурации. Скорее всего, это где-то в другом месте сидит. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2008, 12:16 |
|
|
start [/forum/topic.php?fid=28&msg=35407269&tid=1524635]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
69ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
others: | 17ms |
total: | 195ms |
0 / 0 |