Имя: Пароль:
1C
1С v8
Поле объекта не обнаружено (Ссылка) .
,
0 uuu_ggg
 
11.07.12
18:04
нужно изменить печатную форму М-11 в документе требование-накладная.делаю внешнюю.Скопировала Функция ПечатьМ11 из модуля объекта, добавила реквизит СсылкаНаОбъект, поставила её у реквизитов типа организация,подключила и пишет ошибку
Поле объекта не обнаружено (Ссылка) .
вроде и параметра Ссылка нет такого.
Подскажите что может быть?
1 uuu_ggg
 
11.07.12
18:05
вот код


Функция Печать() Экспорт

   ТабДокумент = Новый ТабличныйДокумент;
   //ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ТребованиеНакладная_М11";

   Макет = ПолучитьОбщийМакет("М11");

   Область = Макет.ПолучитьОбласть("Шапка");
   Область.Параметры.Заголовок                = "ТРЕБОВАНИЕ-НАКЛАДНАЯ № " + Строка(СсылкаНаОбъект.Номер);
   Область.Параметры.КодОКПО                  = СсылкаНаОбъект.Организация.КодПоОКПО;
   СведенияОбОрганизации    = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(СсылкаНаОбъект.Организация, СсылкаНаОбъект.Дата);
   ПредставлениеОрганизации = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОбОрганизации, "НаименованиеДляПечатныхФорм,");
   Область.Параметры.ПредставлениеОрганизации = ПредставлениеОрганизации;
   Область.Параметры.ДатаСоставления          = Формат(СсылкаНаОбъект.Дата, "ДФ=dd.MM.yy");
   Область.Параметры.Склад                    = СсылкаНаОбъект.Склад;
   Область.Параметры.КоррСчет                 = СсылкаНаОбъект.СчетЗатрат.Код;
   Область.Параметры.ПредставлениеПодразделения = СсылкаНаОбъект.ПодразделениеЗатрат.Наименование;
   ТабДокумент.Вывести(Область);

   СтруктураПолей = Новый Структура;
   СтруктураПолей.Вставить("Счет",                         "Счет");
   СтруктураПолей.Вставить("Материал",                     "Номенклатура");
   СтруктураПолей.Вставить("МатериалНаименование",         "Номенклатура.НаименованиеПолное");
   
   Если Константы.ДополнительнаяКолонкаПечатныхФормДокументов.Получить() = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул Тогда
       СтруктураПолей.Вставить("НоменклатурныйНомер",          "Номенклатура.Артикул");
   Иначе
       СтруктураПолей.Вставить("НоменклатурныйНомер",          "Номенклатура.Код");
   КонецЕсли;
   
   СтруктураПолей.Вставить("ЕдиницаИзмеренияНаименование", "Номенклатура.БазоваяЕдиницаИзмерения");
   СтруктураПолей.Вставить("ЕдиницаИзмеренияКод",          "Номенклатура.БазоваяЕдиницаИзмерения.Код");
   СтруктураПолей.Вставить("Количество",                   "Количество");
                                         
   Область = Макет.ПолучитьОбласть("Строка");
   
   ТаблицаМатериалов = ОбщегоНазначения.СформироватьЗапросПоТабличнойЧасти(ЭтотОбъект, "Материалы", СтруктураПолей).Выгрузить();
   ТаблицаМатериалов.Свернуть("Материал, МатериалНаименование, Счет, НоменклатурныйНомер,ЕдиницаИзмеренияКод,ЕдиницаИзмеренияНаименование", "Количество");

   // Поиск сумм списания активов для заполнения Цены и Суммы
   ТаблицаСуммСписания = БухгалтерскийУчет.ПолучитьСуммуСписанияАктивов(ЭтотОБъект);
   
   Для Каждого СтрокаТЧ Из ТаблицаМатериалов Цикл

       Область.Параметры.Заполнить(СтрокаТЧ);
       СтрокаСуммСписания =  ТаблицаСуммСписания.Найти(СтрокаТЧ.Материал, "Номенклатура");
       Если СтрокаСуммСписания = Неопределено Тогда
            Область.Параметры.Цена = 0;
            Область.Параметры.Сумма = 0;
        Иначе
            Цена = ?(СтрокаСуммСписания.Количество = 0, 0, СтрокаСуммСписания.Сумма / СтрокаСуммСписания.Количество);
            Область.Параметры.Цена  = Цена;
            Область.Параметры.Сумма = Цена * СтрокаТЧ.Количество;
        КонецЕсли;
       ТабДокумент.Вывести(Область);

   КонецЦикла;
   
   ТаблицаМатериалов = ОбщегоНазначения.СформироватьЗапросПоТабличнойЧасти(ЭтотОбъект, "МатериалыЗаказчика", СтруктураПолей).Выгрузить();

   Для Каждого СтрокаТЧ Из ТаблицаМатериалов Цикл

       Область.Параметры.Заполнить(СтрокаТЧ);
       СтрокаСуммСписания =  ТаблицаСуммСписания.Найти(СтрокаТЧ.Материал, "Номенклатура");
       Если СтрокаСуммСписания = Неопределено Тогда
            Область.Параметры.Цена = 0;
            Область.Параметры.Сумма = 0;
        Иначе
            Цена = ?(СтрокаСуммСписания.Количество = 0, 0, СтрокаСуммСписания.Сумма / СтрокаСуммСписания.Количество);
            Область.Параметры.Цена  = Цена;
            Область.Параметры.Сумма = Цена * СтрокаТЧ.Количество;
        КонецЕсли;
       ТабДокумент.Вывести(Область);

   КонецЦикла;

   Область = Макет.ПолучитьОбласть("Подвал");

   ТабДокумент.Вывести(Область);

   Возврат ТабДокумент;

