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

Хранилище

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

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




>  Як отримати значення реквізиту номенклатури?
Oligarch
Отправлено: 11.06.17, 1:01


Молчаливый
*

Группа: Пользователи
Сообщений: 3
Регистрация: 10.06.17
Из: Львів
Пользователь №: 56391


Вдалось вирішити шляхом додавання нового реквізиту в табличну частину "ФільтрЗнижкиПоКількості" (тип: строка)
В процедурі перерахунку табличної частини прописав:
Конт.ФільтрЗнижкиПоКількості = Конт.Номенклатура.ЗнижкаПоКількості;
    Если Конт.ФільтрЗнижкиПоКількості = "1" Тогда
        КоефіцієнтЗнижкиПоКількості = 0;
    Иначе
        КоефіцієнтЗнижкиПоКількості = 1;
    КонецЕсли;

Всім дякую за допомогу!
  Форум: Программирование в 1С Предприятие 7.7 · Просмотр сообщения: #128175 · Ответов: 5 · Просмотров: 2290
 

>  Як отримати значення реквізиту номенклатури?
Oligarch
Отправлено: 10.06.17, 14:18


Молчаливый
*

Группа: Пользователи
Сообщений: 3
Регистрация: 10.06.17
Из: Львів
Пользователь №: 56391


Abyss @ Сегодня, 13:58 * ,
{Глобальный модуль(3325)}: Поле агрегатного объекта не обнаружено (ТМЦ)


Прив'язка до одиниці виміру тоже не дала результату:

Если ИмяРеквизита = "КоличествоБезСкидки" Тогда
        Если Конт.Единица = "шт" Тогда
            КоефіцієнтЗнижкиПоКількості = 0;
        Иначе
            КоефіцієнтЗнижкиПоКількості = 1;
        КонецЕсли;

Сообщить (Конт.Единица)
виводить пусту строку...



  Форум: Программирование в 1С Предприятие 7.7 · Просмотр сообщения: #128163 · Ответов: 5 · Просмотров: 2290
 

>  Як отримати значення реквізиту номенклатури?
Oligarch
Отправлено: 10.06.17, 11:36


Молчаливый
*

Группа: Пользователи
Сообщений: 3
Регистрация: 10.06.17
Из: Львів
Пользователь №: 56391


Доброго дня. Допоможіть, будь-ласка, вирішити питання. В табличній частині документа відображається крім кількості, кількість зі знижкою. Потрібно для деяких товарів відключити знижку по кількості. Для цього в модулі номенклатури додав галочку, але не знаю, як отримати значення реквізиту при додаванні номенклатури в табличну частину.



Частина процедури оригіналу
Процедура глПересчетТаблЧасти(Конт,ИмяРеквизита, ПараметрыРозничнойЦены = 0) Экспорт  
    
    Перем ВремКоэфф, ВремЦена, НоваяНоменклатура;
    Перем ЕстьСкидка;    // 1 - в документе есть скидка, 0 - скидки нет
    Перем ПроцентСкидки;
    Перем ЕстьНДС, ЕстьНП, УчитыватьНДС, УчитыватьНП;
    Перем ЦенаЦены, ЕдЦены, ВалютаЦены;
                                                  
    ДатаДок    = Конт.ДатаДок;
    
    
Если ИмяРеквизита = "КоличествоБезСкидки" Тогда
        Конт.Количество = Конт.КоличествоБезСкидки - Конт.КоличествоБезСкидки * Конт.Договор.ПроцЗнижПоКсті / 100;
        Если глЕстьРеквизитМнЧ("БезСкидки",  Конт.Вид()) = 1 Тогда
            Конт.БезСкидки = Конт.Цена*Конт.Количество;
            Конт.Сумма = Конт.Цена*Конт.Количество-ПроцентСкидки/100*Конт.Цена*Конт.Количество;
            Конт.СуммаСкидки = Конт.БезСкидки - Конт.Сумма;
        Иначе
            Конт.Сумма = Конт.Цена*Конт.Количество-ПроцентСкидки/100*Конт.Цена*Конт.Количество;
        КонецЕсли;
        Если ЕстьНП = 1 Тогда
            глРасчетНалога(Конт,"НП");
        КонецЕсли;
        Если ЕстьНДС = 1 Тогда
            глРасчетНалога(Конт,"НДС");
        КонецЕсли;
            
КонецПроцедуры // глПересчетТаблЧасти()


Пробував так
Процедура глПересчетТаблЧасти(Конт,ИмяРеквизита, ПараметрыРозничнойЦены = 0) Экспорт  
    
    Перем ВремКоэфф, ВремЦена, НоваяНоменклатура;
    Перем ЕстьСкидка;    // 1 - в документе есть скидка, 0 - скидки нет
    Перем ПроцентСкидки;
    Перем ЕстьНДС, ЕстьНП, УчитыватьНДС, УчитыватьНП;
    Перем ЦенаЦены, ЕдЦены, ВалютаЦены;
                                                  
    ДатаДок    = Конт.ДатаДок;
    
    
Если ИмяРеквизита = "КоличествоБезСкидки" Тогда
        Если ЗнижкаПоКількості = 1 Тогда
            КоефіцієнтЗнижкиПоКількості = 0;
        Иначе
            КоефіцієнтЗнижкиПоКількості = 1;
    КонецЕсли;
        Конт.Количество = Конт.КоличествоБезСкидки - Конт.КоличествоБезСкидки * Конт.Договор.ПроцЗнижПоКсті / 100*  КоефіцієнтЗнижкиПоКількості;
        Если глЕстьРеквизитМнЧ("БезСкидки",  Конт.Вид()) = 1 Тогда
            Конт.БезСкидки = Конт.Цена*Конт.Количество;
            Конт.Сумма = Конт.Цена*Конт.Количество-ПроцентСкидки/100*Конт.Цена*Конт.Количество;
            Конт.СуммаСкидки = Конт.БезСкидки - Конт.Сумма;
        Иначе
            Конт.Сумма = Конт.Цена*Конт.Количество-ПроцентСкидки/100*Конт.Цена*Конт.Количество;
        КонецЕсли;
        Если ЕстьНП = 1 Тогда
            глРасчетНалога(Конт,"НП");
        КонецЕсли;
        Если ЕстьНДС = 1 Тогда
            глРасчетНалога(Конт,"НДС");
        КонецЕсли;
            
КонецПроцедуры // глПересчетТаблЧасти()


Не знаю як правильно отримати значення реквізиту "ЗнижкаПоКількості"...
  Форум: Программирование в 1С Предприятие 7.7 · Просмотр сообщения: #128161 · Ответов: 5 · Просмотров: 2290
 


Новые сообщения  Открытая тема (есть новые ответы)
Опрос  Опрос (есть новые голоса)
Нет новых сообщений  Открытая тема (нет новых ответов)
Нет новых голосов  Опрос (нет новых голосов)
Популярная тема  Горячая тема (есть новые ответы)
Закрыта  Закрытая тема
Нет новых  Горячая тема (нет новых ответов) Перемещена  Тема перемещена
 

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