Суммирование ячеек табличного документа для платформы 7.7

28.10.09

Разработка - Механизмы платформы 1С

При выделении ячеек табличного документа в строке состояния 1С выводится сумма чисел в этих ячейках.

Скачать файлы

Наименование Файл Версия Размер
-
.txt 3,26Kb
185
.txt 3,26Kb 185 Скачать бесплатно
-
.ert 29,00Kb
139
.ert 29,00Kb 139 Скачать бесплатно

При выделении ячеек табличного документа в строке состояния 1С выводится сумма чисел в этих ячейках.
Допускается выделение произвольных областей (при нажатой клавише Ctrl), однако повторный клик мышкой на ячейке, уже выделенной ранее, не снимает выделение. Увы, значение ячейки плюсуется еще раз.

Содержимое ячейки преобразуется в формат, понятный 1С: убираются разделители триад (апострофы и пробелы), разделитель дробной части запятая заменяется на точку.

В примере использована внешняя компонента TableDoc Дмитрия Трапезникова ака trad
//infostart.ru/public/20089/
Компонента позволяет порождать событие при изменении выделения в таблице.

Файл внешней компоненты TableDoc.dll и файл Синтакс-Помощника TableDoc.als 
надо переписать в каталог программы, либо в каталог информационной базы, 
либо в папку ExtForms каталога информационной базы.
Внешняя компонента не требуют регистрации в реестре Windows, но первый запуск 1С с ее загрузкой надо сделать с правами администратора.

При внедрении в реальной базе данных в глобальный модуль необходимо добавить текст согласно файлу ГлМодуль.txt.
В модуль каждого отчета, где необходимо суммировать ячейки таблицы, добавляется текст согласно примеру.

При закрытии диалогового окна формы, создающей таблицу, строка состояния очищается.

К сожалению, не нашел способ вычислять сумму для таблиц, открытых из файла. 
Требуется наличие модуля формы, где будет размещена процедура ПриИзмененииВыделения.
 
При использовании штатной процедуры 1С ОбработкаОжидания сумма появляется в строке состояния с секундной задержкой, выставить интервал меньше невозможно. 
Чтобы выводить строку состояния сразу после вычисления суммы, можно воспользоваться ОбработкойОжидания из внешней компоненты FormEx Алексея Фёдорова aka АЛьФ
http://www.dorex.ru/?projects&formex
В этой ОбработкеОжидания интервал выставляется в миллисекундах.
Текст примера содержит подключение и использование FormEx, но эти строки закомментарены.

Элегантный вариант суммирования создан Александром Венгером,
//infostart.ru/public/16000
разработавшим внешнюю компоненту AddIn_V7MyClipboard.dll для операций с буфером обмена. 
Необходимость делать лишний клик мышкой компенсируется возможностью суммировать числа из любых полей, в том числе из других приложений.

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

См. также

"Виртуальный" работник на платформе 1C v7.7

Механизмы платформы 1С Платформа 1С v7.7 Конфигурации 1cv7 Бесплатно (free)

В статье расписаны примеры из жизни использования "Виртуального" работника. Разобраны вопросы, возникающие при работе с ним.

28.11.2021    1545    user707242_Gold_karas    18    

5

Асинхронное программирование в 1с77 без внешних компонент. Обратные вызовы.

Механизмы платформы 1С Платформа 1С v7.7 Абонемент ($m)

Пример построения программного кода для достижения функционала обратных вызовов (call back) во внешних обработках исключительно штатными средствами. Тестировалось на платформе 1с77 релиз 027. Конфигурация значения не имеет.

1 стартмани

06.10.2018    7444    Vortigaunt    5    

11

Особенности разделения объектной модели документа и базы данных в 1С 7.7. Забавный глюк

Механизмы платформы 1С Оперативный учет 7.7 Абонемент ($m)

Когда занимаешься разработкой в среде 1С, редко задумываешься о том, что программным кодом ты работаешь с объектной моделью базы данных, а не с самой базой данных. И что это вообще разные вещи. Ты создаешь объекты: документы и справочники, записываешь их - и в базе данных появляются соответствующие записи. Это настолько привычно, что когда сталкиваешься с нетипичным поведением платформы, первым делом думаешь: надо протестировать базу, она битая. В этой статье я хочу разобрать одну интересную ситуацию, которая как раз демонстрирует такое поведение. Описанная ниже ситуация воспроизводится как в файловом, так и в клиент-серверном (SQL) варианте. Тестировалось на версии платформы 1с77 релиз 027.

1 стартмани

16.05.2018    10125    Vortigaunt    26    

5

Использование классов .Net в 1С для новичков

Механизмы платформы 1С Платформа 1С v7.7 Платформа 1С v8.3 Бесплатно (free)

Руководство для новичков. Написав статью http://infostart.ru/public/238584/, я понял, что многие не понимают того, что написано. Поэтому в этой статье постараюсь более подробно остановиться на азах и без кода на вражеском языке (C#)

27.01.2016    93963    Serginio    116    

188

Все про картинки в 1С 7.7, ну или почти все...

Механизмы платформы 1С Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

В 1С 8 наличие картинок товаров предусмотрено изначально, а в 7.7 такого нет. Проблема существует и ее исправляют, но это, как правило, частные случаи, касающиеся, например, печати прайса http://infostart.ru/public/289876/ , показу картинок в справочнике номенклатура http://infostart.ru/public/17125/, файловый менеджер картинок товара http://infostart.ru/public/15239/ или просто конфигурации работы с картинками http://infostart.ru/public/21142/ (не стремился дать полный обзор, поэтому не попавшие не обижайтесь :). Что не устроило – информация разбросана по статьям, необходимость дополнительно напрягаться, чтобы это заработало. Здесь я попытался собрать все «до кучи», а так же дать необходимые ссылки для желающих «копнуть вглубь».

1 стартмани

18.11.2014    43977    95    kitminsk    18    

20

ЗаполнитьЗначенияСвойств - заставляем работать в 7.7

Механизмы платформы 1С Платформа 1С v7.7 Конфигурации 1cv7 Бесплатно (free)

Если вы используете в работе 1С:Предприятие 8.х, то наверняка знакомы и с замечательной системной процедурой, как ЗаполнитьЗначенияСвойств(). Ее использование помогает значительно упростить написание программного кода в ряде случае, делает его (код) более наглядным и простым. Но что же делать тем, кто до сих пор использует (постоянно или иногда) 1С:Предприятие 7.7?

24.07.2014    23721    tomvlad    5    

14

Динамическая фильтрация в справочнике при вводе наименования

Механизмы платформы 1С Платформа 1С v7.7 Конфигурации 1cv7 Россия Бесплатно (free)

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

02.07.2012    18358    maxpiter    62    

15
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Арчибальд 2706 26.10.09 07:31 Сейчас в теме
Даже смотреть не надо. Плюс однозначно :)
2. a_shpak 45 26.10.09 14:11 Сейчас в теме
Спасибо, камрады. Готовлю еще одну обработку - выгрузка в Excel с форматированием, закреплением областей, гиперссылками (WWW и mail), формулами в ячейках. Платформа - ФормЕкс и Йоксель. Думаю, будет интересно.
А по суммированию... Произнесу вопрос корифеям внятно. Как прикрутить технологию к "голой" MXL таблице? Например, открытой из файла?
Сейчас вычисление запускается из модуля формы обработки.
3. Арчибальд 2706 26.10.09 14:28 Сейчас в теме
(2) Это поле сильно перепахано... И засеяно велосипедами... :)
6. Boroda 90 27.10.09 13:29 Сейчас в теме
(2) О! Вот это было бы здорово! Будем ждать-с...
4. a_shpak 45 26.10.09 22:22 Сейчас в теме
Пардон, уточню.
Выгружал в OpenOffice (и чего все засуетились... Подумаешь, каких-то 14 тыс. деревянных деноминированных на рабочее место). Формулы не хотят работать, а вроде бы должны.
Информации на форумах много, но рассчитана на программеров высокого уровня. Готовых решений вообще не нашел.
5. Altair777 644 27.10.09 10:29 Сейчас в теме
(0) А где красивый скриншот? :o
7. GSoft 2235 28.10.09 11:09 Сейчас в теме
ТрассировкаТЗ<<?>>(ТЗ,"ТЗ");
Процедура не обнаружена (ТрассировкаТЗ)

глСостояниеСуммаТЗ<<?>>(Менеджер.ПолучитьВыделенные(),Таблица);
Процедура не обнаружена (глСостояниеСуммаТЗ)


ну это то ладно в гл модуле сидит, а первая

8. a_shpak 45 28.10.09 13:15 Сейчас в теме
(7) Упс. Не доглядел. В своих тестовых базах сразу добавляю в ГлМодуле простую трассировочку таблиц и списков значений, поэтому и не ругнулась. Удобно для отладки.
Сейчас включу в файл ГлМодуль.txt.
Оставьте свое сообщение