7.7 функция глПолучитьЦену()

Тема в разделе "Типовые решения "1С:Предприятие 7.7"", создана пользователем Дмитрий Маренин, 2 апр 2011.

  1. TopicStarter Overlay
    Дмитрий Маренин
    Offline

    Дмитрий Маренин Опытный в 1С

    Регистрация:
    24 ноя 2009
    Сообщения:
    104
    Симпатии:
    0
    Баллы:
    26
    Доброго времени суток!
    ф-я глПолучитьЦену(ном, Константа.ЗакупочныйТипЦен, д, ном.БазоваяЕдиница);
    возвращает 0, вот здесь:
    Код:
    "//{{ЗАПРОС(Сформировать)
    |Период с ВыбНачПериода по ВыбКонПериода;
    //|ОбрабатыватьДокументы все;
    //|Обрабатывать непомеченныенаудаление;
    |Номенклатура = Документ.ЧекККМ.Номенклатура;
    |Условие (Номенклатура в фгр);         
    |ВидОп = Документ.ЧекККМ.ВидОперации;        
    |Условие (ВидОп = Перечисление.ВидыОперацийЧекККМ.Чек);
    |Количество = Документ.ЧекККМ.Количество;
    |Цена = Документ.ЧекККМ.Цена;
    |_Сумма = Документ.ЧекККМ.Сумма;
    |Функция СКоличество = Сумма(Количество);
    |Функция СЦена = Сумма(Цена);
    |Функция ССумма = Сумма(_Сумма);
    |Группировка Номенклатура упорядочить по Номенклатура.Наименование;
    |";//}}ЗАПРОС;
    
    // Если ошибка в запросе, то выход из процедуры
    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
    Возврат;
    КонецЕсли;
    
    Пока Запрос.Группировка(1) = 1 Цикл
    тз.НоваяСтрока();
    тз.Номенклатура = Запрос.Номенклатура;
    тз.УшлоКол = Запрос.СКоличество;
    тз.УшлоСум = Запрос.ССумма;
    Если (тз.Номенклатура.ЭтоГруппа()=0) Тогда   
    Если глПривлеченныйТовар(тз.Номенклатура) = 0 Тогда
    сообщить(Строка(ЦенаЗакупки(тз.Номенклатура, ВыбКонПериода)) + "домножили...");
    сп =  тз.УшлоКол * Окр( ЦенаЗакупки(тз.Номенклатура, ВыбКонПериода) * 1.25, 0, 1 );
    Иначе                           
    сообщить(" не домножили...");
    сп =  тз.УшлоКол * ЦенаЗакупки(тз.Номенклатура, ВыбКонПериода);
    КонецЕсли;                                                                             
    сообщить("себестоимость " + тз.Номенклатура + " = " + сп);
    тз.СебестПрод = сп;
    тз.НоваяСтрока();
    тз.Номенклатура = Запрос.Номенклатура.Родитель;
    тз.СебестПрод = сп;
    тз.НоваяСтрока();
    тз.Номенклатура = Запрос.Номенклатура.Родитель.Родитель;
    тз.СебестПрод = сп;
    Если (тз.Номенклатура.Уровень()=2) Тогда
    тз.НоваяСтрока();
    тз.Номенклатура = Запрос.Номенклатура.Родитель.Родитель.Родитель;
    тз.СебестПрод = сп;
    КонецЕсли;
    КонецЕсли;
    КонецЦикла;
    
    
    помогите пожа-ста разобратся
    нужно чтобы возвращала закупочную цену
  2. TopicStarter Overlay
    Дмитрий Маренин
    Offline

    Дмитрий Маренин Опытный в 1С

    Регистрация:
    24 ноя 2009
    Сообщения:
    104
    Симпатии:
    0
    Баллы:
    26
  3. sergejk74
    Offline

    sergejk74 Опытный в 1С

    Регистрация:
    15 ноя 2010
    Сообщения:
    81
    Симпатии:
    0
    Баллы:
    26
    Давай подробнее.
    глПолучитьЦену() в приведенном коде я не вижу.
  4. TopicStarter Overlay
    Дмитрий Маренин
    Offline

    Дмитрий Маренин Опытный в 1С

    Регистрация:
    24 ноя 2009
    Сообщения:
    104
    Симпатии:
    0
    Баллы:
    26
    Код:
    Функция ЦенаЗакупки(ном, д)   
    Возврат глПолучитьЦену(ном, Константа.ЗакупочныйТипЦен, д, ном.БазоваяЕдиница);
    КонецФункции // ЦенаЗакупки()
    .
    .
    .
    Процедура Сформировать()
    Перем Запрос, ТекстЗапроса, Таб, тз, регн, регк, сз;[code]
    
  5. TopicStarter Overlay
    Дмитрий Маренин
    Offline

    Дмитрий Маренин Опытный в 1С

    Регистрация:
    24 ноя 2009
    Сообщения:
    104
    Симпатии:
    0
    Баллы:
    26
    и что странно
    Код:
    функция ЦенаЗакупки(ном, д)   
    Возврат глПолучитьЦену(ном, Константа.РозницныйТипЦен, д, ном.БазоваяЕдиница);
    КонецФункции // ЦенаЗакупки() -работает
    
  6. sergejk74
    Offline

    sergejk74 Опытный в 1С

    Регистрация:
    15 ноя 2010
    Сообщения:
    81
    Симпатии:
    0
    Баллы:
    26
    тогда стандартно банальные вопросы
    Константа.ЗакупочныйТипЦен - заполнена?
    Цены в справочниках проставлены?
  7. TopicStarter Overlay
    Дмитрий Маренин
    Offline

    Дмитрий Маренин Опытный в 1С

    Регистрация:
    24 ноя 2009
    Сообщения:
    104
    Симпатии:
    0
    Баллы:
    26
    да. смотрю отладчиком ниче не пойму после сравнения
    Код:
    Если ПустоеЗначение(НайденнаяЦена) = 1 Тогда
    
    // Нет такой цены
    Возврат 0;
    КонецЕсли;
    
    
    возвращает 0, хотя она есть)

    +
    константа.ЗакупочныйТипцен
    идентификатор Константа.ЗакупочныйТипЦен
    типЗначения Справочник.ТипыЦен

    Спасибо тему можно закрыть. Впорос решен.
  8. Хряк
    Offline

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

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    >Спасибо тему можно закрыть. Впорос решен.

    Делись как

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