Перейти к содержимому


Услуги программиста 1С
Профессиональные программисты 1С.
Весь комплекс услуг сопровождения 1С.

Курсы 1С
Бухгалтерам, менеджерам
и программистам.
Бесплатно!
Живое индивидуальное обучение по 1С.

Нужна помощь)


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 7

#1   Бестия

Бестия

      Сержант

    • Пользователи
    • Pip
    • Сообщений: 28
    • Регистрация: 04-March 09
    • Откуда: , ,

Отправлено 14 September 2010 - 14:34

Процедура ОбработкаЯчейкиТаблицы(расшифровка,флаг=0,Табл,адрес)
Флаг = 0; ..........
.............
.............
Таб.ТолькоПросмотр(1);
Таб.Опции(0, 0, 0, 0, "Печать", "Окно");
Таб.ОбластьПечати(1, 2, 1, 1);
Таб.Показать();
конецпроцедуры

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

  • 0

#2   Zaval

Zaval

      Генерал-полковник

    • Пользователи
    • PipPipPipPipPipPipPipPipPip
    • Сообщений: 1109
    • Регистрация: 26-December 07
    • Откуда: , ,

Отправлено 14 September 2010 - 15:39

Quote (Бестия)
по моему срабатывает уже процедура из глобальника

Проверьте в отладчике

  • 0
Киев

#3   Бестия

Бестия

      Сержант

    • Пользователи
    • Pip
    • Сообщений: 28
    • Регистрация: 04-March 09
    • Откуда: , ,

Отправлено 14 September 2010 - 15:57

Проверила в отладчике, все-таки локальная срабатывает процедура, тогда не понятно почему она не работает?

Процедура ОбработкаЯчейкиТаблицы(расшифровка,флаг=0,Табл,адрес)
Флаг = 0;
ТаблицаДвижений=СоздатьОбъект("ТаблицаЗначений");
ТаблицаДвижений.НоваяКолонка("Операция", "Строка", 50,, "Содержание операции",50);
ТаблицаДвижений.НоваяКолонка("Документ", "Документ");
ТаблицаДвижений.НоваяКолонка("ПоСтрокам", "Документ");
ТаблицаДвижений.НоваяКолонка("Договор", "Документ");
//ТаблицаДвижений.НоваяКолонка("Объект", "Справочник");
ТаблицаДвижений.НоваяКолонка("Объект", "Строка", 64);
ТаблицаДвижений.НоваяКолонка("Дебет", "Число", 12, 2);
ТаблицаДвижений.НоваяКолонка("Кредит", "Число", 12, 2);
ТаблицаДвижений.НоваяКолонка("СуммаНал","Число",12,2,"Налоговые");
ТаблицаДвижений.НоваяКолонка("СуммаОбъект", "Число", 12, 2);
ТаблицаДвижений.НоваяКолонка("Заказ", "Документ");
ТаблицаДвижений.НоваяКолонка("Валюта", "Справочник.Валюта");
ТаблицаДвижений.НоваяКолонка("ВалСумма", "Число", 12, 2);
ТаблицаДвижений.НоваяКолонка("Признак2", "Число", 2,0);
ТаблицаДвижений.НоваяКолонка("Дата","Дата");
ТаблицаДвижений.ВидимостьКолонки("Заказ, Валюта, ВалСумма,Дата", 0);
Сообщить("Расшифровка строки "+ТекущееВремя());

Если КонДата < НачДата Тогда
Предупреждение("Неверно задан период сверки взаиморасчетов.", "!");
Возврат;
КонецЕсли;

При первом прохождении нижеуказанные переменные определяются, а вот при втором нажатии на ячейку переменная Договор, пустая, соотвественно и Контр не определяется, поэтому и последующие ошибки, а как же исправить?

Договор=Таб.ЗначениеТекущейЯчейки();
Контр=Договор.Контрагент;
Сообщить(Договор);
Сообщить(Контр);

Почему при втором нажатии на ячейку не определяются переменные?

Расшифровка строки 17:02:19
Контр=Договор.Контрагент;
{581)}: Значение не представляет агрегатный объект (Контрагент)

Или подскажите тогда, как из печатной таблицы получить значение и передать его в модуль дальше?

  • 0

#4   Zaval

Zaval

      Генерал-полковник

    • Пользователи
    • PipPipPipPipPipPipPipPipPip
    • Сообщений: 1109
    • Регистрация: 26-December 07
    • Откуда: , ,

Отправлено 14 September 2010 - 16:16

Договор=Таб.ЗначениеТекущейЯчейки();

Вот здесь остановите.... похоже, не Договор в этой ячейке, еще проверьте, что есть Таб при втором нажатии.

Да, "первое нажатие" - после открытия или после формирования основного отчета? Там где-то выполняется нечто, чего не хватает при повторном клике. )

  • 0
Киев

#5   Uanr81

Uanr81

      Лейтенант

    • Пользователи
    • PipPip
    • Сообщений: 45
    • Регистрация: 09-June 10
    • Откуда:Краматорск , Донецкая Область , Украина

Отправлено 14 September 2010 - 16:28

Скинь в личку весь модуль процедуры.

Добавлено (14.09.2010, 17:28)
---------------------------------------------
Мабудь уже не нужна

  • 0

#6   Бестия

Бестия

      Сержант

    • Пользователи
    • Pip
    • Сообщений: 28
    • Регистрация: 04-March 09
    • Откуда: , ,

Отправлено 14 September 2010 - 16:43

Zaval, При втором нажатии Таб вообще ничего не определяет, Таб.ЗначениеТекущейЯчейки()= вот тут пусто в отладчике.
Есть отчет, он формируется и показывается печатная форма, в печатной форме я пытаюсь нажать на любой из договоров (ячеку) ПЕРВОЕ нажатие, после которого срабатывает процедура обработкаячейкитаблицы() , после чего открывается еще один отчетик с детальной инфо по договору, т.е. когда я нажимаю на след. строку и хочу получить расшифровку по договору, ВТОРОЕ нажатие, обработка уже не срабатывает((((

Добавлено (14.09.2010, 17:43)
---------------------------------------------
Uanr81, почему не нужно?

  • 0

#7   Zaval

Zaval

      Генерал-полковник

    • Пользователи
    • PipPipPipPipPipPipPipPipPip
    • Сообщений: 1109
    • Регистрация: 26-December 07
    • Откуда: , ,

Отправлено 14 September 2010 - 16:48

Скорее всего, имя Таб используется при формировании расшифровки и теряет нужное значение.
  • 0
Киев

#8   Бестия

Бестия

      Сержант

    • Пользователи
    • Pip
    • Сообщений: 28
    • Регистрация: 04-March 09
    • Откуда: , ,

Отправлено 15 September 2010 - 08:35

А что делать?

Добавлено (15.09.2010, 09:35)
---------------------------------------------
Всем спасибо, разобралась)))

  • 0



Похожие темы

  Название темы Автор Статистика Последнее сообщение



Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных