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

Хранилище

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

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



История благодарностей участнику l2d808 ::: Спасибо сказали: 62 раз
Дата поста: В теме: За сообщение: Спасибо сказали:
13.08.18, 13:49 Запрет на отмену проводки.
Вышел с ситуации так:

в модуле документа прописал:
Процедура ОбработкаУдаленияПроведения(Отказ)
    Сообщить("Відміна проведення ЗАБОРОНЕНА! Зверніться до Адміністратора!");
    Отказ = Истина;
КонецПроцедуры


Если кому интересно, дальше можно ставить любое условие.
nmf,
07.03.18, 15:36 Обєднані ячейки в Ексель
С огромным удовлетворением сообщаю уважаемому сообществу! Задача обрела решение.
Для 1с77 мы можем использовать такой коД:
Сообщить(Лист.Cells(Строка_,Колонка).Address); //Сообщает адрес ячейки
Сообщить(Лист.Cells(Строка_,Колонка).MergeCells); //Сообщает, являэться ли ячейка в объединенном диапазоне (-1 True)
Сообщить(Лист.Cells(Строка_,Колонка).MergeArea.Address);//Сообщает, область в которуювходит ячейка в объединенном диапазоне
Alex729, mister-x, Vofka,
15.10.12, 9:21 Руководство пользователя 8.3
Простите, а какой пароль на архив?
Said,
30.07.12, 13:15 ошибка загрузки модуля CONFIG.DLL
Цитата(Наталия Головченко @ 30.07.12, 14:05) *
Проверила, нет этого файла. А что нужно сделать, что бы устранить проблему?

1. найти эту компоненту в интернете, скачать, установить.
или
2.Если эте компонента не отвечает за чтото серьезное, удалить ссылки на нее в конфигурации...
или
3. Поручить эту задачу специалисту.

http://openconf.1cpp.ru/
скачайте OpenConf 1.0.1.1
Наталия Головченко,
26.07.12, 9:03 Производительность алгоритма.
Цитата(Vofka @ 26.07.12, 9:03) *
Я думаю, на 5000 строк вы особой разницы не почувствуете smile.gif . Та и писать то тут, в принципе, фигня. Процентов 70 кода будет одинакового в обоих обработках wink.gif

:-) Уже почти дописал... Протестирую и напишу разницу во времени... А так же код... Может кому пригодится.. ))))

Для теста я использовал:
1. Виртуальный диск выделенный в оперативной памяти.
2. Два ексель документа по 5000 позиций
3. Алгоритм прямой роботы с ексель. (А)
4. Алгоритм роботы через Таблицу Значений. (Б)
Результат:
Алгоритм А показал 5 минут и 19 секунд
Алгоритм Б показал 52 секунды.

Привожу Вашему вниманию более быстрый biggrin.gif
Извините за то-что он не изящен. biggrin.gif
Торпился написать и протестить. 31000000.gif

Процедура Выполнить2()
Имя=КаталогИБ()+"\xls\open.xls";
Лист=СоздатьОбъект("Excel.Application");
Лист.Workbooks.Open(Имя); //Добавляем новый документ
ТЗ1 = СоздатьОбъект("ТаблицаЗначений");
ТЗ1.НоваяКолонка("Код");  
ТЗ1.НоваяКолонка("Имя");
ТЗ1.НоваяКолонка("Цена");
Лист.ScreenUpdating = 0;  
Лист.EnableEvents = 0;    
Лист.Visible = 0;        
сч=0;
строкаЕхель=1;
пока сч<10 Цикл
    Ячейка=СокрЛП(Лист.Cells(строкаЕхель,2).Value);     
    Если Ячейка="" Тогда
        сч=сч+1;
    Иначе
        сч=0;
        ТЗ1.НоваяСтрока();
        ТЗ1.Код=СокрЛП(Лист.Cells(строкаЕхель,1).Value);
        ТЗ1.Имя=СокрЛП(Лист.Cells(строкаЕхель,2).Value);
        ТЗ1.Цена=0;
        //Сообщить(ТЗ1.Код);
        //Сообщить(ТЗ1.Имя);
    КонецЕсли;
    строкаЕхель=строкаЕхель+1;
КонецЦикла;      


Имя2=КаталогИБ()+"\xls\test.xls";
Лист2=СоздатьОбъект("Excel.Application");
Лист2.Workbooks.Open(Имя2); //Добавляем новый документ
ТЗ2 = СоздатьОбъект("ТаблицаЗначений");
ТЗ2.НоваяКолонка("Имя");  
ТЗ2.НоваяКолонка("Цена");
сч=0;
строкаЕхель=1;
пока сч<10 Цикл
    Ячейка=СокрЛП(Лист2.Cells(строкаЕхель,1).Value);     
    Если Ячейка="" Тогда
        сч=сч+1;
    Иначе
        сч=0;            
        ТЗ2.НоваяСтрока();
        ТЗ2.Имя=СокрЛП(Лист.Cells(строкаЕхель,1).Value);
        ТЗ2.Цена=СокрЛП(Лист.Cells(строкаЕхель,6).Value);
        //Сообщить(ТЗ2.Имя);
        //Сообщить(ТЗ2.Цена);
    КонецЕсли;
    строкаЕхель=строкаЕхель+1;
КонецЦикла;

Имя3=КаталогИБ()+"\xls\Результат.xls";
Лист3=СоздатьОбъект("Excel.Application");
Лист3.Workbooks.Open(Имя3); //Добавляем новый документ
строкаЕхель=1;
ТЗ1.ВыбратьСтроки();
Пока ТЗ1.ПолучитьСтроку()=1 Цикл
    ТЗ2.ВыбратьСтроки();
    Пока ТЗ2.ПолучитьСтроку()=1 Цикл
        Если ТЗ1.Имя=ТЗ2.Имя Тогда  
            Лист3.Cells(строкаЕхель,1).Value=ТЗ1.Код;
            Лист3.Cells(строкаЕхель,2).Value=ТЗ1.Имя;
            Лист3.Cells(строкаЕхель,3).Value=ТЗ1.Цена;
            //Сообщить();
            //Сообщить(ТЗ1.Код);
            //Сообщить(ТЗ1.Имя);
            //Сообщить(ТЗ2.Цена);
            строкаЕхель=строкаЕхель+1;
        КонецЕсли;
    КонецЦикла;
КонецЦикла;  
//******************************************************
Лист.ScreenUpdating = 1;  //Ускореем
Лист.EnableEvents = 1;    //Вывыд
Лист.Visible = 1;         //в EXEL
//******************************************************    
Сообщить(ТекущееВремя());
форма.закрыть();
КонецПроцедуры
Vofka,
21.07.12, 5:46 Обработка Клиент-Банк для Бухгалтерии 1.2.5.3 (и старше) Украина 8.2 доточена
Загрузка выписок из Банк-Клиент, 6-ть банков (ОТП, Сбербанки России, Південний, Камбіо, УкрЕсІм Банк, СЕБ Банк, Приват24 ,УкрСибБанк) в конфигурацию 1С Бухгалтерия для Украины версия 1.2.5.3 (и старше) платформа 8.2. Обработка должна работать и в других конфигурациях, не тестировал.
Доработанная стандартная обработка из конфигурации.

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

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

Изменены в модуле объекта стандарные процедуры и функции:
ЗаполнитьДокументыНаИмпорт - сдесь вызиваются обработчики распознавания файлов обмена и формируется таблица документов для импорта.
ПолучитьДатуИзСтроки - добавлено распознавание дат в формате "дд.мм.гггг"

Выбор обработчика происходит автоматически исходя из МФО банка выбранного расчетного счета, который выбран на форме.

Какие форматы поддерживаются:
ОТП (МФО 300528) - файл Excel
Сбербанки России (МФО 320627) - DBF (реализована загрузка нескольких файлов одновременно, нужно в пути к файлу указать только путь к папке)
Південний (МФО ) - хитрый формат *.ord
Камбіо (МФО 394523, 380399) - сам файл базы на Access
УкрЕсІм Банк (МФО 380333) - DBF
СЕБ Банк (МФО 300175) - 1c_to_kl.txt - этот файл имеет старую структуру 1С потому ее также нужно загружать по хитрому.
Приват24 (МФО 300711) - DBF
УкрСибБанк (МФО 351005) - CSV

Не реализован выбор путей к файлам загрузки в интерактивном режиме, так как у меня все пути записываются один раз и не изменяются, достаточно только скопировать и вставить при настройке путей загрузки выгрузки.




©


 i 

1. добавлено описание и собственно сама обработка (Batchir)
2. добавив рисунки і авторство (mister-x)
 
AbrIcosa, Accounter, akarell, Andre1cprog, anna_n, ant1374, ata411, bogdan3112, buvae, ChernoVl, CheSlavich, cloud, cov2107, dandyp, demlir, dm68, dobruan, dolchick, emeraldik, Fargo, Flexy, iswat, izotov_ua, Joseph, krakodeel, kww-vin, levshak, light07, MATEVI, msokolan, mvk2000, papasha95, Pit_76, ruda2007, sasha007, slkpd, spmig, staslg, tanatoka, tems, Tetis1, Ulia, v0v, vitfish, vladam, vladmis, vov_ka, VVN, Warlock, Елена_П,
18.07.12, 12:53 С днем рождения, Борис!
Хотя дата и не круглая.... Уверен.... Вам приятно... Звучали слова хвалебные... А я поздравляю, не зная Вас... Вы многим помочь смоли, и это по речам хвалебным мы поняли..... Здоровья и лет до четыреста Сообщество Вам желает(я не покривил душой? )) Живите и радуйте правнуков....внуков,детей,соседей ))))..... С Днем Варенья ВАС!!!!!!!!!!!!!!!!!!!!!
Борис Нуралиев,
09.05.12, 9:49 Названы страны с самыми высокими налогами
Более правдоподобно в данной ситуации звучала бы шутка:
- Чем отличается программист от политика?
- Программисту платят деньги за работающие программы.
5_kopeek, Ardi,
01.07.11, 12:06 Камера и 1с
Цитата(kov0404 @ 01.07.11, 12:58) *
а прикреплять степлером , или вставлять в бланк накладной? )))) 09000000.gif

Вставлять в бланк форму.
Я только что нашел обработку, Достаточно элегантно.
Перем oDevice[5];
Device = CreateObject("WIA.DeviceManager");
Количество = Device.DeviceInfos.Count;
Для К=1 По Количество Цикл
    Если Device.DeviceInfos(к).Type = 3 Тогда
        Попытка
            oDevice[к] = Device.DeviceInfos(к).Connect();
        Исключение
            oDevice[к] = 0;
        КонецПопытки;
    Иначе
        oDevice[к] = 0;
    КонецЕсли;
КонецЦикла;
    
Для К = 1 По Количество Цикл
    Если oDevice[к] <> 0 Тогда
        Item = oDevice[к].ExecuteCommand("{AF933CAC-ACAD-11D2-A093-00C04F72DC3C}");
        Image = Item.Transfer("{557CF401-1A04-11D3-9A73-0000F81EF32E}");
        Image.SaveFile("D:\aaa.jpg");
    КонецЕсли;
КонецЦикла;


Я проверял работает супер. Если кому нада пользуйтесь
bob210250, Vofka,

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