7.7 Программное создание документа

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем djyarilo, 22 авг 2011.

  1. TopicStarter Overlay
    djyarilo
    Offline

    djyarilo Опытный в 1С

    Регистрация:
    18 апр 2011
    Сообщения:
    435
    Симпатии:
    0
    Баллы:
    26
    Программно создаю документ, передаю в его ТЧ номенклатуру, заполняю количество и цену. Потом в документе сам в ручную пересчитываю цены (почему то при пересчете пишет нулевой курс валюты хотя все заполнено). Он считает сумму нормально подставляет НДС, заполняю шапку склад и прочее. Провожу документ все нормально. Но есть два косяка:
    1) Когда создался документ, записался и открылась его форма. Нет заголовка у документа. ТО есть в заголовках обычно же пишется Реализаиця или Поступление. А тут не пишется((((
    2) после проведения документа захожу в движения документа по остаткам тмц. там номенклатура пишется, а количество и цена нет. Хммм. Почему могут возникать эти два косяка?
    Код:
    	
    ссклад = спрсклад.НайтиПоНаименованию("Основной склад");
    если ссклад = 1 тогда
    складД = спрсклад.ТекущийЭлемент();
    КонецЕсли;
    
    
    докреал.Новый();
    докреал.склад = складД;
    
    
    текст = 
    "Период  с НачДата по кондата;
    |ном  = Регистр.Продажи.Номенклатура;
    |Сумм  = Регистр.Продажи.Себестоимость;
    |колич = Регистр.Продажи.Количество;
    |Группировка ном;
    |Функция сум = сумма(сумм);
    |функция кол = Сумма(колич);
    |";
    запрос.Выполнить(текст);
    запрос.Выгрузить(таба);
    
    //таба.ВыбратьСтроку();
    //табаб.ВыбратьСтроку();
    для строкиз = 1 по табаб.КоличествоСтрок() Цикл
    номен = табаб.ПолучитьЗначение(строкиз, 1);
    коолр = табаб.ПолучитьЗначение(строкиз,2);
    для строкизапрос = 1 по таба.КоличествоСтрок() Цикл
    номензап = таба.ПолучитьЗначение(строкизапрос, 1);
    суммазап = Число(таба.ПолучитьЗначение(строкизапрос,2));
    колзап = Число(таба.ПолучитьЗначение(строкизапрос,3));
    если СокрЛП(номен) = СокрЛП(номензап) Тогда
    ага = суммазап/колзап;
    поиск = спрном.НайтиПоНаименованию(номен,0);
    если поиск = 1 Тогда
    
    докреал.НоваяСтрока();
    докреал.Номенклатура = спрном.ТекущийЭлемент();
    докреал.Единица = спрном.ТекущийЭлемент().БазоваяЕдиница;
    докреал.Количество = коолр;
    докреал.Цена = ага;
    докреал.Записать();
    КонецЕсли;
    
    КонецЕсли;
    
    КонецЦикла;
    
    
    КонецЦикла;
    ОткрытьФорму(докреал.ТекущийДокумент());
    
    
  2. Хряк
    Offline

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    не заполнена валюта, ну и соответственно курс
    не заполнен код операции
    остальное - косяки перечисленного
  3. TopicStarter Overlay
    djyarilo
    Offline

    djyarilo Опытный в 1С

    Регистрация:
    18 апр 2011
    Сообщения:
    435
    Симпатии:
    0
    Баллы:
    26
    так с операцией я уже понял в чем косяк. Когда вид операции указывается, то в шапке сразу появляется название документа и его операция. Валюта автоматически пересчитывается при выборе контрагента или фирмы. Самое интересное, что когда её пересчитываешь, он пишет что якобы указан 0 курс, но высчитывает сумму, высчитывает сумму ндс, сумму документа и прочее. Потом нормально проводит документ. Захожу в движения, есть движения Остатки Тмц, открываю его, поля цена и количество пустые((( номенкатура склад все заполнено.
    П.С. В тч записывается номенклатура, количество и цена с ТЗ, я сначало подумал что мб, с тз в ТЧ идет строка, а не число, присвоил переменным тип число, но все равно в движениях они не прописываются. И все же не понятно, почему он пишет что обнаружен нулевой курс. курс задается в констатнах, и там курс не 0. ((( я вот тоже думаю мб это из этого пересчета цен?

    Курс и тип цен тут не причем. поставил евро, документ пересчитал, ошибку по 0 курсу не выдал и нормально провелся. Но в движениях цифры все равно не появились, только номенклатура((( как не странно сумма ндс, без ндс и прочее в движениях пишется, а цена и количество нет
  4. Хряк
    Offline

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    он пишет что якобы указан 0 курс, - думаю надо историю вал смотреть
  5. TopicStarter Overlay
    djyarilo
    Offline

    djyarilo Опытный в 1С

    Регистрация:
    18 апр 2011
    Сообщения:
    435
    Симпатии:
    0
    Баллы:
    26
    все нашел в чем косяк. коэффицент если не указывать то количество не пишется
  6. Хряк
    Offline

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    он пишет что якобы указан 0 курс, - думаю надо историю вал смотреть

    и ещё
    спрсклад.НайтиПоНаименованию("Основной склад");

    плохой тон
    либо запихни в константу либо пользуй настройки пользователя
  7. TopicStarter Overlay
    djyarilo
    Offline

    djyarilo Опытный в 1С

    Регистрация:
    18 апр 2011
    Сообщения:
    435
    Симпатии:
    0
    Баллы:
    26
    Складов много))) поступление только на этот)) А коэфицент, это коэфицент номенклатуры. вот если его не указывать то пересчет не идет
  8. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Это коэффициент содержится в единице измерения (если речь идет о ТиС)
Похожие темы
  1. Voody
    Ответов:
    10
    Просмотров:
    1.915
Загрузка...

Поделиться этой страницей