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

Хранилище

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

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



История благодарностей участнику kooperdj ::: Спасибо сказали: 8 раз
Дата поста: В теме: За сообщение: Спасибо сказали:
03.06.20, 11:49 Как получить доступ к ячейке табличной части на форме
BeLuY @ Сегодня, 12:15 * ,
Такие поля доступны в двух процедурах ...ПриВыводеСтроки() и ...ПриПолученииДанных() обе жрут ресурсы, вторая чуть поменьше. Отображаются там обычно доп. инфа, флажки, картинки (то что в базе не сохраняется). По таким колонкам не считаются итоги. При этом данные меняются динамически, при каждом скроллинге таб части. Если сильно хочется обложиться костылями - можно источником данных указать ТаблицаЗначений, загружать в нее данные из ТабЧасти документа, обрабатывать и выгружать назад (пример - Установка цен номенклатуры в типовых)
BeLuY,
03.06.20, 10:44 Как получить доступ к ячейке табличной части на форме
BeLuY @ Сегодня, 11:28 * ,
У вас есть функция ПолучитьСтаруюЦену(ДанныеСтроки); пользуйтесь ей. Мне кажется, логика приложения прихрамывает smile.gif
BeLuY,
08.10.19, 0:11 Обработка 1С 8.3 & CABiNET
UNry2 @ Вчера, 16:09 * ,
Это одна из обработок форматов клиента банка Аbbyy Україна для 1С. Гугл находит моментом
UNry2,
24.01.19, 22:33 Обработка 1С 8.3 & CABiNET
Тоже столкнулся с выпиской CABiNET, изменил под нее iBank2, Функция ИмпортTXT(Параметры) Ничего сложного, только учесть что выписка начинается со второй строки.
 Функция ИмпортTXT(Параметры)
    ФайлTXT    = Новый ТекстовыйДокумент;
    ИмяФайла = Параметры.ИмяФайла;
    Попытка
        ФайлTXT.Прочитать(ИмяФайла, КодировкаТекста[Параметры.КодировкаФайла]);
    Исключение
        Предупреждение("Ошибка открытия файла " + ИмяФайла);
        Возврат Неопределено;
    КонецПопытки;        
    
    тзВыписка =  Новый ТаблицаЗначений;
    тзВыписка.Колонки.Добавить("НомерПП");
    тзВыписка.Колонки.Добавить("Приход");
    тзВыписка.Колонки.Добавить("Расход");
    тзВыписка.Колонки.Добавить("ОКПО");
    тзВыписка.Колонки.Добавить("Контрагент");
    тзВыписка.Колонки.Добавить("МФО");
    тзВыписка.Колонки.Добавить("РСчет");
    тзВыписка.Колонки.Добавить("Содержание");
    
    // В первой строке хранятся параметры выписки
    Дельта = -1;
    ТекСтрока = ФайлTXT.ПолучитьСтроку(1);
    Спис = РазобратьСтроку(ТекСтрока);
    шСчет       = СокрЛП(Спис[1+Дельта].Значение);
    шВалюта     = СокрЛП(Спис[2+Дельта].Значение);
    шКвоЗаписей = СокрЛП(Спис[3+Дельта].Значение);
    
    Если шСчет <> Формат(Параметры.РСчет,"ЧН=0") Тогда
        Предупреждение("В текущем файле нет платежей с выбранным расчетным счетом!");
        Возврат тзВыписка;
    КонецЕсли;
    
    Для н = 2 По ФайлTXT.КоличествоСтрок() Цикл
        ТекСтрока = ФайлTXT.ПолучитьСтроку(н);
        Спис = РазобратьСтроку(ТекСтрока);
        
        ДатаОперации = Дата(Спис[2+Дельта].Значение);  // ггггммдд
        Если ДатаОперации <> Параметры.ДатаДок Тогда
            Продолжить;    
        КонецЕсли;
                    
        МФОКонтрагента = СокрЛП(Спис[33+Дельта].Значение);
        КодОКПОКонтрагента = СокрЛП(Спис[34+Дельта].Значение);
        РСчетКонтрагента = СокрЛП(Спис[26+Дельта].Значение);
        ИмяКонтрагента = СокрЛП(Спис[27+Дельта].Значение);
        
        Если Лев(ИмяКонтрагента, 1)  = """" И Прав(ИмяКонтрагента, 1)  = """" Тогда
            ИмяКонтрагента = Сред(ИмяКонтрагента, 2, СтрДлина(ИмяКонтрагента) - 2);
            ИмяКонтрагента = СтрЗаменить(ИмяКонтрагента,"""""", """");
        КонецЕсли;
        
        НомерПП  = СокрЛП(Спис[25+Дельта].Значение);
        Назначение = СокрЛП(Спис[24+Дельта].Значение);
        Если Лев(Назначение, 1)  = """" И Прав(Назначение, 1)  = """" Тогда
            Назначение = Сред(Назначение, 2, СтрДлина(Назначение) - 2);
            Назначение = СтрЗаменить(Назначение,"""""", """");
        КонецЕсли;
                
        НовСтрока = тзВыписка.Добавить();
        НовСтрока.НомерПП        = НомерПП;
        НовСтрока.Контрагент    = ИмяКонтрагента;
        НовСтрока.ОКПО            = СокрЛП(Формат(КодОКПОКонтрагента,"ЧГ=0"));
        НовСтрока.РСчет            = СокрЛП(Формат(РСчетКонтрагента,"ЧГ=0"));
        НовСтрока.МФО             = СокрЛП(Формат(МФОКонтрагента,"ЧГ=0"));
        НовСтрока.Содержание     = Назначение;
        
        ДебетКредит  = СокрЛП(Спис[11+Дельта].Значение); //'D' - мы платим 'C' - нам платят
        Если ДебетКредит = "D" Тогда
            Приход = 0;
            Расход = Спис[10+Дельта].Значение/100; //Сумма в копейках
        Иначе
            Приход = Спис[10+Дельта].Значение/100; //Сумма в копейках
            Расход = 0;
        КонецЕсли;

        Если Расход > 0 Тогда //Расход
            НовСтрока.Расход         = Расход;
            НовСтрока.Приход        = 0;
        Иначе //Приход
            НовСтрока.Расход         = 0;
            НовСтрока.Приход        = Приход;
        КонецЕсли;
    КонецЦикла;    
    
    Если НЕ тзВыписка.Количество() И ФайлTXT.КоличествоСтрок() Тогда
        Предупреждение("В текущем файле нет платежей с данной датой выписки и расчетным счетом!");
    КонецЕсли;
    
    Возврат тзВыписка;    
КонецФункции
alienextrime, andr_andrey, Pasha.ks.ua, tsros, UNry2,

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