Разрабатывая отчет и печатную форму, иногда, нужно в строке вывести текст в кавычках. Многие сразу теряются и не знают как это сделать - хотя все просто!
Нужно вмсето одной поставить двойные кавычки, вот пример:
""Рога и копыта"" покажет как "Рога и копыта", код пример:
СтрокаУслуга = "Оказание услуг питания для компании ""Рога и копыта"", по адресу:";
или, еще можно вывести используя код символа кавычки: Симв(34)
******************************* FAQ **************************************
(1) Как организовать дозвон? (тонкости организации дозвона)
1. Во первых, надо вручную создать подключение в списке удаленного
доступа (win 2000 - пуск, настройка, сеть и уд.доступ, создание
нового подключения).
Или создать подключение с помощью компоненты (см. "Атрибуты
подключений" и "СохранитьНастройкиПодключения()").
2. Если импульсный набор, то перед номером телефона надо ставить "p"
напр "p212121", тоновый - по умолчанию или "t". Если необходимо ждать
гудка после цифры, то ставится "w", напр. "t8w0952223333".
3. (только если RAS-сервер находится под управлением Windows 95-98)
Если система-клиент NT, 2000 или XP тогда в свойствах созданного
в п.1 соединения в разделе "Безопасность" выберите возможность
отправления незашифрованного пароля (win 2000 - закладка
"безопасность", п. Дополнительные (особые параметры), кн
"Настройка", п.Разрешить следующие протоколы, галочка
ТОЛЬКО на "Незашифрованный пароль PAP")
4. При вызове дозвона, необходимо использовать имя созданного в
п.1 подключения в качестве первого параметра.
5. При использовании процедуры "ОбработкаВнешнегоСобытия" (последний
параметр = 1 в Дозвониться (RASDIAL), ПолучитьПисьмо,
ПолучитьВсеПисьма (POP3), ОтправитьПисьмо, ОтправитьВсеПисьма(SMTP)
форма подключения в обязательном порядке должна быть в "фокусе",
иначе события могут теряться. Вернее они не теряются, а начинают
(пытаются) обрабатываться в глобальном модуле.
*********************************************************************
(2) Через какие объекты добраться до общих методов ?
Если методы и свойства "общие" это значит, что у объектов POP3 и SMTP есть одинаково действующие
методы и свойства.
!!! Отметим при этом, что Получ.РабочийКаталог<>Отпр.РабочийКаталог !!!
"РабочийКаталог" - одинаковое свойство для объектов POP3 и SMTP
*********************************************************************
(3) Почему при дозвоне компонента 3 раза подряд генерирует
событие "Начало Аутенфикации"?.
Дозвон происходит через системную DLL'ку RasDial.
Все события, которые генерируются этой DLL'кой перенаправляются
компонентой DialMail в 1С (процедура ОбработкаВнешнегоСобытия(...))
Так что от компоненты в данном случае ничего не зависит.
Причина этого (можно предположить) лежит на уровне того сервера,
к которому идет подсоединение (кто мешает аутенфикацию
проводить 3 раза или 3-мя различными способами?).
*********************************************************************
(4) При дозвоне (отправке, приеме почты) у меня в форме перестают
генерироваться события в процедуре ОбработкаВнешнегоСобытия(...),
хотя дозвон (отправка, прием почты) продолжает свою работу.
Это глюк 1С. Проявляется иногда во время работы компоненты при
сворачивании окон программ,открытия новых окон программ, при
потере фокуса 1С-Предприятием. Лечится это следующим образом.
На самом деле все события, сгенерированные компонентой, не пропадают
если процедуру ОбработкаВнешнегоСобытия(...) разместить
в глобальном модуле. В этом случае нам нужна будет глобальная
переменная - контекст нашей формы. Все переменные, которые нам
понадобятся в процедуре ОбработкаВнешнегоСобытия(...), можно
сделать либо глобальными, либо разместить на нашей форме в виде
невидимых реквизитов.
КоличествоСобытий - реквизит, размещенный на нашей форме
========================================
*********************************************************************
(5) Можно ли использовать дозвон для разговоров по телефону?
Нет. Компонента не предназначена для простых звонков на
телефон. Только для установления "сетевого" соединения между
2-мя компьютерами (например, между клиентским компьютером и
компьютером провайдера).
*********************************************************************
(6) Хотелось бы использовать компоненту DialMail в проектах,
написанных на Visual Basic, Delphi и т.д.
Компонента 1С хоть и полностью COM объект, но интерфейс
особый, свой - 1С-ий. Чтобы работать с данной компонентой
из других средств разработки, надо полностью переписывать
компоненту. Мне это не нужно, да и нет времени.
Модули Synapse, на которых базируются почтовые клиенты компонеты, лежат
в http://www.ararat.cz/synapse/ , могу прислать примеры компоненты
и интерфейсный модуль RasUnit.pas (для облегченной работы с RAS API -
тоже кстати из инета). Могу оказать посильную помощь, если что-то с этими
исходниками будет неясно. Но полностью исходники выложу в свободное
распространение только когда не буду поддерживать компоненту.
*********************************************************************
(8) Почему при передаче/приеме почты возникает ошибка 10054?
10054 - "Connection reset by peer", т.е. "Соединение сброшено удаленной
системой"
Происходит в результате:
1. Выключения сокета на удаленной машине в
рез-те ресета или таймаута
2. Вызывается локальной машиной при обнаружении потери
соединения (например, если дозванивались по dial-up и соединение
разорвалось - свойственно плохим модемам и плохим тел. линиям)
3. Связано с неправильным использованием "потоков" при приеме/передаче
Например, последовательность
может вызвать именно эту ошибку.
Пояснение: Т.к. получение запущено в отдельном потоке (3-ий параметр=1),
команда отключения вызовет закрытие сокета. Поток, который принимает почту,
из-за закрытия сокета "внешним процессом" инициирует данную ошибку -
фактически причина №2.
*********************************************************************
(9) RasDial: Как задать импульсный/тоновый набор номера,
паузу для ожидания гудка, и т.п. ?
Начинаться номер телефона может с "p" или "t" - cоответственно импульсный
или тоновый набор номера, по умолчанию - тоновый набор номера.
"w" - пауза, дождемся гудка - "линия свободна", "," - пауза в не помню сколько
времени (1 сек?) Пример задания телефонного номера: p8w095,,1234567
В данном примере - 'p' - импульсный набор, после '8' пауза, дождемся гудка,
после '095' подождем 2 сек и продолжим набирать номер. Более подробную
информацию по данным управляющим символам можно найти на просторах интернета.
Сообщение «Ошибка загрузки внешней компоненты для склонения ФИО! Функции склонения будут недоступны!» при запуске конфигурации «1С:Предприятие Зарплата и Управление Персоналом 2.5 появляется в случае отсутствия компоненты NameDecl.dll или если данная компонента не зарегистрирована в системе (обычно это бывает после установки платформы 1cv8 не под правами администратора операционной системы).
В случае отсутствия компоненты, ее можно найти на диске ИТС и переписать в каталог /bin/ установленной платформы «1С:Предприятие 8.
Если после этого ошибка все равно остается (такое возможно, например, при работе под управлением ОС «Windows Vista» или «Windows 7) – необходимо зарегистрировать компоненту «вручную».
Для этого в командной строке ОС можно набрать команду regsvr32 «[Путь к DLL]\NameDecl.dll» и выполнить ее под правами администратора.
Здесь [Путь к DLL], скорее всего, для платформы 1cv81 – «С:\Program Files\1Cv81\bin\», а для платформы 1cv82 – «С:\Program Files\1cv82\8.2.9.356\bin\». При наборе пути к файлу необходимо заключить его в двойные кавычки.
Если при регистрации таким способом возникла ошибка – «Модуль «[Путь к DLL]\NameDecl.dll» загружен, но не удалось выполнить вызов DllRegisterServer, код ошибки 0х80070005, то можно попробовать выйти из положения следующим образом:
1. На компьютере находим файл NameDecl.dll (скорее всего, для платформы 1cv81 он находится в «С:\Program Files\1Cv81\bin\», а для платформы 1cv82 в «С:\Program Files\1cv82\8.2.9.356\bin\»). Для найденного файла создаем ярлык и выносим его на рабочий стол.
2. На рабочем столе правой кнопкой мыши вызываем свойства этого ярлыка.
3. В свойствах на закладке «Ярлык» в окне «Объект» перед путем к файлу вставляем команду regsvr32 (помним, что путь должен быть в двойных кавычках).
4. На этой же закладке свойств ярлыка жмем на кнопку «Дополнительно». В открывшемся диалоге устанавливаем флажок «Запуск от имени администратора» и сохраняем внесенные изменения.
5. Запускаем ярлык для регистрации компоненты NameDecl.dll (обычно запуск регистрации через ярлык достаточно произвести один раз).
6. После регистрации компоненты ярлык можно удалить.
Число - Число, которое необходимо преобразовать в строку прописью.
Форматная строка представляет собой строковое значение, включающее параметры форматирования. Параметры форматирования перечисляются через символ ";" (точка с запятой). Если параметр не указывается, используется значение параметра по умолчанию.
Каждый параметр задается именем параметра, символом "=" (равно) и значением параметра. Значение параметра может указываться в одинарных или двойных кавычках. Это необходимо, если значение параметра содержит символы, используемые в синтаксисе форматной строки.
Л (L) - Код локализации. По умолчанию используется код локализации, установленный в операционной системе. Примеры кодов локализации: ru_RU - Русский (Россия); en_US - Английский (США).
НП (SN) - Включать/не включать название предмета исчисления (Булево), по умолчанию - Истина.
НД (FN) - Включать/не включать название десятичных частей предмета исчисления (Булево), по умолчанию - Истина.
ДП (FS) - Дробную часть выводить прописью/числом (Булево), по умолчанию - Ложь.
Параметры предмета исчисления - Представляет собой строковое значение, определяющее параметры предмета исчисления. Параметры предмета исчисления перечисляются через "," (запятая). Формат строки зависит от кода локализации.
Для русского и белорусского языков (ru_RU, be_BY)
"рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2", где:
"рубль, рубля, рублей, м" – предмет исчисления:
рубль – единственное число именительный падеж,
рубля – единственное число родительный падеж,
рублей – множественное число родительный падеж,
м – мужской род (ж – женский род, с - средний род);
"копейка, копейки, копеек, ж" – дробная часть, аналогично предмету исчисления (может отсутствовать);
"2" – количество разрядов дробной части (может отсутствовать, по умолчанию равно 2).
Для украинского языка (uk_UA)
"гривна, гривны, гривен, м, копейка, копейки, копеек, ж, 2", где:
"гривна, гривны, гривен, м" – предмет исчисления:
"гривна – единственное число именительный падеж,
гривны – единственное число родительный падеж,
гривен – множественное число родительный падеж,
м – мужской род (ж – женский род, с - средний род);
"копейка, копейки, копеек, ж" – дробная часть, аналогично предмету исчисления (может отсутствовать);
"2" – количество разрядов дробной части (может отсутствовать, по умолчанию равно 2).
Для польского языка (pl_PL)
z?oty, z?ote, z?otych, m, grosz, grosze, groszy, m, 2
где:
"z?oty, z?ote, z?otych, m " - предмет исчисления (m - мужской род, ? - женский род, ? - средний род, mo – личностный мужской род)
z?oty - единственное число именительный падеж
z?ote - единственное число винительный падеж
z?otych - множественное число винительный падеж
m - мужской род (? - женский род, ? - средний род, mo – личностный мужской род)
"grosz, grosze, groszy, m " - дробная часть (может отсутствовать) (аналогично целой части)
2 - количество разрядов дробной части (может отсутствовать, по-умолчанию равно 2)
Для английского, финского и казахского языков (en_US, fi_FI, kk_KZ)
"dollar, dollars, cent, cents, 2", где:
"dollar, dollars" – предмет исчисления в единственном и множественном числе;
"cent, cents" – дробная часть в единственном и множественном числе (может отсутствовать);
"2" – количество разрядов дробной части (может отсутствовать, по умолчанию равно 2).
Для немецкого языка (de_DE)
"EURO, EURO, М, Cent, Cent, M, 2", где:
"EURO, EURO, М" – предмет исчисления:
EURO, EURO – предмет исчисления в единственном и множественном числе;
М – мужской род (F – женский род, N - средний род);
"Cent, Cent, M" – дробная часть, аналогично предмету исчисления (может отсутствовать);
"2" – количество разрядов дробной части (может отсутствовать, по умолчанию равно 2).