IE2017

Звук в 1С

Программирование - Практика программирования

Как просто воспроизвести звук в 1С ?
Вот пример обработки, демонстрирующей одно из решений.
Код открытый.

Как просто воспроизвести звук в 1С без внешних файлов (wav, mid) ?
Вот пример обработки, демонстрирующей одно из решений.
Код открытый.

Идеи решения:

1. Хранить звуковые файлы в макетах (двоичные данные) обработки или отчета.
2. Воспроизводить их стандартным медиаплеером так, чтобы медиаплеера не было видно.
3. Автоматически закрывать медиаплеер.

В модуле также есть процедура для воспроизведения звукового файла с указанием пути к файлу.

Буду рад, если кому идея пригодиться ;-)

PS: В обработке 6 звуков, для примера. Звук выбирается указанием числа в поле - от 1 до 6 (проверено на XP).

Для других ОС возможно понадобится другая командная строка. 

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

Наименование Файл Версия Размер
Звук.epf
.epf 307,58Kb
06.10.09
161
.epf 307,58Kb 161 Скачать

См. также

Комментарии
1. Ярослав Радкевич (WKBAPKA) 202 06.10.09 15:54 Сейчас в теме
2. Ярослав Радкевич (WKBAPKA) 202 06.10.09 15:55 Сейчас в теме
правда можно также хранить двоичные данные в хранилище значений, если использовать справочники
3. Олег Никоноров (nikolega) 147 06.10.09 18:13 Сейчас в теме
Да, но идея хранить данные в макете мало кем используется ...
4. Сергей (Che) Коцюра (CheBurator) 3387 06.10.09 18:19 Сейчас в теме
хм.. автор хочет сказать, что вытянув "звук" из хранилища он его не преобразует в файл на диске? если это так - то зачет! если не так - фуфло! ;-)
5. dushelov (Душелов) 06.10.09 18:27 Сейчас в теме
6. Олег Никоноров (nikolega) 147 06.10.09 22:12 Сейчас в теме
(5) Уважайте друг друга - поставил минус - объясни почему, есть лучше идея- сделай обработку - выложи - поделись идеей с другими.
7. dushelov (Душелов) 06.10.09 22:20 Сейчас в теме
(6) Минус поставлен комментарию.

>идея хранить данные в макете мало кем используется

Это просто пять!
echo77; deniseek77; coder1cv8; awa; +4 1 Ответить 2
8. Олег Никоноров (nikolega) 147 06.10.09 22:41 Сейчас в теме
По крайней мере я не встречал таких обработочек ))
9. Ярослав Радкевич (WKBAPKA) 202 06.10.09 22:45 Сейчас в теме
2(7): зри в корень.. если речь идет об обработке, которая не привязана к конфигурации, тогда только через макеты...
10. Ярослав Радкевич (WKBAPKA) 202 06.10.09 22:46 Сейчас в теме
плюс однозначно за оригинальность и простоту идеи, по крайней мере тут я такого не встречал
11. WellMaster (WellMaster) 98 07.10.09 09:40 Сейчас в теме
(4) Файл создается временный, и потом проигрывается.
(0) Под windows7 не работает, т.к. в нем нет проигрывателя mplay32. Есть wmplayer, но параметры запуска "wmplayer /play /close" отрабатываются не корректно: звук постоянно повторяется в плейере.
12. Андрей Григорьев (Borisych) 503 07.10.09 09:52 Сейчас в теме
Виста Бизнес и типовой медиаплеер - скрипт не выполняется, нужна другая команда. Кто знает какая?
13. Андрей Григорьев (Borisych) 503 07.10.09 09:57 Сейчас в теме
Использовал следующую
Код
WshShell.Run("""%programfiles%\Windows Media Player\wmplayer.exe"" /play /close "+ИмяФайла,0,0);
Показать полностью

14. Андрей Григорьев (Borisych) 503 07.10.09 10:00 Сейчас в теме
Если было включено повторение - то мелодия многократно повторяется :)
15. Юрий Португалов (Sprite) 469 07.10.09 11:22 Сейчас в теме
Принцип подходит и для хранения (кодирования) изображений.
16. Максим Арендаренко (Larkin) 383 07.10.09 11:59 Сейчас в теме
Идея стара как мир, я в обработке по КБ (http://infostart.ru/public/20208/) мануал по работе с самим КБ храню в макете в формате html контейнера... да и в типовых конфигурациях где-то встречал подобное... посему ни "+" ни "-" ставить не буду.
17. Ярослав Радкевич (WKBAPKA) 202 07.10.09 13:39 Сейчас в теме
2(16): все новое это хорошо забытое старое
nikolega; +1 Ответить
18. Оракул Айметдинов (jhfrek) 164 07.10.09 14:33 Сейчас в теме
(13) Как-то раз хотел сделать медиаплеер на 7.7 используя код:

WshShell.Run("""%programfiles%\Windows Media Player\wmplayer.exe"" /play /close "+ИмяФайла,0,0);

Получилось, но только я не знаю как проиграть несколько файлов один за другим, как в winamp. Интересно, есть ли выход в этой ситуации? Только без ВК!
19. Олег Никоноров (nikolega) 147 07.10.09 15:16 Сейчас в теме
(11) Верно

(4) Временный файл создастся и автоматически удалиться при закрытии 1С

(12) Поищи универсальный проигрыватель (а не медиаплеер), сомневаюсь, что его нет в Висте ...

(18) Создай плейлист - скорми его медиаплееру .... Команду посмотри в расширении плейлиста (Проводник - Сервис - Свойства папки - Типы файлов)
20. Андрей Скляров (coder1cv8) 3301 07.10.09 15:55 Сейчас в теме
То что автор впервые (видимо) для себя открыл тип макета "двоичные данные" и гордо написал в заголовке "без использования внешних файлов" (хотя это не правда) - это "минус".
За пример с параметрами командной строки медиаплеера - "плюс".
Итого 0.
21. Сергей (Che) Коцюра (CheBurator) 3387 07.10.09 16:05 Сейчас в теме
Идея хранить данные в макете стара как мир, т.е. по возрасту примерно как 7.7 ;-). В т.ч. таким способом изготавливаются обработки, инсталлирующие "из себя" недостающие ВК и прочее... Учите матчасть... Тем более, что такие вещи даже на ИСе пробегали уже давно (то ли у Маляева, то ли у Душелова)
22. Сергей (Che) Коцюра (CheBurator) 3387 07.10.09 16:08 Сейчас в теме
да, жаль что автор всех наколол лажовым заявлением "без внешних файлов" ;-) А на проигрывании звука в 1С медиаплеером еще Опланет в дремучие времена неплохо себе шпинга.. ээээ рейтинга нарубил.. ;-)
23. Дмитрий Шерстобитов (DitriX) 2491 06.01.12 00:33 Сейчас в теме
Какое отношение это имеет к 1С?
Запуск проги с параметром?

