Имя: Пароль:
1C
1С v8
Контрагент(Партнер) создается неправильно.
,
0 AnDoro
 
09.09.21
08:46
Наименование контрагента созданного программно не идет в печатные формы. Отладчиком отображается пустая строка.
База УТ для Казахстана (УТ11)
&НаСервере
Функция СоздатьЗаказы(Наименование, ТелНомер, Адрес, Товар, Цена, Итого, Колво, СкладЛП, Ид) Экспорт
    
    Если СкладЛП = "LPP2" Тогда
        
        Склад = Справочники.Склады.НайтиПоНаименованию("Астана");
        
    Иначе
        
        Склад = Справочники.Склады.НайтиПоНаименованию("Офис");
        
    КонецЕсли;

    
    //НовыйПартнер = Справочники.Партнеры.СоздатьЭлемент();
    //НовыйПартнер.Наименование = "Розница";
    //НовыйПартнер.Записать();
    
    НовКонтрагент = Справочники.Партнеры.НайтиПоКоду(ТелНомер);
    
    Если Не НовКонтрагент.Пустая() Тогда
        
    НовКонтрагент = НовКонтрагент;
    
    Иначе
    
    НовКонтрагент = Справочники.Партнеры.СоздатьЭлемент();
    НовКонтрагент.Наименование = Наименование;
    НовКонтрагент.Клиент = Истина;
    //НовКонтрагент.Орг
    //НовКонтрагент.КонтактнаяИнформация. = ТелНомер;
    НовКонтрагент.ЮрФизЛицо = Перечисления.КомпанияЧастноеЛицо.ЧастноеЛицо;
    //НовКонтрагент.КонтактнаяИнформация.Город = Город;
    НовКонтрагент.ДатаРегистрации = ТекущаяДата();
    НовКонтрагент.НаименованиеПолное = Наименование;
    //НовКонтрагент.НомерТелефонаAPI = ТелНомер;
    //НовКонтрагент.АдресAPI = Адрес;
    НовКонтрагент.Код = ТелНомер;          
    
    НовКонтрагент.Комментарий = "Номер телефона: +7 " + ТелНомер + Символы.ПС + Символы.ПС + "Адрес: " + Адрес;
    //НовКонтрагент.
    //НовКонтрагент.ИмяПартнера
    
    
                                    
    Попытка
        НовКонтрагент.Записать();
        Сообщить("Контрагент создан: " + НовКонтрагент.Ссылка);
    Исключение
        Сообщить(ОписаниеОшибки());
    КонецПопытки;  
    
    КонецЕсли;
    
    НовЗаказ = Документы.ЗаказКлиента.СоздатьДокумент();
    НовЗаказ.Партнер = НовКонтрагент.Ссылка;
    НовЗаказ.ДатаСогласования = ТекущаяДата();
    НовЗаказ.АдресДоставки = Адрес;
    НовЗаказ.Дата = ТекущаяДата();
    НовЗаказ.Организация = Справочники.Организации.ОрганизацияПоУмолчанию();
    НовЗаказ.Склад = Склад;
    НовЗаказ.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.РеализацияКлиенту;
    НовЗаказ.БанковскийСчет = Справочники.БанковскиеСчетаОрганизаций.НайтиПоНаименованию(", Интернет Магазин");
    НовЗаказ.Статус = Перечисления.СтатусыЗаказовКлиентов.КОбеспечению;
    НовЗаказ.Приоритет = Справочники.Приоритеты.НайтиПоНаименованию("Средний");
    НовЗаказ.ПорядокОплаты = Перечисления.ПорядокОплатыПоСоглашениям.РасчетыВРубляхОплатаВРублях;
    НовЗаказ.НалогообложениеНДС = Перечисления.ТипыНалогообложенияНДС.ПродажаНеОблагаетсяНДС;
    НовЗаказ.Валюта = Справочники.Валюты.НайтиПоКоду(398);
    НовЗаказ.НомерПоДаннымКлиента = Ид;
    НовЗаказ.ДатаПоДаннымКлиента = ТекущаяДата();
    НовЗаказ.Номер = Ид;
    //НовЗаказ.СуммаПредоплатыДоОтгрузки = Итого;
    //НовЗаказ.Соглашение = Справочники.СоглашенияСКлиентами.НайтиПоНаименованию("Розница");
    
    
    НовОпл = НовЗаказ.ЭтапыГрафикаОплаты.Добавить();
    НовОпл.ВариантОплаты = Перечисления.ВариантыОплатыКлиентом.КредитПослеОтгрузки;
    НовОпл.ДатаПлатежа = ТекущаяДата();
    НовОпл.ПроцентПлатежа = 100;
    НовОпл.СуммаПлатежа = Итого;
    
    
    
    
    НовТов = НовЗаказ.Товары.Добавить();
    НовТов.Номенклатура = Справочники.Номенклатура.НайтиПоНаименованию(Товар);
    НовТов.КоличествоУпаковок = Число(Колво);
    НовТов.Количество = Число(Колво);
    НовТов.СтавкаНДС = Справочники.СтавкиНДС.БезНДС;
    НовТов.Сумма = Итого;
    НовТов.Цена = Цена;
    НовТов.ВидЦены = Справочники.ВидыЦен.НайтиПоНаименованию("Розничная");
    НовТов.ВариантОбеспечения = Перечисления.ВариантыОбеспечения.СоСклада;
    НовТов.ДатаОтгрузки = ТекущаяДата();
    НовТов.Склад = Склад;
    НовТов.СуммаСНДС = Итого;
    
    
    Чек = Ложь;

    
    
    Попытка
        Попытка
        НовЗаказ.Записать(РежимЗаписиДокумента.Проведение);
        //НовЗаказ.    РежимЗаписиДокумента.Проведение
        Исключение
        //Сообщить(НовЗаказ.Ссылка + ": недостаточно товара на складе. Товар " + Товар + " выставлен к обеспечению.");    
        Чек = Истина;
        
        НовТов.ВариантОбеспечения = Перечисления.ВариантыОбеспечения.Требуется;
        
        НовЗаказ.Записать(РежимЗаписиДокумента.Проведение);    
        
        //Сообщить("Попытка не пытка!");
        КонецПопытки;
    
    Исключение
        Чек = Истина;
        //Сообщить(ОписаниеОшибки());
    КонецПопытки;
    
    
    Если Чек Тогда
        
    Возврат НовЗаказ.Ссылка;
        
    Иначе
        
    Возврат 0;
    
    КонецЕсли;

    
    //Для Каждого  Из  Цикл
    //    
    //КонецЦикла;
    

    
