Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
11 Дек 2017, 20:20
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Обращение к таблице из под модуля документа  (Прочитано 5362 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Feramount

  • *
  • Сообщений: 9
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-10-26
  • Сайт: 
  • Профессия: Программист 7.7
Пытаюсь связать модуль документа и таблицу которая храниться в этом документе как шаблон накладной посредством вот этого кода:
Процедура ОбработкаПроведения() 
ДокументПродажаТоваровТаблицаНакладная = СоздатьОбъект("Таблица");
ДокументПродажаТоваров = СоздатьОбъект("Документ.ПродажаТоваров");
ДокументПродажаТоваровТаблицаНакладная.ИсходнаяТаблица("Накладная");
НомерНакладной = ДокументПродажаТоваров.Код;
ДатаНакладной = ДокументПродажаТоваров.ДатаДок;
ДокументПродажаТоваровТаблицаНакладная.ВывестиСекцию("Шапка");
ДокументПродажаТоваровТаблицаНакладная.Показать();
КонецПроцедуры
Ругается что не может найти исходную таблицу "Накладную". Как правильно обращаться в документе к таблице?
1С v 7.7.


Оффлайн Mitay_D

  • **
  • Сообщений: 85
  • РЕПУТАЦИЯ: 14
  • КПД: 16%
  • Регистрация: 2011-02-02
  • Сайт: 
  • Профессия: Программист 7.7
а "Накладная" это табличная часть документа? если надо посмотреть табличную часть документа, то
1. ВыгрузитьТабличнуюЧасть()
Синтаксис:
ВыгрузитьТабличнуюЧасть(<ТаблЗнач>,<Колонки>)
Назначение:
Выгрузить многострочную часть документа в таблицу значений.
Параметры:
<ТаблЗнач> - значение типа ''Таблица значений'' (или ''СписокЗначений'', если выгружается только одна колонка), куда выгружается многострочная часть документа. Колонки совмещаются по идентификаторам.
<Колонки> - необязательный параметр. Список колонок через запятую. Данный параметр указывает, какие колонки выгружать; если не указано, то все. Для номера строки документа создается отдельная колонка с идентификатором ''НомерСтрокиДокумента''. При задании, какие колонки выгружать, для выгрузки номера строки надо указать колонку ''НомерСтроки''.
2.    ВыбратьСтроки();
   Пока ПолучитьСтроку() = 1 Цикл
        .....
        .....
         КонецЦикла;


Вот два варианта решения. первый -  выгрузить в таблицу значений и потом в таблице перебирать или 2-й способ. напрямую обратится к табличной части документа

Оффлайн Feramount

  • *
  • Сообщений: 9
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-10-26
  • Сайт: 
  • Профессия: Программист 7.7
Вот два варианта решения. первый -  выгрузить в таблицу значений и потом в таблице перебирать или 2-й способ. напрямую обратится к табличной части документа
Нет, это не табличная часть документа. Это таблица которая в виде Excel идет.

Оффлайн Herby

  • *****
  • Сообщений: 936
  • РЕПУТАЦИЯ: 164
  • КПД: 18%
  • Регистрация: 2010-08-31
  • Сайт: 
  • Профессия: Программист 7.7
ДокументПродажаТоваровТаблицаНакладная.ИсходнаяТаблица("Накладная");

Название таблицы должно совпадать с вашим названием в кавычках  в методе ИсходнаяТаблица.

Скорее всего, документ не содержит таблицу с названием "Накладная"
Добавлено: 26 Окт 2012, 17:16

А вообще глупое решение. Для чего в обработке проведения выводить печатную форму?
Процедура ОбработкаПроведения() служит для определенных целей, и не зря она размещается в отдельном модуле.
Старайтесь не добавлять в эту процедуру ничего лишнего.  Эта процедура блокирует информационную базу, и чем дольше она выполняется,
тем больше висит блокировка, т.е. пока проводится этот документ, другие пользователи не могут сохранить/провести изменения в базе. Поэтому вывод печатных форм, а также какие-либо промежуточные действия (если это возможно) следует выполнять до проведения или после...


Оффлайн Feramount

  • *
  • Сообщений: 9
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-10-26
  • Сайт: 
  • Профессия: Программист 7.7
ДокументПродажаТоваровТаблицаНакладная.ИсходнаяТаблица("Накладная");

Название таблицы должно совпадать с вашим названием в кавычках  в методе ИсходнаяТаблица.

Скорее всего, документ не содержит таблицу с названием "Накладная"
Добавлено: 26 Окт 2012, 17:16

А вообще глупое решение. Для чего в обработке проведения выводить печатную форму?
Процедура ОбработкаПроведения() служит для определенных целей, и не зря она размещается в отдельном модуле.
Старайтесь не добавлять в эту процедуру ничего лишнего.  Эта процедура блокирует информационную базу, и чем дольше она выполняется,
тем больше висит блокировка, т.е. пока проводится этот документ, другие пользователи не могут сохранить/провести изменения в базе. Поэтому вывод печатных форм, а также какие-либо промежуточные действия (если это возможно) следует выполнять до проведения или после...


Ну я тоже подумал что это глупо, и решил проблему тем что вынес в модуль формы отдельную процедуру для генерации накладной


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
163 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
56 Сообщений
alex0402
46 Сообщений
andron81_81
44 Сообщений
AIFrame
36 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
Golickoff Golickoff
28 Сообщений
BuhRust
28 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 348
  • Точка Скрытых: 0
  • Точка Пользователей: 4
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal