и у меня на часах уже 0:05) я сейчас выложу Вам скрины справочников Прейскуранты и Тарифы, посмотрите пожалуйста завтра... мне бы до завтра разобраться с этим
и у меня на часах уже 0:05) я сейчас выложу Вам скрины справочников Прейскуранты и Тарифы, посмотрите пожалуйста завтра... мне бы до завтра разобраться с этим
"первый скрин - справочник Прейскуранты, в нем есть 5 справочников... второй скрин - это содержание первого справочника, третий скрин - содержание второго справочника, и четвертый скрин - содержание пятого справочника... наименования прцедур должны выводиться в таблицу не из одного справочника, а из всех пяти (в зависимости от того, какие процедуры проходил пациентов). а у меня в таблице выводиться наименования процедур только первого справочника, так как он был указан в программе<br> <br>Процедура Сформировать()<br> СпрПрейскурант = СоздатьОбъект("Справочник.Прейскуранты"); <br> СпрПрейскурант.НайтиПоКоду(1); - если здесь указать 2, то следовательно в таблице будет выводиться наименования процедур из второго справочника<br> СпрТарифы = СоздатьОбъект("Справочник.Тарифы");<br> СпрТарифы.ИспользоватьВладельца(СпрПрейскурант.ТекущийЭлемент()); <br> <br>поэтому я добавила еще 5, таким образом<br> <br>СпрПрейскурант.НайтиПоКоду(1); <br>СпрПрейскурант.НайтиПоКоду(2); <br>СпрПрейскурант.НайтиПоКоду(3); <br>СпрПрейскурант.НайтиПоКоду(4);<br>СпрПрейскурант.НайтиПоКоду(5);<br> <br>Все говорят что это ничего мне не даст...<br>как правильно написать? <br>"
"Т.к. в Тарифах из разных Прейскурантов одинаковые коды, то в имена колонок надо еще добавить код прейскуранта.<br> <br> СпрПрейскурант = СоздатьОбъект("Справочник.Прейскуранты"); <br> СпрТарифы = СоздатьОбъект("Справочник.Тарифы"); <br> ДокСтатКарты = СоздатьОбъект("Документ.СтатКартаПациента");<br> Т = СоздатьОбъект("Таблица");<br> тзПроцедуры = СоздатьОбъект("ТаблицаЗначений");<br> тзПроцедуры.НоваяКолонка("Контрагент");<br> тзПроцедуры.НоваяКолонка("ФИО");<br> тзПроцедуры.НоваяКолонка("Цена", "Число");<br> СпрТарифы.ВыбратьЭлементы(0);<br> Пока СпрТарифы.ПолучитьЭлемент() = 1 Цикл<br> Колонка = "к" + СокрЛП(СпрТарифы.Владелец.Код) + СокрЛП(СпрТарифы.Код);<br> тзПроцедуры.НоваяКолонка(Колонка, "Число");<br> КонецЦикла;<br>. . .<br>(в 2-х местах):<br> тзПроцедуры.НоваяСтрока();<br> тзПроцедуры.ФИО = Док.Пациент;<br> тзПроцедуры.Контрагент = Док.Авиакомпания;<br> тзПроцедуры.Цена = Док.Цена;<br> КодПроцедуры = СокрЛП(Док.КодПроцедуры.Код);<br> КодПрейскуранта = СокрЛП(Док.КодПроцедуры.Владелец.Код);<br> //Сообщить(КодПроцедуры);<br> тзПроцедуры.УстановитьЗначение(тзПроцедуры.НомерСтроки, "к" + СокрЛП(КодПрейскуранта) + СокрЛП(КодПроцедуры), 1);<br>. . .<br> <br> Для а = 4 По тзПроцедуры.КоличествоКолонок() Цикл<br> КодПроцедуры = тзПроцедуры.ПолучитьПараметрыКолонки(а);<br> КодПрейскуранта = Сред(КодПроцедуры, 2, 1);<br> КодПроцедуры = Прав(КодПроцедуры, 6);<br> СпрПрейскурант.НайтиПоКоду(КодПрейскуранта);<br> СпрТарифы.ИспользоватьВладельца(СпрПрейскурант.ТекущийЭлемент());<br> СпрТарифы.НайтиПоКоду(КодПроцедуры);<br> КодПроцедуры = СпрТарифы.ПолноеНаименование;<br> <br> Т.ПрисоединитьСекцию("Шапка|Процедуры");<br> КонецЦикла;<br>. . .<br> <br> Для а = 4 По тзПроцедуры.КоличествоКолонок() Цикл<br> ИтогоПосещений = тзПроцедуры.Итог(а);<br> КодПроцедуры = тзПроцедуры.ПолучитьПараметрыКолонки(а);<br> КодПрейскуранта = Сред(КодПроцедуры, 2, 1);<br> КодПроцедуры = Прав(КодПроцедуры, 6);<br> СпрПрейскурант.НайтиПоКоду(КодПрейскуранта);<br> СпрТарифы.ИспользоватьВладельца(СпрПрейскурант.ТекущийЭлемент());<br> СпрТарифы.НайтиПоКоду(КодПроцедуры);<br> Цена =СпрТарифы.Цена.получить(НачДата); <br> сумма = Цена*ИтогоПосещений;<br> Т.ПрисоединитьСекцию("Подвал|Процедуры");<br> ИтогоПосещений=0;<br> Цена=0;<br> КонецЦикла;"
"Спасибо Вам большое Вьюн! но вот до сих пор ругается на эту строку<br>тзПроцедуры.УстановитьЗначение(тзПроцедуры.НомерСтроки, "к" + СокрЛП(КодПрейскуранта) + СокрЛП(КодПроцедуры), 1);<br>{Отчет.ОтчетПоАвиакомпаниям1.Форма.Модуль(59)}: Неверный идентификатор колон"
перепроверила вноыь все, оказалось я в одном месте пропустила строчку)) извиняюсь все правильно сформировалось, спасибо огромное! вот только наименования процедур у меня пустые, хотя количество, цена, все высчитывает правильно, только наименований нет, пустые колонки
А в макете в секции "Шапка|Процедуры" в самой шапке стоит выражение КодПроцедуры?
Прикрепляю скрин макета таблицы
"Попробовать вместо<br> КодПроцедуры = СпрТарифы.ПолноеНаименование;<br>поставить<br> КодПроцедуры = СпрТарифы.ТекущийЭлемент().ПолноеНаименование;<br>А по-хорошему, пройтись отладчиком и посмотреть, найден ли в этом месте СпрТарифы и что находится в ПолноеНаименование, может наименование находится в реквизите Наименование."
"Вьюн Вы просто гений! это я невнимательная не написала в одном месте строчку<br> Т.ВывестиСекцию("Шапка|ФИО");<br> Т.ПрисоединитьСекцию("Шапка|Контрагент");<br> Для а = 4 По тзПроцедуры.КоличествоКолонок() Цикл<br> КодПроцедуры = тзПроцедуры.ПолучитьПараметрыКолонки(а); <br> КодПрейскуранта = Сред(КодПроцедуры, 2, 1);<br> КодПроцедуры = Прав(КодПроцедуры, 6); <br> СпрПрейскурант.найтипокоду(КодПрейскуранта); - вот эту<br> СпрТарифы.ИспользоватьВладельца(СпрПрейскурант.ТекущийЭлемент());<br> <br> поэтому и наименования были пустые, все пересмотрела заново, сравнила и нашла)) спасибо Вам огромное! удачи Вам и всех благ! если бы не Вы вряд ли я бы закончила этот отчет"