Бред, лучше бы просто сказал что в 1с есть такая штука как Сигнал()
24. Олег Никоноров (nikolega) 147 06.01.12 08:32 Сейчас в теме
(23) DitriX,
В обработке реализован пример как в программе средствами 1С вызвать воспроизведение звука, отличного от сигнал и не хранящегося по конкретному жесткому пути.
25. Дмитрий Шерстобитов (DitriX) 2491 06.01.12 13:56 Сейчас в теме
(24) но для воспроизведения - таки нужен жесткий путь...
Или и саму программу засунуть во внешние? Тогда опять вопрос - почему не сделали? И пути выбора программы воспроизведения тоже нету, автоопределения операционки и подстановки соответствующего пути - нету.
Комментариев что будет на серверах - не увидел...

З.Ы. Я просто к чему - обычному пользователю 1с - это не пригодится, а если ему будет интересно все же, то он ничего не сможет сделать если только у не не ХП, стоит тот плеер и т.д. и т.п.
А вот для программистов - ничего интересного...
26. Олег Никоноров (nikolega) 147 06.01.12 14:32 Сейчас в теме
(25) DitriX,
Если честно - я потратил время, чтобы определить простой путь для воспроизведения звукового файла по определенному событию в 1С. А выложил сюда обработку не для поднятия рейтинга, а для того чтобы другие меньше тратили время при решении аналогичной задачи.
Тем более я удалял эту обработку с проекта еще в 2009 году. Не понимаю почему администрация сайта восстановила ее :-)
27. Ranika (Ranika) 11.01.12 05:09 Сейчас в теме
Идея действительно очень занимательная, будет полезно для пользователя, которые всегда закрывает окна предупреждения
28. grigory пкш (dryms) 230 01.11.12 18:13 Сейчас в теме
Все скачали? Теперь в 1С будет еще больше свистелок и перделок)))
29. Артем Талицкий (Atal) 12 02.09.13 09:28 Сейчас в теме
Ставлю минус за истраченный стартмани. Автору необходимо было указать Операциооную систему (на Win 7) не работает:
{ВнешняяОбработка.Звук.МодульОбъекта(7)}: Ошибка при вызове метода контекста (Run): Произошла исключительная ситуация (0x80070002)
И что мешало дописать:
Исключение
Сообщить(ОписаниеОшибки());
а то получается:Не воспроизвело, догадайтесь почему.
30. "Я" ("Я") 25.09.13 22:54 Сейчас в теме
(29) Atal,

ну да, собственно можно было статьей написать и код выложить, три строки...
Прикрепленные файлы:
31. Денис Новиков (deniseek77) 87 25.09.13 23:00 Сейчас в теме
(8) nikolega, Если не использовал- то не надо и писать-в макетах можно хранить любые (в том числе и в двоичном формате данные), а вытаскиваются они 2 строчками кода.
32. Сергей Кудашкин (sikuda) 497 06.01.14 22:39 Сейчас в теме
1. Хранить звуковые файлы в макетах - Да
2. Воспроизводить звук средствами интернета http://infostart.ru/public/248770
Оставьте свое сообщение