Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Не заполняет поля в документе          
korish Подменю пользователя
сообщение 18.01.12, 15:19
Сообщение #1

Молчаливый
*
Группа: Пользователи
Сообщений: 7
Спасибо сказали: 0 раз
Рейтинг: 0

Есть документ "Заказ" (1С:Предприятие 8.2 тип.) форма

это картинка, но т.к. я не читаю правила - она удалена!

Делаю загрузку из базы данных MySQL вот таким кодом
Тиц

НовыйДокумент = Документы.Заказ.СоздатьДокумент();
НовыйДокумент.Контрагент = Справочники.Контрагенты.НайтиПоНаименованию("(ws) "+RS.Fields("lastname").Value + " " + RS.Fields("firstname").Value).ПолнНаименование;
НовыйДокумент.Дата = ТекущаяДата();
НовыйДокумент.Проведен = Истина;
НовыйДокумент.Примечание = RS.Fields("shipping_city").Value + ", " + RS.Fields("email").Value + ", " + RS.Fields("telephone").Value + ", " + RS.Fields("shipping_address_1").Value +", "+ RS.Fields("shipping_city").Value;
НовыйДокумент.Пользователь = ПользователиИнформационнойБазы.НайтиПоИмени("Веб_сайт").ПолноеИмя;
НовыйДокумент.КатегорияЦен = Справочники.КатегорииЦен.НайтиПоНаименованию(RS.Fields("price_type").Value).Наименование;
НовыйДокумент.Фирма = Справочники.Фирмы.Фирма.Наименование;                            
НовыйДокумент.Валюта = Справочники.Валюты.Гривня;
PS.MoveFirst();
Пока PS.EOF()=0 Цикл
        Если PS.Fields("add1C").Value = 0 Тогда
                ЭлементОбъект = НовыйДокумент.Товары.Добавить();
                ЭлементОбъект.Товар = Справочники.Номенклатура.НайтиПоКоду(PS.Fields("product_id").Value).Наименование;
                ЭлементОбъект.Количество = PS.Fields("quantity").Value;
                ЭлементОбъект.Цена = PS.Fields("price").Value;
                ЭлементОбъект.ЕдИзм = Справочники.Номенклатура.НайтиПоКоду(PS.Fields("product_id").Value).ЕдиницыИзмерения;
                ЭлементОбъект.Сумма = ЭлементОбъект.Количество * ЭлементОбъект.Цена;
                НовыйДокумент.СуммаДокумента =  ЭлементОбъект.Количество * ЭлементОбъект.Цена;
                НовыйДокумент.Записать();
        КонецЕсли;
КонецЦикла;


получаются пустые поля

это картинка, но т.к. я не читаю правила - она удалена!

У каждого поля табличного значения стоят ссылки на справочники (Номенклатура, Единицы измерения и т.д.), когда эти ссылки убрать то все отлично добавляет. Подскажите в чем я ошибся или что я не так делаю?
Причина редактирования: Правила, п. 11. Вофка.

Vofka Подменю пользователя
сообщение 18.01.12, 15:25
Сообщение #2

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 14050
Из: Киев
Спасибо сказали: 4612 раз
Рейтинг: 3748.8

Цитата
У каждого поля табличного значения стоят ссылки на справочники (Номенклатура, Единицы измерения и т.д.), когда эти ссылки убрать то все отлично добавляет.

Чего?

logist Подменю пользователя
сообщение 18.01.12, 16:08
Сообщение #3

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2539 раз
Рейтинг: 0

Вы присваиваете текст полям не текстового значения.
Тиц

НовыйДокумент = Документы.Заказ.СоздатьДокумент();
НовыйДокумент.СуммаДокумента =0; /// !!!
НовыйДокумент.Контрагент = Справочники.Контрагенты.НайтиПоНаименованию("(ws) "+RS.Fields("lastname").Value + " " + RS.Fields("firstname").Value).Ссылка; //!!!
НовыйДокумент.Дата = ТекущаяДата();
//НовыйДокумент.Проведен = Истина; ЭТО ВООБЩЕ ЧТО ТАКОЕ???
НовыйДокумент.Примечание = RS.Fields("shipping_city").Value + ", " + RS.Fields("email").Value + ", " + RS.Fields("telephone").Value + ", " + RS.Fields("shipping_address_1").Value +", "+ RS.Fields("shipping_city").Value;
НовыйДокумент.Пользователь = ПользователиИнформационнойБазы.НайтиПоИмени("Веб_сайт").Ссылка; //!!!
НовыйДокумент.КатегорияЦен = Справочники.КатегорииЦен.НайтиПоНаименованию(RS.Fields("price_type").Value).Ссылка; //!!!
НовыйДокумент.Фирма = Справочники.Фирмы.Фирма;    //!!!!
НовыйДокумент.Валюта = Справочники.Валюты.Гривня;
PS.MoveFirst();
Пока PS.EOF()=0 Цикл
        Если PS.Fields("add1C").Value = 0 Тогда
                ЭлементОбъект = НовыйДокумент.Товары.Добавить();
                ЭлементОбъект.Номенклатура = Справочники.Номенклатура.НайтиПоКоду(PS.Fields("product_id").Value).Ссылка; //!!!
                ЭлементОбъект.Количество = PS.Fields("quantity").Value;
                ЭлементОбъект.Цена = PS.Fields("price").Value;
                ЭлементОбъект.ЕдИзм = Справочники.Номенклатура.НайтиПоКоду(PS.Fields("product_id").Value).ЕдиницыИзмерения.Ссылка;  //??
                ЭлементОбъект.Сумма = ЭлементОбъект.Количество * ЭлементОбъект.Цена;
                НовыйДокумент.СуммаДокумента =  НовыйДокумент.СуммаДокумента + ЭлементОбъект.Сумма; //!!!!
        КонецЕсли;
КонецЦикла;
НовыйДокумент.Записать();



Signature
Личные бесплатные консультации не даю, для этого есть форум!

korish Подменю пользователя
сообщение 18.01.12, 16:45
Сообщение #4

Молчаливый
*
Группа: Пользователи
Сообщений: 7
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата
Чего?


Не понятный вопрос


Цитата
Вы присваиваете текст полям не текстового значения.


Я спорить не буду, а какие я тогда поля добавляю, в полях храниться текстовая информация в понятном для человека виде)
И нужно что бы документ уже был проведен

logist Подменю пользователя
сообщение 18.01.12, 17:14
Сообщение #5

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2539 раз
Рейтинг: 0

Цитата(korish @ 18.01.12, 16:45) *
Я спорить не буду, а какие я тогда поля добавляю, в полях храниться текстовая информация в понятном для человека виде)

я выше исправил ваш код, это конечно далековато, от того что в идеале должно быть, раз подгружается текст, пробуйте, "фантазируйте" smile.gif

Цитата(korish @ 18.01.12, 16:45) *
И нужно что бы документ уже был проведен

Для этого в "НовыйДокумент.Записать()" нужно установить режим записи - проведение, реквизит "Проведен" не изменяйте, никогда...


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 16.06.25, 20:54
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!