КонецФункции
1 Василий Алибабаевич
 
09.09.21
08:49
"НовКонтрагент = Справочники.Партнеры.НайтиПоКоду(ТелНомер);"
Этта - пять. Я считаю. В качестве кода телефонный номер?
2 Ненавижу 1С
 
гуру
09.09.21
08:51
Так где же создание и заполнение Контрагента (не Партнера)?
3 Галахад
 
гуру
09.09.21
08:51
Тоже прикольно:

Если Не НовКонтрагент.Пустая() Тогда
        
    НовКонтрагент = НовКонтрагент;
4 acht
 
09.09.21
09:01
Я давно подзревал, что Астана - это большой склад =)
5 Antony8x
 
09.09.21
09:07
НовЗаказ.Контрагент = ?
6 Kassern
 
09.09.21
09:35
(0) "СоздатьЗаказы(Наименование, ТелНомер, Адрес, Товар, Цена, Итого, Колво, СкладЛП, Ид)" не надо так, используй структуру параметров
7 Kassern
 
09.09.21
09:37
(0) так тоже не надо, НовКонтрагент = Справочники.Партнеры.СоздатьЭлемент();  у тебя тут объект партнеры а ты его контрагентом обзываешь
8 Kassern
 
09.09.21
09:40
(0) а где контрагент то?) У тебя лишь партнер указан.
9 AnDoro
 
09.09.21
10:57
(8)Мне по сути и нужен партнер, при создании партнера в справочнике контрагенты, появляется запись
10 AnDoro
 
09.09.21
10:58
(8)возможно я не прав и его нужно создать отдельно? Поправьте
11 Kassern
 
09.09.21
10:59
(10) ну так зайди в базу и глянь, создается ли у тебя контрагент, заполнен ли он в документе и т.д.
12 AnDoro
 
09.09.21
11:00
(10) Да и да, но при это при печати наименование пустое
13 Kassern
 
09.09.21
11:01
(12) идите от обратного, посмотрите откуда берутся данные для печати, тогда и поймете в чем дело и чего не хватает
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс