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

Хранилище

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

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



> Установка флага покрытие , нужна колонка в списке выбора документов покрытие          
sia_1980 Подменю пользователя
сообщение 28.05.13, 13:23
Сообщение #1

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

Доброго времени суток.
есть задача в список выбора документов Акт разногласия и Возврат от покупателя вставить колонку с флагом покрытие.
есть обработка которая ставит єтот флаг для Реализации.

по аналоги в список выбора Возврат от покупателя была добавлена колонка Покрытие


в обработку добавлены ссылки на эти документы
 Перем мИзменениеСтатусаДоступно;

Процедура КнопкаВыполнитьНажатие(Кнопка)
    
    ОчиститьСообщения();
    
    // Прописать в регистр владельца документов
    НаборЗаписей = РегистрыСведений.ВладельцыДокументов.СоздатьНаборЗаписей();
    Период = ТекущаяДата();
    Для каждого Документ Из СканированныеДокументы Цикл                
        Если НЕ Документ.Обработать Тогда        
            Продолжить;        
        КонецЕсли;
        НоваяСтрока = НаборЗаписей.Добавить();
        НоваяСтрока.ДокументСсылка = Документ.Документ;
        НоваяСтрока.Пользователь =глЗначениеПеременной("глТекущийПользователь");
        НоваяСтрока.Период = Период;                    
        Если ТоварОтгружен = 1 Тогда
            Состояние = Перечисления.СостоянияРеализаций.ТоварОтгружен;
        ИначеЕсли ТоварОтгружен = 2 Тогда
            Состояние = Перечисления.СостоянияРеализаций.ОжиданиеДозаказа;
        ИначеЕсли ТоварОтгружен = 3 Тогда
            Состояние = Перечисления.СостоянияРеализаций.ВозвратНаСклад;
        Иначе
            Состояние = Перечисления.СостоянияРеализаций.Покрытие;
            Состояние = Перечисления.СостоянияАктРазногласия.Покрытие;
            Состояние = Перечисления.СостоянияВозвратТоваровОтПокупателя.Покрытие;
        КонецЕсли;

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

Процедура ОбработатьСканирование(Данные)

    Сообщение = СокрЛП(Данные);
    
    Если НЕ ЗначениеЗаполнено(Сообщение) Тогда    
        Возврат;    
    КонецЕсли;
    
    Попытка    
        ИД = Новый УникальныйИдентификатор(Сообщение);    
    Исключение
        Предупреждение("Ошибка считывания штрихкода. Пересканируйте последний документ.");
        Возврат;
    КонецПопытки;
    
    Для Каждого ТекСтрока Из Метаданные.Документы Цикл
        
        СсылкаНаДокумент = Документы[ТекСтрока.Имя].ПолучитьСсылку(ИД);
        Объект = СсылкаНаДокумент.ПолучитьОбъект();
        
        Если Объект <> Неопределено Тогда
            
            РезПоиска = СканированныеДокументы.Найти(Объект.Ссылка,"Документ");            
            Если НЕ РезПоиска = Неопределено Тогда            
                НоваяСтрока = РезПоиска;
                Сообщить("Документ "+Объект.Ссылка+" уже присутствует в таблице. Запись обновлена. Тек. дата/время: " + ТекущаяДата(), СтатусСообщения.Информация);
            Иначе
                НоваяСтрока    = СканированныеДокументы.Добавить();
                Сообщить("Документ "+Объект.Ссылка+" добавлен в таблицу. Тек. дата/время: " + ТекущаяДата(), СтатусСообщения.Информация);
            КонецЕсли;
            
            НоваяСтрока.Документ    = Объект.Ссылка;
            НоваяСтрока.Контрагент    = Объект.Ссылка.Контрагент;
            Если мИзменениеСтатусаДоступно Тогда                
                
                Если ТоварОтгружен = 1 Тогда
                    НоваяСтрока.СостояниеДокумента = Перечисления.СостоянияРеализаций.ТоварОтгружен;
                ИначеЕсли ТоварОтгружен = 2 Тогда
                    НоваяСтрока.СостояниеДокумента = Перечисления.СостоянияРеализаций.ОжиданиеДозаказа;
                ИначеЕсли ТоварОтгружен = 3 Тогда
                    НоваяСтрока.СостояниеДокумента = Перечисления.СостоянияРеализаций.ВозвратНаСклад;
                Иначе
                    НоваяСтрока.СостояниеДокумента = Перечисления.СостоянияРеализаций.Покрытие;
                КонецЕсли;
                
            КонецЕсли;
            
            НоваяСтрока.Сумма = Объект.Ссылка.СуммаДокумента;
            НоваяСтрока.Изменен        = Объект.Ссылка.Изменен;
            НоваяСтрока.Обработать    = Истина;
            
            Прервать; // УИД может принадлежать только одному объекту в базе данных
            
        КонецЕсли;
        
    КонецЦикла;
    
    Если Объект = Неопределено Тогда
        Сообщить("Штрихкод не может быть обработан!!!");
    КонецЕсли;

КонецПроцедуры

Процедура ВнешнееСобытие(Источник, Событие, Данные)
    
    Если Не ВводДоступен() Тогда
        Возврат;
    КонецЕсли;

    //ПолучитьСерверТО().ОбработатьВнешнееСобытие(Событие, Данные, ЭтаФорма);
    
    ОбработатьСканирование(Данные);
    
КонецПроцедуры

Процедура ПриОткрытии()
    
    мИзменениеСтатусаДоступно = Истина;
    
    ПолучитьСерверТО().ПодключитьКлиента(ЭтаФорма);
    
    ТекПользователь = глЗначениеПеременной("глТекущийПользователь");
    
    ДоступнаЭкспедиция = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь,"ПопалВЭкспедицию");
    //ДоступнаКорректровкаРевизор = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь,"ОтданНаКорректировкуРевизор");
    //ДоступнаКорректровкаБухгалтер = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь,"ОтданНаКорректировкуБухгалтер");
    //ДоступнаКорректровкаПродажи = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь,"ОткорректированОтделПродаж");
    ДоступнаПокрытие = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь,"Покрытие");    
    
    СостояниеПоУмолчанию = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь,"ОсновноеСостояниеРеализации");
    Если СостояниеПоУмолчанию = Перечисления.СостоянияРеализаций.ТоварОтгружен Тогда
        ТоварОтгружен = 1;
    ИначеЕсли СостояниеПоУмолчанию = Перечисления.СостоянияРеализаций.ОжиданиеДозаказа Тогда
        ТоварОтгружен = 2;
    ИначеЕсли СостояниеПоУмолчанию = Перечисления.СостоянияРеализаций.ВозвратНаСклад Тогда
        ТоварОтгружен = 3;
    Иначе
        ТоварОтгружен = 4;
    КонецЕсли;
    
    ЭлементыФормы.ТоварОтгружен.Доступность     = ДоступнаЭкспедиция;
    ЭлементыФормы.ОжиданеДозаказа.Доступность     = ДоступнаЭкспедиция;
    ЭлементыФормы.ВозвратНаСклад.Доступность     = ДоступнаЭкспедиция;
    ЭлементыФормы.Покрытие.Доступность             = ДоступнаПокрытие;
    Если Не ДоступнаЭкспедиция И Не ДоступнаПокрытие Тогда
        Сообщить("У Вас нет прав устанавливать статус документа. Если Вам необходимы такие правта, то обратитесь к программисту!!!");
        ЭтаФорма.Закрыть();
    КонецЕсли;
КонецПроцедуры

Функция ПоддерживаетсяВидТО(Вид) Экспорт

    Результат = Ложь;

    Если Вид = Перечисления.ВидыТорговогоОборудования.СканерШтрихКода Тогда
        Результат = Истина;
    КонецЕсли;

    Возврат Результат;

КонецФункции // ПоддерживаетсяВидТО()

Функция СШКНеизвестныйКод(Штрихкод, ТипКода, СШК) Экспорт

    Возврат Ложь;

КонецФункции // СШКНеизвестныйКод()

// Процедура осуществляет обработку ошибки, произошедшей при работе со сканером
// штрихкода.
//
// Параметры:
//  Ошибка    - <ПеречислениеСсылка.ТООшибки*>
//            - Возникшая ошибка.
//
//  Штрихкод  - <Строка>
//            - Считанный штрихкод или пустая строка, если штрихкод не был
//              считан.
//
//  ТипШК     - <ПланыВидовХарактеристикСсылка.ТипыШтрихкодов>
//            - Тип штрихкода или пустая ссылка в случае, если тип не определён.
//
//  СШК       - <Строка>
//            - Идентификатор сканера штрихкода, с которым связано данное
//              событие.
//
Процедура СШКОшибка(Ошибка, Штрихкод, ТипШК, СШК) Экспорт

    Текст = ПолучитьСерверТО().ПолучитьТекстОшибкиСШКТО(Ошибка, Штрихкод, ТипШК);
    Предупреждение(Текст);

КонецПроцедуры // СШКОшибка()

Процедура ДобавитьНажатие(Элемент)    
    ОбработатьСканирование(Штрихкод);    
КонецПроцедуры

Процедура СканированныеДокументыПередНачаломДобавления(Элемент, Отказ, Копирование)
    //Отказ = Истина;
    
КонецПроцедуры

Процедура СканированныеДокументыДокументПриИзменении(Элемент)
    ТекСтрока = ЭлементыФормы.СканированныеДокументы.ТекущиеДанные;
    ТекСтрока.Контрагент = ТекСтрока.Документ.Контрагент;
    ТекСтрока.Сумма = ТекСтрока.Документ.СуммаДокумента;
    // Вставить содержимое обработчика.
КонецПроцедуры

Процедура ДействияФормыОчиститьТаблицу(Кнопка)
    СканированныеДокументы.Очистить();
КонецПроцедуры


при попытке запустить обработку выдает

Цитата
Обработка.СчитываниеШтрихкода.Форма.Форма(50)}: Ошибка при вызове метода контекста (Записать)
НаборЗаписейСостоянияРеализация.Записать(Истина);
по причине:
Запись не верна! Период не может быть пустым!: СостоянияРеализацийТоваровУслуг: 01.01.0001 00:00:00, , (Регистр сведений: Состояния реализаций товаров услуг; Номер строки: 1)


Как это вылечить ?

Обработку писал не я, досталась в наследство от програмера он уволился и контакта с ним нет.

(УТ 8,1)

Сообщение отредактировал Vofka - 28.05.13, 13:28


Signature
1С 8.1 Бухгалтерия конфиг. 1,25,2

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

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

Что это за ересь

Запись = НаборЗаписейСостоянияРеализация.Добавить();
Запись = НаборЗаписейСостоянияАктРазногласия.Добавить();
Запись = НаборЗаписейСостоянияВозвратТоваровОтПокупателя.Добавить();
Запись.Период = Период;
Запись.Пользователь =глЗначениеПеременной("глТекущийПользователь");
Запись.Документ = Документ.Документ;
Запись.Состояние = Состояние;
            
НаборЗаписейСостоянияРеализация.Записать(Истина);
НаборЗаписейСостоянияАктРазногласия.Записать(Истина);
НаборЗаписейСостоянияВозвратТоваровОтПокупателя.Записать(Истина);


?

sia_1980 Подменю пользователя
сообщение 28.05.13, 13:35
Сообщение #3

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

Цитата(Vofka @ 28.05.13, 13:31) *
Что это за ересь

Запись = НаборЗаписейСостоянияРеализация.Добавить();
Запись = НаборЗаписейСостоянияАктРазногласия.Добавить();
Запись = НаборЗаписейСостоянияВозвратТоваровОтПокупателя.Добавить();
Запись.Период = Период;
Запись.Пользователь =глЗначениеПеременной("глТекущийПользователь");
Запись.Документ = Документ.Документ;
Запись.Состояние = Состояние;
            
НаборЗаписейСостоянияРеализация.Записать(Истина);
НаборЗаписейСостоянияАктРазногласия.Записать(Истина);
НаборЗаписейСостоянияВозвратТоваровОтПокупателя.Записать(Истина);


?

не знаю что за ересь
в оригинале так
Запись = НаборЗаписейСостоянияРеализация.Добавить();

Запись.Период = Период;
Запись.Пользователь =глЗначениеПеременной("глТекущийПользователь");
Запись.Документ = Документ.Документ;
Запись.Состояние = Состояние;
            
НаборЗаписейСостоянияРеализация.Записать(Истина);
НаборЗаписейСостоянияАктРазногласия.Записать(Истина);
НаборЗаписейСостоянияВозвратТоваровОтПокупателя.Записать(Истина);


Signature
1С 8.1 Бухгалтерия конфиг. 1,25,2

Vofka Подменю пользователя
сообщение 28.05.13, 13:36
Сообщение #4

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

Если некий оригинал отличается от кода, который вы привели в начальном посте, как вам можно помочь? Гадалки в отпусках...

Сообщение отредактировал Vofka - 28.05.13, 13:36

sia_1980 Подменю пользователя
сообщение 28.05.13, 13:46
Сообщение #5

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

Цитата(Vofka @ 28.05.13, 13:36) *
Если некий оригинал отличается от кода, который вы привели в начальном посте, как вам можно помочь? Гадалки в отпусках...

Оригинал кода
Перем мИзменениеСтатусаДоступно;

Процедура КнопкаВыполнитьНажатие(Кнопка)
    
    ОчиститьСообщения();
    
    // Прописать в регистр владельца документов
    НаборЗаписей = РегистрыСведений.ВладельцыДокументов.СоздатьНаборЗаписей();
    Период = ТекущаяДата();
    Для каждого Документ Из СканированныеДокументы Цикл                
        Если НЕ Документ.Обработать Тогда        
            Продолжить;        
        КонецЕсли;
        НоваяСтрока = НаборЗаписей.Добавить();
        НоваяСтрока.ДокументСсылка = Документ.Документ;
        НоваяСтрока.Пользователь =глЗначениеПеременной("глТекущийПользователь");
        НоваяСтрока.Период = Период;                    
        Если ТоварОтгружен = 1 Тогда
            Состояние = Перечисления.СостоянияРеализаций.ТоварОтгружен;
        ИначеЕсли ТоварОтгружен = 2 Тогда
            Состояние = Перечисления.СостоянияРеализаций.ОжиданиеДозаказа;
        ИначеЕсли ТоварОтгружен = 3 Тогда
            Состояние = Перечисления.СостоянияРеализаций.ВозвратНаСклад;
        Иначе
            Состояние = Перечисления.СостоянияРеализаций.Покрытие;
        КонецЕсли;

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

Процедура ОбработатьСканирование(Данные)

    Сообщение = СокрЛП(Данные);
    
    Если НЕ ЗначениеЗаполнено(Сообщение) Тогда    
        Возврат;    
    КонецЕсли;
    
    Попытка    
        ИД = Новый УникальныйИдентификатор(Сообщение);    
    Исключение
        Предупреждение("Ошибка считывания штрихкода. Пересканируйте последний документ.");
        Возврат;
    КонецПопытки;
    
    Для Каждого ТекСтрока Из Метаданные.Документы Цикл
        
        СсылкаНаДокумент = Документы[ТекСтрока.Имя].ПолучитьСсылку(ИД);
        Объект = СсылкаНаДокумент.ПолучитьОбъект();
        
        Если Объект <> Неопределено Тогда
            
            РезПоиска = СканированныеДокументы.Найти(Объект.Ссылка,"Документ");            
            Если НЕ РезПоиска = Неопределено Тогда            
                НоваяСтрока = РезПоиска;
                Сообщить("Документ "+Объект.Ссылка+" уже присутствует в таблице. Запись обновлена. Тек. дата/время: " + ТекущаяДата(), СтатусСообщения.Информация);
            Иначе
                НоваяСтрока    = СканированныеДокументы.Добавить();
                Сообщить("Документ "+Объект.Ссылка+" добавлен в таблицу. Тек. дата/время: " + ТекущаяДата(), СтатусСообщения.Информация);
            КонецЕсли;
            
            НоваяСтрока.Документ    = Объект.Ссылка;
            НоваяСтрока.Контрагент    = Объект.Ссылка.Контрагент;
            Если мИзменениеСтатусаДоступно Тогда                
                
                Если ТоварОтгружен = 1 Тогда
                    НоваяСтрока.СостояниеДокумента = Перечисления.СостоянияРеализаций.ТоварОтгружен;
                ИначеЕсли ТоварОтгружен = 2 Тогда
                    НоваяСтрока.СостояниеДокумента = Перечисления.СостоянияРеализаций.ОжиданиеДозаказа;
                ИначеЕсли ТоварОтгружен = 3 Тогда
                    НоваяСтрока.СостояниеДокумента = Перечисления.СостоянияРеализаций.ВозвратНаСклад;
                Иначе
                    НоваяСтрока.СостояниеДокумента = Перечисления.СостоянияРеализаций.Покрытие;
                КонецЕсли;
                
            КонецЕсли;
            
            НоваяСтрока.Сумма = Объект.Ссылка.СуммаДокумента;
            НоваяСтрока.Изменен        = Объект.Ссылка.Изменен;
            НоваяСтрока.Обработать    = Истина;
            
            Прервать; // УИД может принадлежать только одному объекту в базе данных
            
        КонецЕсли;
        
    КонецЦикла;
    
    Если Объект = Неопределено Тогда
        Сообщить("Штрихкод не может быть обработан!!!");
    КонецЕсли;

КонецПроцедуры

Процедура ВнешнееСобытие(Источник, Событие, Данные)
    
    Если Не ВводДоступен() Тогда
        Возврат;
    КонецЕсли;

    //ПолучитьСерверТО().ОбработатьВнешнееСобытие(Событие, Данные, ЭтаФорма);
    
    ОбработатьСканирование(Данные);
    
КонецПроцедуры

Процедура ПриОткрытии()
    
    мИзменениеСтатусаДоступно = Истина;
    
    ПолучитьСерверТО().ПодключитьКлиента(ЭтаФорма);
    
    ТекПользователь = глЗначениеПеременной("глТекущийПользователь");
    
    ДоступнаЭкспедиция = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь,"ПопалВЭкспедицию");
    //ДоступнаКорректровкаРевизор = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь,"ОтданНаКорректировкуРевизор");
    //ДоступнаКорректровкаБухгалтер = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь,"ОтданНаКорректировкуБухгалтер");
    //ДоступнаКорректровкаПродажи = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь,"ОткорректированОтделПродаж");
    ДоступнаПокрытие = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь,"Покрытие");    
    
    СостояниеПоУмолчанию = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекПользователь,"ОсновноеСостояниеРеализации");
    Если СостояниеПоУмолчанию = Перечисления.СостоянияРеализаций.ТоварОтгружен Тогда
        ТоварОтгружен = 1;
    ИначеЕсли СостояниеПоУмолчанию = Перечисления.СостоянияРеализаций.ОжиданиеДозаказа Тогда
        ТоварОтгружен = 2;
    ИначеЕсли СостояниеПоУмолчанию = Перечисления.СостоянияРеализаций.ВозвратНаСклад Тогда
        ТоварОтгружен = 3;
    Иначе
        ТоварОтгружен = 4;
    КонецЕсли;
    
    ЭлементыФормы.ТоварОтгружен.Доступность     = ДоступнаЭкспедиция;
    ЭлементыФормы.ОжиданеДозаказа.Доступность     = ДоступнаЭкспедиция;
    ЭлементыФормы.ВозвратНаСклад.Доступность     = ДоступнаЭкспедиция;
    ЭлементыФормы.Покрытие.Доступность             = ДоступнаПокрытие;
    Если Не ДоступнаЭкспедиция И Не ДоступнаПокрытие Тогда
        Сообщить("У Вас нет прав устанавливать статус документа. Если Вам необходимы такие правта, то обратитесь к программисту!!!");
        ЭтаФорма.Закрыть();
    КонецЕсли;
КонецПроцедуры

Функция ПоддерживаетсяВидТО(Вид) Экспорт

    Результат = Ложь;

    Если Вид = Перечисления.ВидыТорговогоОборудования.СканерШтрихКода Тогда
        Результат = Истина;
    КонецЕсли;

    Возврат Результат;

КонецФункции // ПоддерживаетсяВидТО()

Функция СШКНеизвестныйКод(Штрихкод, ТипКода, СШК) Экспорт

    Возврат Ложь;

КонецФункции // СШКНеизвестныйКод()