КонецФункции // ПечатьМ11()
2 Шапокляк
 
11.07.12
18:07
Ну так и напиши вместо Ссылка СсылкаНаОбъект!
3 uuu_ggg
 
11.07.12
18:09
так я не вижу в упор такого значения-Ссылка
4 hhhh
 
11.07.12
18:10
(0) ЭтотОбъект - это у вас в порядке бреда?
5 Шапокляк
 
11.07.12
18:11
Сорри, не дочитала.
ТаблицаСуммСписания = БухгалтерскийУчет.ПолучитьСуммуСписанияАктивов(ЭтотОБъект);
Все дело в этом, наверно. Надо попробовать заменить ЭтотОбъект на СсылкаНаОбъект.
6 uuu_ggg
 
11.07.12
18:17
наверно везде ЭтотОбъект  надо заменить на СсылкаНаОбъект.
Спасибо,сейчас попробую
7 uuu_ggg
 
12.07.12
09:13
а еще подскажите пож-та.
У меня есть параметр Итого -это число, (с копеками)
как мне из этого числа выделить копейки? (то что после запятой)
8 butterbean
 
12.07.12
09:15
(7) Итого%1
9 Zmich
 
12.07.12
09:16
(7) Итого - Цел(Итого)
10 uuu_ggg
 
12.07.12
09:20
блин а если у меня о копеек ,он мне пишет  0,а надо 00..))))
11 uuu_ggg
 
12.07.12
09:21
ну то есть сумма допустим 25000,00
12 Zmich
 
12.07.12
09:22
(10). Формат(Итого, "ЧЦ=15; ЧДЦ=2")
13 uuu_ggg
 
12.07.12
09:41
ну то есть

Копейки = Формат (Итого,"ЧЦ=15; ЧДЦ=2") - Цел(Итого);
14 uuu_ggg
 
12.07.12
09:41
все равно один нулик(
15 Zmich
 
12.07.12
09:48
(14). Копейки = Формат (Итого - Цел(Итого), "ЧЦ=15; ЧДЦ=2");

P.S. Программирование - это не твоё, без обид.
16 uuu_ggg
 
12.07.12
09:54
блин ,теперь он вообще ничего не выводит
17 KA-52
 
12.07.12
09:59
А макет-то создала? И какой там формат полей? Документ записан в БД?
18 uuu_ggg
 
12.07.12
10:04
при чем тут макет.)я в отладчике смотрю у меня получается так)
19 KA-52
 
12.07.12
10:40
То есть, ты имеешь число 2500,00, выделяешь копейки и получаешь 0?
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс