Суммирование (среднее, минимум, максимум, количество чисел) выделенных ячеек отчетов, печатных форм, да и других приложений

24.10.08

Разработка - Работа с интерфейсом

Демо конфигурация для системы 1С:Предприятие 7.7 Суммирование (среднее, минимум, максимум, количество чисел) выделенных ячеек отчетов, печатных форм, да и других приложений. (c) Venger Alex, Odessa, 2008 Last Update: 29.06.2008 Идея проста: при копировании в буфер обмена (Clipboard) выделенных ячеек таблиц в буфер обмена попадают текстовые данные (ячейки по столбцам разделены символами табуляции, по строкам - символами переноса строк). Соотвественно, можно взять из буфера обмена этот текст, выделить числа и произвести соотвествующие математические манипуляции с числами и вывести результат (в строку состояния, например).

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
SumCells
.1214745059 515,15Kb
194
194 Скачать (1 SM) Купить за 1 850 руб.

Использование тоже просто: открываете конфигурацию в режиме программы,
включаете какой-либо режим просмотра (кнопки на панели инструментов или
пункты меню Режима просмотра), запускаете отчеты и выделяете нужные
ячейки отчетов, копируете их в буфер обмена (Clipboard) и видите в
строке состояния результат. При в ключенном режиме (кроме обычного),
опрос буфера происходит каждые 100 милисекунд, если в буфере появились
текстовые данные, то они добавляются к уже скопированным и происходит
пересчет с учетом добавленных данных, буфер при этом очищается, для
того, чтобы определить новые скопированные данные. Таким образом можно
суммировать и т.д., не связные диапазоны таблиц, выделяя нужные ячейки
и копируя, несколько раз подряд. Если нужно начать заново, то нажимаем Сброс.
Если необходимость в суммировании (или других режимах исчерпана), то стоит
перейти в обычный режим (кнопка на той же панели инструментов или пункт меню
Режима просмотра), для того, чтобы не происходило очищение буфера, если
туда попали текстовые данные. При закрытии 1С, естественно опрос буфера
прекращается, и режим становится обычным.

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

Как приятное следствие, Вы можете скопировать ячейки из одного отчета, потом
из другого, а потом, вообще, из открытого листа Excel, например, или Word,
или Блокнота, и это все будет проссумировано (или другое, в зависимости
от режима) и результат выведен в строку состояния.

При написании использовалась внешняя компонента AddIn_V7MyClipboard.dll.
Автор: Venger Alex, Odessa, 2008
Url: //infostart.ru/projects/2149/

При написании использовались функции для 1С:Предприятие 7.7
в глобальном модуле предоставленные by Sergey Popov, Usinsk,
Komi.

При написании использовалась внешняя компонента FormEx.dll.
Автор: АЛьФ
Url: http://www.dorex.ru/files/?formex_t.zip

Эти две функции стоит из глобального модуля удалить
(смысла в них нет для данной задачи, но ресурсы жрут):

/

/---------------------------------------------------- Процедура

ПриДвиженииМыши(Конт,Сост,КоординатаПоГоризонтали,КоординатаПоВертикали,ФСО) 

гл8ВывестиРасчетыClipboard();

КонецПроцедуры //---------------------------------------------------- //---------------------------------------------------- Процедура

ПриНажатииКнопкиКлавиатуры(Конт,КодКлавиши,Alt,Shift,Ctrl,Символ,ФСО) 

гл8ВывестиРасчетыClipboard();

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

 

См. также

Работа с интерфейсом Пользователь Платформа 1С v7.7 1C77 Абонемент ($m)

Часто встречающаяся проблема: потерялось Окно сообщений. Обработка исправляет эту "проблему" одним нажатием кнопки. Для обычных пользователей. Не требует программирования. Достаточно запустить обработку и нажать кнопку "Выполнить".

5 стартмани

17.01.2025    337    1    CheBurator    11    

6

Работа с интерфейсом Программист Платформа 1С v7.7 1C77 Абонемент ($m)

Создание и использование на формах в среде 1С 7.7 прогрессбара, индикатора, как в 1С 8.Х для контроля над длительными процессами. Реализовано средствами языка программирования 1С 7.7.

1 стартмани

06.06.2024    864    1    user1416274    17    

2

Работа с интерфейсом Логистика, склад и ТМЦ Системный администратор Программист Пользователь Платформа 1С v7.7 1С:Торговля и склад 7.7 Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Решение для разработчика и конечного пользователя для работы с фотографиями номенклатуры: систематизация, хранение, отображение, а также выгрузка на Яндекс-Диск и FTP (кроме версии лайт). Поддерживаются графические форматы: bmp, jpg, gif, tiff, а также png - не поддерживаемый штатными средствами 1С. Выполнено без использования внешних компонент (кроме функции выгрузки на FTP). Поставляется как в виде пустой конфигурации с набором объектов и модулей для работы с фото, так и в виде обновления к 1С:Торговля и склад 7.7. Выполнено в двух версиях: "полная" и "лайт".

2500 руб.

18.10.2022    6021    1    45    

4

Инструментарий разработчика Работа с интерфейсом Программист Платформа 1С v7.7 Абонемент ($m)

Обработка с фрагментами кода для программного использования набора цветов из коллекции WebЦвета 1с версии 8+ в 1с версии 77. Требуется предварительное подключение сторонней библиотеки FormEх. Будет полезно программистам 1с 77, 1с 8. Да и вообще при программировании на любом языке при потребности использовать коллекцию цветов WebЦвета.

1 стартмани

30.03.2022    5149    2    igor7777    4    

6

Работа с интерфейсом Программист Платформа 1С v7.7 1C77 Бесплатно (free)

Публикация имеет цель обратить внимание на возможность улучшения интерфейса.

15.12.2021    5035    77    Cерый    13    

8

Работа с интерфейсом Программист Платформа 1С v7.7 1C77 Абонемент ($m)

Простая и удобная внешняя обработка для выбора цвета без применения внешних компонент.

1 стартмани

09.06.2020    7571    4    vap_pig    5    

4

Учет рабочего времени Работа с интерфейсом Программист Бухгалтер Пользователь Платформа 1С v7.7 1C77 Россия Абонемент ($m)

Обработка производственного календаря с возможностью импорта и экспорта xls для 1С 7.7 (7.70.027) без изменения конфигурации.

1 стартмани

18.09.2019    13238    6    Jill    8    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. venger 2124 02.07.08 11:20 Сейчас в теме
Эти две функции стоит из глобального модуля удалить
(смысла в них нет для данной задачи, но ресурсы жрут):

Код
 //----------------------------------------------------
Процедура ПриДвиженииМыши(Конт,Сост,КоординатаПоГоризонтали,КоординатаПоВертикали,ФСО)
        гл8ВывестиРасчетыClipboard();
КонецПроцедуры
//----------------------------------------------------

//----------------------------------------------------
Процедура ПриНажатииКнопкиКлавиатуры(Конт,КодКлавиши,Alt,Shift,Ctrl,Символ,ФСО)
        гл8ВывестиРасчетыClipboard();
КонецПроцедуры
//----------------------------------------------------
Показать полностью


fixxxer834; motogon; +2 1 Ответить
2. пользователь 15.01.09 21:50
Сообщение было скрыто модератором.
...
3. СССР 13.08.09 11:28 Сейчас в теме
Вот это действительно достойно. Не знал.
4. Cerebellum 15.10.09 16:38 Сейчас в теме
Как бы это все внести в свою конфигурацию. Я не программист, но элементарные действия сделаю.
Пробовал перенести данные из глобальника в глобальник - не получается, а очень нужно.
5. venger 2124 15.10.09 17:14 Сейчас в теме
(4) Давайте так, сегодня-завтра, напишу описание, как внедрить в свою конфу по шагам и выложу.
6. venger 2124 16.10.09 21:11 Сейчас в теме
(4) Глянул, освежил память, инструкцию писать и смысла то нет;) Все очень просто. Помимо кода из глобальника, возьмите файлы: "AddIn_V7MyClipboard.dll" (более свежий можно тут качнуть: http://venger.narod.ru/storage/1Cv77_V7MyClipboard_dll.zip, хотя и тот, что в архиве лежит, тоже пойдет) и "formex.dll" (качнуть можно вот тут, например: http://www.dorex.ru/files/?formex_t.zip) и кладете эти файлы в папку с базой или в папку "Bin" с программой 1С. И еще в интерфейсы пользователей копируете панель инструментов с кнопками из демо-конфы, с теми же формулами в кнопках, иконки по вкусу, да и все... Панельку скопировать очень просто, в окне конфигуратора в демо-конфе, есть вкладка "Интерфейсы", переходите на нее, дважды жмакате мышкой на интерфейсе, в демо-конфе это "Новый", выбираете в окошке "Панели инструментов", открывается окно со списком панелей, выделяете панель (она там одна: "РежимПросмотраТаблицы"), правой кнопкой мыши на нее жмакаете, выбираете "Запомнить", потом в свой конфе также в панелях вставляете и все... Единственно что, какая у Вас конфа? Ну например, Вы можете в свой конфе скопировать что-нибудь из ячеек отчета в буфер обмена и вставить в блокнот, например? Если да, то все Ок. Если нет, то у Вас включена защита таблиц. Обычно в типовых в настройках конфы (в режиме программы) должна быть настройка связанная с защитой таблиц, вот, например, в украинской торговле в меню "Сервис"->"Настройка параметров учета" на вкладке "Вспомогательные" галочка "Запретить редактирование таблиц".... Она должна быть отключена... Вроде как все, если что не получается, то спрашивайте...
7. Cerebellum 18.10.09 16:28 Сейчас в теме
С библиотеками и интерфейсами как раз все понятно. А вот по поводу глобальника...? Что и куда надо скопировать из демо-кофы? Конфигурация нестандартная, написанная с нуля. Копировать в начало или в конец? Все подряд или не все? И т.д.
8. venger 2124 19.10.09 12:11 Сейчас в теме
(7) В своем глобальнике ищете последнее объявление глобальной переменной, т.е. последнюю надпись типа "Перем ИмяПеременной Экспорт;", после нее у Вас в глобальнике должны начинаться описания/определения функций и процедур, вот сразу после этой надписи и перед функциями вставляете все, начиная у меня с раздела "Глобальные переменные" и до раздела "Предопределенные процедуры", но их не включая. В разделе "Предопределенные процедуры", ищете у себя в глобальнике процедуру "ПриНачалеРаботыСистемы()" и в начало ее, но после объявления в ее теле переменных, если таковые есть, обычно они объявляются так "Перем ИмяПеременной;", вставляете код, который у меня в этой процедуре прописан, это загрузка внешних компонент. Процедуры "ПриДвиженииМыши" и "ПриНажатииКнопкиКлавиатуры" вставлять не надо, а последнюю строчку, раздел "Тело модуля", вставляете в конец своего глобальника. Все.
Cerebellum; +1 Ответить
9. Cerebellum 22.10.09 19:35 Сейчас в теме
Спасибо, все работает :D
10. _Vovik 98 10.10.18 10:51 Сейчас в теме
Скачал. Не работает. Win10
11. _Vovik 98 10.10.18 10:54 Сейчас в теме
Туплю. Работает. Надо нажать Ctl+C
Оставьте свое сообщение