Имя: Пароль:
1C
 
Вывод параметров в печатную форму
,
0 sofa1234567890
 
12.01.22
13:23
Добрый день. Подскажите пожалуйста, как правильно будет вывести параметры. Если к примеру заполнен юридический адрес организации то выводить его в печатную форму, а если юридический адрес не заполнен то вывести к примеру фактический адрес?
1 Базис
 
naïve
12.01.22
13:24
Это программа средней школы. Вы были когда-нибудь в школе?
2 sofa1234567890
 
12.01.22
13:51
объясните детскому саду как это прописать пожалуйста
3 Иванов Иван Иваныч
 
12.01.22
13:54
(0) получаешь область (если есть), например:
ОбластьМакета = Макет.ПолучитьОбласть("МояОбласть")

потом присваиваешь параметрам в этой области значения, например:
Если заполнен юридический адрес Тогда
    ОбластьМакета.Параметры.АдресОрганизации = ЮридическийАдрес
Иначе
    ОбластьМакета.Параметры.АдресОрганизации = ФактическийАдрес
КонецЕсли

дальше сам, но гуглить рекомендую научиться
4 Иванов Иван Иваныч
 
12.01.22
13:55
(2) хотя раз Софа, значит дальше сама)
5 sofa1234567890
 
12.01.22
14:06
ОбластьМакета      = Макет.ПолучитьОбласть("Заголовок");
      телефон = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъекта(Стр.Организация,
                Справочники.ВидыКонтактнойИнформации.ТелефонОрганизации, ТекущаяДатаСеанса(), Истина);
    адрес = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъекта(Стр.Организация,
                Справочники.ВидыКонтактнойИнформации.ЮрАдресОрганизации, ТекущаяДатаСеанса(), Истина);
    адресесли = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъекта(Стр.Организация,
    Справочники.ВидыКонтактнойИнформации.ФактАдресОрганизации, ТекущаяДатаСеанса(), Истина);
    
    ОбластьМакета.Параметры.ТелефонКлиент=телефон;
    //ОбластьМакета.Параметры.Адрес=адрес;

   если  докум.документреализации=неопределено тогда
  ОбластьМакета.Параметры.документреализации=  Формат(текущаядата(), "ДФ='дд ММММ гггг'")+" г.";
  ОбластьМакета.Параметры.ТелефонКлиент="";
  ОбластьМакета.Параметры.номерзаказа="";    
  ОбластьМакета.Параметры.сумма=докум.суммадокумента;
ОбластьМакета.Параметры.Адрес="";
иначе  
  ОбластьМакета.Параметры.Адрес=адрес;
  ОбластьМакета.Параметры.документреализации=Формат(докум.документреализации.дата, "ДФ='дд ММММ гггг'")+" г.";    
  ОбластьМакета.Параметры.ТелефонКлиент=телефон;








То есть если к примеру значение адрес это юридический а значение адресесли это фактический, то как мне правильно будет прописать заполнение?
6 Иванов Иван Иваныч
 
12.01.22
14:17
(5) для начала советую научиться называть переменные внятно, а затем красиво писать код (с большими буквами и всё такое)
а во вторых, опираясь на более раннее сообщение это будет выглядеть примерно следующим образом:

если  докум.документреализации=неопределено тогда
  ОбластьМакета.Параметры.документреализации=  Формат(текущаядата(), "ДФ='дд ММММ гггг'")+" г.";
  ОбластьМакета.Параметры.ТелефонКлиент="";
  ОбластьМакета.Параметры.номерзаказа="";    
  ОбластьМакета.Параметры.сумма=докум.суммадокумента;
  Если адрес<>Неопредено Тогда
      ОбластьМакета.Параметры.Адрес=адрес;
  Иначе
      ОбластьМакета.Параметры.Адрес=адресесли;
  КонецЕсли;
иначе  
  ОбластьМакета.Параметры.документреализации=Формат(докум.документреализации.дата, "ДФ='дд ММММ гггг'")+" г.";    
  ОбластьМакета.Параметры.ТелефонКлиент=телефон;
конецесли;
7 sofa1234567890
 
12.01.22
14:34
к сожалению по адресу ничего не выводит


    
    если  докум.документреализации=неопределено тогда
  ОбластьМакета.Параметры.документреализации=  Формат(текущаядата(), "ДФ='дд ММММ гггг'")+" г.";
  ОбластьМакета.Параметры.ТелефонКлиент="";
  ОбластьМакета.Параметры.номерзаказа="";    
  ОбластьМакета.Параметры.сумма=докум.суммадокумента;
  Если адрес<>Неопределено Тогда
      ОбластьМакета.Параметры.Адрес=адрес;
  Иначе
      ОбластьМакета.Параметры.Адрес=адресесли;
  КонецЕсли;
8 Мультук
 
гуру
12.01.22
14:35
(0)

Это, вероятно, уже неизлечимо. RIP

докум.документреализации.дата
9 Иванов Иван Иваныч
 
12.01.22
14:39
(7) поставь в конфигураторе точку останова на строке , зайди в отладку, попробуй вывести макет на печать, посмотри данные переменных, сделай правильные выводы, при необходимости - поправь код
как это делается объяснит гугл
если будут конкретные вопросы - задавай, но желательно не по херне которая гуглится за пару секунд
10 Базис
 
naïve
12.01.22
14:43
Перестань писать код. Начни с чтения. В конфигураторе есть глобальный поиск, найди подходящий фрагмент и почитай его или потыкай в отладчик.
11 Иванов Иван Иваныч
 
12.01.22
14:47
(10) под кнопкой Администрирование есть две лупы, одна большая и у второй есть папочка на фоне, тебе нужна вторая
ну а там думаю разберешься)
12 Ryzeman
 
12.01.22
14:51
(8) может, человек только-только учится...

(7) 99.9% что ты пилишь какой-то отчёт на типовую на БСП.
Переведи курсор на КонтактнаяИнформацияОбъекта нажми F12, перейди в модуль и почитай что там написано.
когда возвращаешь ТолькоПредставление у тебя никогда не вернётся неопределено, а вот пустаястрока, которая и подставится - легко.

Но что б не мучать и "детскому саду", то:

Если ЗначениеЗаполнено(адрес) Тогда
      ОбластьМакета.Параметры.Адрес=адрес;
  Иначе
      ОбластьМакета.Параметры.Адрес=адресесли;
  КонецЕсли;
13 Vlaloplo
 
12.01.22
16:38
Судя по всему только начало программирования, как лучше написать код уже дали советы, от себя скажу почитать книгу "1С:Программирование для начинающих. Детям и родителям, менеджерам и руководителям. Разработка в системе "1С:Предприятие 8.3". Лучше потратить не много времени прочтения и потом уже хотя бы будет понимание, как гуглить вопросы, потому что практические все можно отыскать, а уж тем более на начальном этапе)
Ошибка? Это не ошибка, это системная функция.