// Процедура осуществляет обработку ошибки, произошедшей при работе со сканером
// штрихкода.
//
// Параметры:
//  Ошибка    - <ПеречислениеСсылка.ТООшибки*>
//            - Возникшая ошибка.
//
//  Штрихкод  - <Строка>
//            - Считанный штрихкод или пустая строка, если штрихкод не был
//              считан.
//
//  ТипШК     - <ПланыВидовХарактеристикСсылка.ТипыШтрихкодов>
//            - Тип штрихкода или пустая ссылка в случае, если тип не определён.
//
//  СШК       - <Строка>
//            - Идентификатор сканера штрихкода, с которым связано данное
//              событие.
//
Процедура СШКОшибка(Ошибка, Штрихкод, ТипШК, СШК) Экспорт

    Текст = ПолучитьСерверТО().ПолучитьТекстОшибкиСШКТО(Ошибка, Штрихкод, ТипШК);
    Предупреждение(Текст);

КонецПроцедуры // СШКОшибка()

Процедура ДобавитьНажатие(Элемент)    
    ОбработатьСканирование(Штрихкод);    
КонецПроцедуры

Процедура СканированныеДокументыПередНачаломДобавления(Элемент, Отказ, Копирование)
    //Отказ = Истина;
    
КонецПроцедуры

Процедура СканированныеДокументыДокументПриИзменении(Элемент)
    ТекСтрока = ЭлементыФормы.СканированныеДокументы.ТекущиеДанные;
    ТекСтрока.Контрагент = ТекСтрока.Документ.Контрагент;
    ТекСтрока.Сумма = ТекСтрока.Документ.СуммаДокумента;
    // Вставить содержимое обработчика.
КонецПроцедуры

Процедура ДействияФормыОчиститьТаблицу(Кнопка)
    СканированныеДокументы.Очистить();
КонецПроцедуры



Signature
1С 8.1 Бухгалтерия конфиг. 1,25,2

Vofka Подменю пользователя
сообщение 28.05.13, 13:52
Сообщение #6

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

sia_1980, у меня такое впечатление, что в последнем коде не ругается.

sia_1980 Подменю пользователя
сообщение 28.05.13, 13:55
Сообщение #7

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

Цитата(Vofka @ 28.05.13, 13:52) *
sia_1980, у меня такое впечатление, что в последнем коде не ругается.

в оригинале не ругается, но кроме ссылок на два новых документа больше нечего не добавлял.
не могу понять почему ругается ?


Signature
1С 8.1 Бухгалтерия конфиг. 1,25,2

Vofka Подменю пользователя
сообщение 28.05.13, 14:08
Сообщение #8

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

Цитата(sia_1980 @ 28.05.13, 14:55) *
в оригинале не ругается

Цитата(sia_1980 @ 28.05.13, 14:55) *
не могу понять почему ругается ?

Вы издеваетесь?

sia_1980 Подменю пользователя
сообщение 28.05.13, 14:11
Сообщение #9

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

Цитата(Vofka @ 28.05.13, 14:08) *
Вы издеваетесь?

нет не издеваюсь.
я админ, програмера нет и задачу нарезали мне, открестится не удалось. 09000000.gif


Signature
1С 8.1 Бухгалтерия конфиг. 1,25,2

Vofka Подменю пользователя
сообщение 28.05.13, 14:22
Сообщение #10

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

sia_1980, так можно в конце то концов описать проблему внятно? Проблема в том, что ругается где-то или в том, что не работает как вы хотите или сейчас выяснится что проблема вообще в чем-то другом?

sia_1980 Подменю пользователя
сообщение 28.05.13, 14:30
Сообщение #11

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

Цитата(Vofka @ 28.05.13, 14:22) *
sia_1980, так можно в конце то концов описать проблему внятно? Проблема в том, что ругается где-то или в том, что не работает как вы хотите или сейчас выяснится что проблема вообще в чем-то другом?


обработка ставит флаг Покрытие на документ Реализация товаров что отображается в форме списка в виде флажка,
нужно добавить флаг Покрытия в Документы Акт Разногласия и Возврат товаров от покупателя, чтоб тоже отображался в форме списка флажок.
при добавлении в эту обработку Ссылок на данные документы она не работает.


Signature
1С 8.1 Бухгалтерия конфиг. 1,25,2

Vofka Подменю пользователя
сообщение 28.05.13, 14:44
Сообщение #12

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

sia_1980, а теперь расскажите что вы сделали для того, чтобы флажок там появился? Если вы вообще не знаете даже с какой стороны подходить - то тут могу посоветовать только обратиться к специалистам. Если знаете - задавайте более конкретные вопросы, а то, как я уже говорил, гадалки в отпусках.

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


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

 

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