Оглавление

Последние изменения.. 5

12.05.09, версия 1.0.2.01. 5

Изменения. 5

Новые возможности. 5

Контакты и задачи. 5

ContactAndTask,КонтактыИЗадачи. 5

CreateContact,СоздатьКонтакт. 6

SaveNewContacts,СохранитьКонтакты.. 6

AddPropNewContact,УстановитьСвойствоНовогоКонтакта. 6

GetContactCount,КоличествоКонтактов. 7

GetPropContact,ПолучитьСвойствоКонтакта. 8

GetPicContact,СохранитьФотоКонтакта. 8

SetPicContact,УстановитьФотоКонтакта. 9

ShowContactInfo,ПоказатьИнфоКонтакта. 10

RemoveContact,УдалитьКонтакт. 10

FindContact,НайтиКонтакт. 11

CreateTask,СоздатьЗадачу. 12

SaveNewTasks,СохранитьЗадачи. 12

AddPropNewTask,УстановитьСвойствоНовойЗадачи. 13

GetTaskCount,КоличествоЗадач. 14

GetPropTask,ПолучитьСвоствоЗадачи. 14

SetPropTask,УстановитьСвойствоЗадачи. 15

ShowTaskInfo,ПоказатьИнфоЗадачи. 16

RemoveTask,УдалитьЗадачу. 16

Отслеживание изменений в файловой системе. 17

UseFileNotify,ОтслеживатьИзмененияФС.. 17

Уведомления пользователя. 19

AddNotif,ДобавитьУведомление. 19

UpdateNotif,ОбновитьУведомление. 21

DelNotif,УдалитьУведомление. 22

Системный трей (System Tray) 23

AddIconToTray,ДобавитьИконкуВТрей. 23

DeleteIconFromTray,УдалитьИконкуИзТрея. 23

Телефон. 23

SendUssd,ПослатьUSSD.. 24

UseRilNotify,ИспользоватьУведомленияОтТелефона. 24

Окна. 26

CloseWindow,ЗакрытьОкно. 26

Мультимедиа. 26

ImgGetInfo,СвойствоКартинки. 26

ImgResize,ИзменитьРазмерКартинки. 26

CameraCaptureDlg,ДиалогКамеры.. 27

Прочие методы.. 29

GetLastError, КодОшибки. 29

FormatError,ОписаниеОшибки. 29

SetLocalTime,УстановитьДату. 29

19.06.08, версия 1.0.1.61. 30

SetDevConfSetting,УстановитьНастройкуУстройства. 30

SetDevConfSettingFromFile,УстановитьНастройкуУстройстваИзФайла. 31

GetDevConfSetting,ПолучитьНастройкуУстройства. 31

GetDevConfSettingFromFile,ПолучитьНастройкуУстройстваИзФайла. 31

EncodeString,ЗакодироватьСтроку. 33

DecodeString,РаскодироватьСтроку. 34

DecodeInFile,РаскодироватьВФайл. 34

13.04.08, версия 1.0.1.42. 35

EndProcess,ЗавершитьПроцесс. 35

SetDevState,УстановитьСостояниеУстройства. 35

IsDevActive,УстройствоВключено. 36

MakeCall,Звонить. 36

Vibrate,Вибрация. 36

Описание методов компоненты... 37

Инициализация компоненты.. 37

GetVersionComponent,ПолучитьВерсиюКомпоненты.. 37

Файловая система. 37

GetSpecialFolderPath,ПолучитьПутьККаталогу. 37

CopyFile,КопироватьФайл. 37

DeleteFile,УдалитьФайл. 38

DeleteFiles,УдалитьФайлы.. 38

ExistsFile,СуществуетФайл. 38

FindFirstFile,НайтиПервыйФайл. 38

FindNextFile,НайтиСледующийФайл. 39

FindClose,ЗакрытьПоиск. 39

GetFindedFileName,ПолучитьИмяФайла. 39

GetFindedFileSize,ПолучитьРазмерФайла. 39

GetFindedCreationTime,ПолучитьВремяСозданияФайла. 39

GetFindedLastWriteTime,ПолучитьВремяИзмененияФайла. 39

GetGindedFileAttr,ПолучитьАттрибутыФайла. 40

CreateBackupChanges1C,СохранитьИзменения1С.. 40

ExistsBackupChanges1C,СуществуютИзменения1С.. 40

DeleteBackupChanges1C,УдалитьИзменения1С.. 40

ReadFromFile,ЧитатьИзФайла. 41

SaveToFile,СохранитьВФайл. 41

OpenDialog,ДиалогВыбораФайла. 41

Реестр. 42

RegGetStrValue,ПолучитьСтрЗначениеИзРеестра. 42

RegGetIntValue,ПолучитьЧисловоеЗначениеИзРеестра. 42

RegSetStrValue,ЗаписатьСтрЗначениеВРеестр. 42

RegSetIntValue,ЗаписатьЧисловоеЗначениеВРеестр. 42

INI файлы.. 43

UseUTF8Ini,ИниИспользоватьUTF8. 43

CreateIniFile,СоздатьИниФайл. 43

OpenIniFile,ОткрытьИниФайл. 43

IniSetNewSection,СоздатьНовуюСекцию.. 44

IniSetStringValue,УстановитьСтрЗначениеИни. 44

IniGetStringValue,ПолучитьСтрЗначениеИни. 44

IniDeleteValue,УдалитьЗначениеИни. 44

IniSaveToFile,СохранитьВФайлИни. 44

IniCloseFile,ЗакрытьФайлИни. 45

Операционная система. 45

UseShellFunction,ИспользоватьФункцииОболочки. 45

RunApp,ЗапуститьПриложение. 45

RunAppAtEvent,ЗапуститьПриложениеПоСобытию.. 45

RunAppAtTime,ЗапуститьПриложениеПоВремени. 46

SetPowerState,УстановитьСостояниеПитания. 46

SetDeviceLock,УстановитьБлокировкуВыключения. 47

GPRS соединение. 47

UseGPRSConnection,ИспользоватьGPRSСоединение. 47

SetGPRSConnection,УстановитьGPRSСоединение. 47

StopGPRSConnection,РазорватьGPRSСоединение. 48

GetGPRSConnectionStatus,ПолучитьСтатусGPRSСоединения. 48

IsGPRSConnect,ЕстьПодлючениеGPRS. 48

DisconnectedGPRS,УдалитьGPRSСоединение. 48

DisconnectedAll,УдалитьВсеСоединения. 49

SMS сообщения. 49

UseMessages,ИспользоватьСообщения. 49

SendSMS,ОтправитьСМС.. 49

Универсальная коллекция значений «Соответствие». 50

UseStringMap,ИспользоватьСоответствие. 50

SetStrValueMap,СохранитьЗначение. 51

GetStrValueMap,ПолучитьЗначение. 51

Всплывающее меню.. 51

CreateMenu,СоздатьМеню.. 51

AppendToMenu,ДобавитьВМеню.. 51

ShowMenu,ВыбратьИзМеню.. 52

Информация о владельце и КПК.. 52

GetDevInfo,ПолучитьИнфо. 52

InCradle,ВКредле. 52

FTP.. 53

UseFtp,ИспользоватьФТП.. 53

FtpGetFile,ПолучитьФайлФТП.. 54

FtpPutFile,ЗаписатьФайлФТП.. 54

GPS приемник.. 54

UseGPS,ИспользоватьGPS. 54

Прочее. 55

PlaySound,ИгратьЗвук. 55

SetTimer,УстановитьТаймер. 55

IsActiveWindow,ОкноАктивно. 56

WindowOnTop,ОкноВверх. 56

SendKey,НажатьКлавишу. 56


Последние изменения

12.05.09, версия 1.0.2.01

Изменения

·        Из состава дистрибутива исключена дополнительная утилита «Восстановление баз 1С». Возможности, реализуемые данной утилитой, теперь доступны штатными средствами платформы[1].

·        Методы работы с файлами (логическая группа «Файловая система»), оставлены для совместимости. В ближайшей версии методы будут исключены т.к. данные возможности реализованы штатными средствами.

·        При показе диалогов (выбора и сохранения фалов) отображался курсор ожидания – исправлено.

·        Внешнее событие, возникающее при получении данных от GPS приемника, дополнительно возвращает дату и время по данным спутника. Дата конвертирована из UTC  в локальный формат даты. В 1С дата передается строкой в соответствующем формате, пример:

Процедура ВнешнееСобытие (Источник, Событие, Данные)

     Если Источник= "ExtService" Тогда

        Если Событие = "GPS" Тогда

            //Данные - многострочная строка типа:

            //  Количество спутников

            //  Широта

            //  Долгота

            //  Скорость в М\Н

            //  Дата в формате 1С т.е. строка типа '20090501120000' // 5 мая 2009 года 12:00:00

            Текст = "Событие: " + Событие+ Символы.ПС + Данные;

            //показать на форме

            Лог = Лог + Символы.ПС + "-----------------------------------" + Символы.ПС + Текст;

        КонецЕсли;

    КонецЕсли;

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

Новые возможности

Контакты и задачи

Добавлена новая группа «Контакты и задачи» - менеджер управления персональной информацией. Позволяет добавлять новые контакты  и задачи, изменять существующие  и производить поиск по различным параметрам.

ContactAndTask,КонтактыИЗадачи

Синтаксис: КонтактыИЗдачи (Включить)

Параметры:  Включить – тип: Булево.

Возвращает:  Булево – результат выполнения операции, Истина, если метод завершился успешно, Ложь – в противном случае.

Описание:  При установленном влаге «Включить» внешняя компонента выполняет подготовку для использования функций группы «Контакты и задачи». При снятом флаге – дополнительные объекты выгружаются из памяти.

 

//использовать методы группы "Контакты и задачи"

Результат = ВК.КонтактыИЗадачи(Истина);

Если НЕ Результат Тогда

    КодОшибки = ВК.КодОшибки();

    Предупреждение(ВК.ОписаниеОшибки(КодОшибки));

КонецЕсли;

       

//... по завершению работы - освобождаем память

Результат = ВК.КонтактыИЗадачи(Ложь);

CreateContact,СоздатьКонтакт

Синтаксис:  СоздатьКонтакт(Имя,Фамилия)

Параметры    Имя – строка, имя контакта

Фамилия – строка, фамилия контакта

Возвращает:  Число – индекс нового контакта в КЭШ буфере.

Описание:  Создается новый контакт в КЭШ буфере, фактически запись нового контакта производится после вызова метода «СохранитьКонтакты».  Использование кэш позволяет ускорить  массовое добавление новых контактов.  Установка дополнительных свойств производится по уникальному индексу возвращаемому данным методом.

 

//пример, создать сразу несколько контактов

//первый

Индекс_контакта = ВК.СоздатьКонтакт("Александр","Блок");

//установить свойства контакта

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"MiddleName","Александрович");

//..

//второй

Индекс_контакта = ВК.СоздатьКонтакт("Валерий","Брюсов");

//установить свойства контакта

//..

//третий

Индекс_контакта = ВК.СоздатьКонтакт("Сергей","Есенин");

//установить свойства контакта

//..

Сохранено = ВК.СохранитьКонтакты();

Предупреждение("Создано "+Строка(Сохранено)+ " новых контактов.");

SaveNewContacts,СохранитьКонтакты

Синтаксис:  СохранитьКонтакты()

Параметры Нет

Возвращает:  Число – количество сохраненных контактов.

Описание:  Сохраняет новые контакты из КЭШ буфера в Pocket Outlook.

AddPropNewContact,УстановитьСвойствоНовогоКонтакта

Синтаксис:  УстановитьСвойствоНовогоКонтакта (Индекс,Свойство,Значение)

Параметры    Индекс – число, индекс нового контакта, созданного в Кэш буфере методом «СоздатьКонтакт»

                                   Свойство – строка, имя устанавливаемого свойства, одна из следующих констант:

                        MobileTelephoneNumber – строка,номер мобильного телефона

          MiddleName – строка,отчество контакта

          Body – строка,текст заметки к контакту

          BusinessTelephoneNumber – строка, номер рабочего телефона

          HomeTelephoneNumber – строка, номер домашнего телефона

          Email1Address – строка, e-mail адрес контакта

          CompanyName – строка, наименование компании

          Department – строка, навание отдела

          Title – строка, предстваление контакта

          Categories – строка, категория контакта

          WebPage – стрка, адрес web сайта

          Birthday – строка, ден рождения, дата должна быть выше 1900 года

                        Регистр букв в наименовании свойства не учитывается.

Возвращает:  Булево – истина, если свойство успешно установлено, Ложь – если свойство не найдено.

Описание:  Устанавливает свойство контакта во временном кэш буфере.

 

//пример, создать сразу несколько контактов

//первый

Индекс_контакта = ВК.СоздатьКонтакт("Александр","Блок");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"MiddleName","Александрович");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"Body","Заметки к контакту");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"MobileTelephoneNumber","89990000001");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"Categories","Поэты");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"WebPage","www.blok.ru");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"Birthday","09.10.1973"); 

//второй

Индекс_контакта = ВК.СоздатьКонтакт("Валерий","Брюсов");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"MiddleName","Яковлевич");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"Body","русский поэт, прозаик, драматург, переводчик, литературовед, литературный критик и историк. Один из основоположников русского символизма.");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"MobileTelephoneNumber","89990000002");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"Categories","Поэты");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"WebPage","www.blus.ru");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"Birthday","09.10.1873");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"Title","Главный редактор");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"Department","Отдел культуры");

//третий

Индекс_контакта = ВК.СоздатьКонтакт("Сергей","Есенин");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"MiddleName","Александрович");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"Body","русский поэт, один из самых популярных и известных русских поэтов XX века.");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"MobileTelephoneNumber","89990000003");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"Categories","Поэты");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"WebPage","www.esenin.ru");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"Birthday","03.10.1919");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"CompanyName","ООО ""Поэты серебрянного века""");

ВК.УстановитьСвойствоНовогоКонтакта(Индекс_контакта,"Email1Address","esenin@rus.ru");

   

Сохранено = ВК.СохранитьКонтакты();

Предупреждение("Создано "+Строка(Сохранено)+ " новых контактов.");

GetContactCount,КоличествоКонтактов

Синтаксис:  КоличествоКонтактов ()

Параметры Нет

Возвращает:  Число – количество контактов телефонной книге  Pocket Outlook.

Описание:  Возвращает количество существующих контактов в телефонной книге. Не путать с кэш буфером.

 

GetPropContact,ПолучитьСвойствоКонтакта

Синтаксис:  ПолучитьСвойствоКонтакта (Индекс, Свойство)

Параметры    Индекс – число, порядковый индекс контакта в телефонной книге, согласно сортировке по умолчанию. Внимание, индекс начинается с единицы.

                        Свойство – строка, имя получаемого свойства, одна из следующих констант:

                        FirstName – строка, имя контакта

          LastName – строка, фамилия контакта

                        MobileTelephoneNumber – строка,номер мобильного телефона

          MiddleName – строка,отчество контакта

          Body – строка,текст заметки к контакту

          BusinessTelephoneNumber – строка, номер рабочего телефона

          HomeTelephoneNumber – строка, номер домашнего телефона

          Email1Address – строка, e-mail адрес контакта

          CompanyName – строка, наименование компании

          Department – строка, навание отдела

          Title – строка, предстваление контакта

          Categories – строка, категория контакта

          WebPage – стрка, адрес web сайта

          Birthday – строка, день рождения

                        Регистр букв в наименовании свойства не учитывается.

Возвращает:  Строка, дата  – значение свойства.

Описание:  Позволяет получить значение свойства существующего контакта из Pocket Outlook.

 

//пример

Фамилия ="";

ИмяКонтакта = "";

Отчество = "";

   

ТаблицаКонтактов.Очистить();

 

ВсегоКонтактов = ВК.КоличествоКонтактов();

Для ш = 1 ПО ВсегоКонтактов Цикл

    Фамилия         = ВК.ПолучитьСвойствоКонтакта(ш,"LastName");

           

    ИмяКонтакта     = ВК.ПолучитьСвойствоКонтакта(ш,"FirstName");

    Отчество        = ВК.ПолучитьСвойствоКонтакта(ш,"MiddleName");

   

    НоваяСтрока = ТаблицаКонтактов.Добавить();

    НоваяСтрока.ФИО             = Фамилия + " " + ИмяКонтакта+ " " +  Отчество;

    НоваяСтрока.МобТелефон      = ВК.ПолучитьСвойствоКонтакта(ш,"MobileTelephoneNumber");

    НоваяСтрока.ДеньРождения    = ВК.ПолучитьСвойствоКонтакта(ш,"Birthday");

    НоваяСтрока.Категория       = ВК.ПолучитьСвойствоКонтакта(ш,"Categories");

    НоваяСтрока.Индекс          = ш;

КонецЦикла;

GetPicContact,СохранитьФотоКонтакта

Синтаксис:  СохранитьФотоКонтакта (Индекс,ПутьКФайлу)

Параметры    Индекс – число, порядковый индекс контакта в телефонной книге, согласно сортировке по умолчанию. Внимание, индекс начинается с единицы.

                        ПутьКФайлу – строка, путь к файлу сохраняемой фотографии

 

Возвращает:  Истина – если фото контакта успешно сохранено в файл, Ложь – в случае ошибки.

Описание:  Позволяет сохранить фото контакта (если оно установлено) во внешний файл. В дальнейшем данный файл может быть отображен на форме с помощью стандартных объектов 1С «ДвоичныеДанные» и «Картинка».

 

//пример, ТаблицаКонтактов - ТЗ на форме, в колонке "Индекс" - индекс контакта согласно выборке

ТекущаяСтрокаДанных = ЭлементыФормы.ТаблицаКонтактов.ТекущиеДанные;

Если НЕ ТекущаяСтрокаДанных = Неопределено Тогда

    ПутьКФайлу = "\temp_foto.jpeg";

    Результат = ВК.СохранитьФотоКонтакта(ТекущаяСтрокаДанных.Индекс,ПутьКФайлу);

    Если Результат  Тогда

        //показать картинку (стандартный метод)

        ЗапуститьПриложение(ПутьКФайлу);       

    Иначе

        КодОшибки = ВК.КодОшибки();

        Предупреждение(ВК.ОписаниеОшибки(КодОшибки));

    КонецЕсли; 

КонецЕсли;

 

          

 

SetPicContact,УстановитьФотоКонтакта

Синтаксис:  УстановитьФотоКонтакта (Индекс, ПутьКФайлу)

Параметры    Индекс – число, порядковый индекс контакта в телефонной книге, согласно сортировке по умолчанию. Внимание, индекс начинается с единицы.

                        ПутьКФайлу – строка, путь к файлу фотографии

Возвращает:  Истина – если фото контакта успешно загружено из файла, Ложь  – в случае ошибки.

Описание:  Позволяет для контакта установить фото из файла.

 

//пример, ТаблицаКонтактов - ТЗ на форме, в колонке "Индекс" - индекс контакта согласно выборке

ТекущаяСтрокаДанных = ЭлементыФормы.ТаблицаКонтактов.ТекущиеДанные;

Если НЕ ТекущаяСтрокаДанных = Неопределено Тогда

    ИмяФайла   = "foto.jpeg";

    ПутьКФайлу = "";

    Расширение = "jpeg";

    Фильтр = "Файлы (*.bmp) |*.bmp | Файлы (*.jpeg)|*.jpeg";

    ДиалогОткрытия = Истина;

    ПутьКФайлу = ВК.ДиалогВыбораФайла(ИмяФайла,Фильтр,Расширение,ДиалогОткрытия );

    Если НЕ ПутьКФайлу = "" Тогда

        Результат = ВК.УстановитьФотоКонтакта(ТекущаяСтрокаДанных.Индекс,ПутьКФайлу);

        Если Результат Тогда

            Предупреждение("Фото для контакта установлено");

        КонецЕсли;

    КонецЕсли; 

КонецЕсли;

ShowContactInfo,ПоказатьИнфоКонтакта

Синтаксис:  ПоказатьИнфоКонтакта (Индекс)

Параметры    Индекс – число, порядковый индекс контакта в телефонной книге, согласно сортировке по умолчанию.

Возвращает:  Булево  – возвращает истина после закрытия окна (если окно успешно отображено пользователю) и Ложь – в случае ошибки.

Описание:  Показать стандартное суммарное окно информации о контакте, пользователь может изменить информацию и записать контакт.

 

//пример, показать суммарную информацию о контакте

ТекущаяСтрокаДанных = ЭлементыФормы.ТаблицаКонтактов.ТекущиеДанные;

Если НЕ ТекущаяСтрокаДанных = Неопределено Тогда

    ВК.ПоказатьИнфоКонтакта(ТекущаяСтрокаДанных.Индекс);

КонецЕсли; 

 

 

RemoveContact,УдалитьКонтакт

Синтаксис:  УдалитьКонтакт (Индекс)

Параметры    Индекс – число, порядковый индекс контакта в телефонной книге, согласно сортировке по умолчанию.

Возвращает:  Булево – истина, если контакт успешно удален, Ложь – в случае ошибки.

Описание:  Удалить контакт из телефонной книги Pocket Outlook.

 

//пример, ТаблицаКонтактов - ТЗ на форме, в колонке "Индекс" - индекс контакта согласно выборке

ТекущаяСтрокаДанных = ЭлементыФормы.ТаблицаКонтактов.ТекущиеДанные;

Если НЕ ТекущаяСтрокаДанных = Неопределено Тогда

    УдалитьКонтакт = Вопрос("Удалить выбранный контакт?",РежимДиалогаВопрос.ДаНет,"Удаление контакта");

    Если УдалитьКонтакт = КодВозвратаДиалога.Да Тогда

        Если ВК.УдалитьКонтакт(ТекущаяСтрокаДанных.Индекс) Тогда

            Предупреждение("Контакт удален!");

            ОбновитьСписокКонтактов();

        КонецЕсли;     

    КонецЕсли; 

КонецЕсли;

 

FindContact,НайтиКонтакт

Синтаксис:  НайтиКонтакт (УсловияПоиска)

Параметры  Строка – условия поиска по специальному  формату.

Возвращает:  Число – Индекс найденного контакта, согласно сортировке по умолчанию.

Описание:  Выполняет поиск контакта  по номеру телефона, адресу и т.п. свойствам.

Примеры задания условий поиска:

 

[CompanyName] = "Microsoft"

[Categories] = "Health" AND [SourceId] = "16" OR [Subject] = "Water"

(([Categories] = "Health" AND [SourceId] = "16") OR [Subject]="Water")

//пример поиска контакта, тип поиска выбирается из всплывающего меню

ИдСтрока = 0;

ИдРазделитель = 1;

ПозX = 150;

ПозY = 30;

 

ВК.СоздатьМеню();

ВК.ДобавитьВМеню(ИдСтрока,101,"Фамилии");

ВК.ДобавитьВМеню(ИдСтрока,102,"Мобильному номеру");

ВК.ДобавитьВМеню(ИдРазделитель ,0,"");

ВК.ДобавитьВМеню(ИдСтрока,103,"E-mail");   

ВК.ДобавитьВМеню(ИдСтрока,104,"Компании");

       

ВыбранныйИд = ВК.ВыбратьИзМеню(ПозX,ПозY);

   

ПоискПо = "";

Если ВыбранныйИд = 101 Тогда

    ПоискПо = "[LastName]";

ИначеЕсли ВыбранныйИд = 102 Тогда

    ПоискПо = "[MobileTelephoneNumber]";       

ИначеЕсли ВыбранныйИд = 103 Тогда

    ПоискПо = "[Email1Address]";

ИначеЕсли ВыбранныйИд = 104 Тогда

    ПоискПо = "[Title]";

КонецЕсли;

 

Если НЕ ПоискПо = "" Тогда

    УсловияПоиска = ПоискПо + "=""" + СтрокаПоиска + """";

    Индекс = ВК.НайтиКонтакт(УсловияПоиска);

    Предупреждение("Индекс = "+Строка(Индекс));

    //активизируем строку в списке

    НайденнаяСтрока = ТаблицаКонтактов.Найти(Индекс,"Индекс");

    Если НЕ НайденнаяСтрока = Неопределено Тогда

        ЭлементыФормы.ТаблицаКонтактов.ТекущаяСтрока = НайденнаяСтрока;

    КонецЕсли;

КонецЕсли;

 

          

Допустимые операторы сравнения: <, <=, >, >=, =, <>. Допустимы логические операторы AND и OR, в условиях поиска можно использовать все описанные свойства контакта, за исключением Body.

CreateTask,СоздатьЗадачу

Синтаксис:  СоздатьЗадачу (Наименование)

Параметры    Наименование -  строка, наименование задачи

Возвращает:  Число – индекс новой задачи в КЭШ буфере.

Описание:  Создается новая задача в КЭШ буфере, фактически запись новой задачи производится после вызова метода «СохранитьЗадачи».  Использование кэш позволяет ускорить  массовое добавление новых задач.  Установка дополнительных свойств производится по уникальному индексу возвращаемому данным методом. 

 

//использовать методы группы "Контакты и задачи"

Результат = ВК.КонтактыИЗадачи(Истина);

//…

//пример, создать сразу несколько задач

//первая

Индекс = ВК.СоздатьЗадачу("Посетить торговую точку ЧП 'Иванов И.И'");

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"Body","Адрес торговой точки: ул. Победы, дом 12. к2"); //описание задачи

 

//вторая

Индекс = ВК.СоздатьЗадачу("Произвести инвентаризацию холодильного оборудования");

//третья

Индекс = ВК.СоздатьЗадачу("Рекламная акция");

 

Сохранено = ВК.СохранитьЗадачи();

Предупреждение("Создано "+Строка(Сохранено)+ " новых задач.");

 

SaveNewTasks,СохранитьЗадачи

Синтаксис:  СохранитьЗадачи ()

Параметры Нет

Возвращает:  Число – количество сохраненных задач.

Описание:  Сохраняет новые задачи из КЭШ буфера в Pocket Outlook.

 

AddPropNewTask,УстановитьСвойствоНовойЗадачи

Синтаксис:  УстановитьСвойствоНовойЗадачи (Индекс,Свойство,Значение)

Параметры    Индекс – число, индекс новой задачи, созданной в Кэш буфере методом «СоздатьЗадачу»

                                   Свойство – строка, имя устанавливаемого свойства, одна из следующих констант:

                        Category – строка,категория задачи

          Priority – в «Значение» передавать число – приоритет задачи: 0 – низкий, 1 – нормальный, 2 – высокий

          StartDate – строка, дата начала задачи

          DueDate – строка, дата завершения задачи

          Complete - в «Значение» передавать булево – завершена или нет задача

                Body – строка, текст заметки к задаче

          Reminder - в «Значение» передавать булево – истина – если требуется напомнить о задаче

          ReminderTime – строка, дата напоминаня о задаче

          ReminderSoundFile – строка, путь к звуковому файлу, который будет проигран при напоминании

ReminderOptions - в «Значение» передавать число – опиции напоминания. Возможные опции:

                olLED = 1 – световая индицкация

olVibrate =2 – вибрация

olDialog = 4 – открыть диалог задачи

olSound = 8 – проиграть звуковой файл

olRepeat = 16 – повторить напоминание

Допускается сложение флагов

Возвращает:  Булево – истина, если свойство успешно установлено, Ложь – если свойство не найдено.

Описание:  Устанавливает свойство задачи во временном кэш буфере.

 

//пример, создать сразу несколько задач

//первая

Индекс = ВК.СоздатьЗадачу("Посетить торговую точку ЧП 'Иванов И.И'");

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"Body","Адрес торговой точки: ул. Победы, дом 12. к2"); //описание задачи

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"Category","Торговые точки");                           //категория

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"Priority",2);                                          //приоритеты: (0 - low, 1 - normal,2 - high)

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"StartDate","10.04.2009");                              //дата начала

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"DueDate","11.04.2009");                                //дата окончания

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"Reminder",Истина);                                     //напомнить о задаче

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"ReminderTime","10.04.2009 22:30:00");                  //время напоминания

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

//olLED 1,olVibrate 2,olDialog 4,olSound 8,olRepeat 16

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"ReminderOptions",4);  

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"Complete",Ложь);  

 

//вторая

Индекс = ВК.СоздатьЗадачу("Произвести инвентаризацию холодильного оборудования");

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"Body","Так же проверить наличие штрихкодов");

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"Priority",1); 

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"Category","Оборудование");

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"StartDate","12.04.2009");

 

//третья

Индекс = ВК.СоздатьЗадачу("Рекламная акция");

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"Body","Разъяснить условия провдения рекламной акции");

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"Priority",2); 

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"Category","Маркетинг");   

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"StartDate","01.05.2009");

ВК.УстановитьСвойствоНовойЗадачи(Индекс,"StartDate","09.05.2009");

 

Сохранено = ВК.СохранитьЗадачи();

Предупреждение("Создано "+Строка(Сохранено)+ " новых задач.");

GetTaskCount,КоличествоЗадач

Синтаксис:  КоличествоЗадач ()

Параметры Нет

Возвращает:  Число – количество задач в Pocket Outlook.

Описание:  Возвращает количество существующих задач. Не путать с кэш буфером.

GetPropTask,ПолучитьСвоствоЗадачи

Синтаксис:  ПолучитьСвоствоЗадачи (Индекс, Свойство)

Параметры    Индекс – число, порядковый индекс  задачи, согласно сортировке по умолчанию. Внимание, индекс начинается с единицы.

                        Свойство – строка, имя получаемого свойства, одна из следующих констант:

                                   Subject – строка, наименование задачи

          Category – строка, категория задачи

          Body – строка, текст заметки к задаче

          ReminderSoundFile – строка, путь к звуковому файлу напоминания

          Priority – число, приоритет задачи

          ReminderOptions – число, опции запоминания

          Complete – булево, статус завершения задачи

          Reminder – булево, флаг напоминания о задаче

          StartDate – дата, дата начала задачи

          DueDate – дата, дата завершения задачи

          ReminderTime – дата, дата напоминания о задаче

                         

                        Регистр букв в наименовании свойства не учитывается.

Возвращает:  Строка, дата, число, булево – значение свойства.

Описание:  Позволяет получить значение свойства  задачи из Pocket Outlook.

 

//пример, ТаблицаЗадач - ТЗ на форме

ТаблицаЗадач.Очистить();

 

ВсегоЗадач = ВК.КоличествоЗадач();

Для ш = 1 ПО ВсегоЗадач Цикл

           

    НоваяСтрока = ТаблицаЗадач.Добавить();

    НоваяСтрока.Наименование    = ВК.ПолучитьСвоствоЗадачи(ш,"Subject");

    НоваяСтрока.Выполнена       = ВК.ПолучитьСвоствоЗадачи(ш,"Complete");

    НоваяСтрока.Категория       = ВК.ПолучитьСвоствоЗадачи(ш,"Category");

    НоваяСтрока.Приоритет       = ВК.ПолучитьСвоствоЗадачи(ш,"Priority");

    НоваяСтрока.ДатаНачала      = ВК.ПолучитьСвоствоЗадачи(ш,"StartDate");

    НоваяСтрока.ДатаОкончания   = ВК.ПолучитьСвоствоЗадачи(ш,"DueDate");

    НоваяСтрока.Индекс          = ш;

КонецЦикла;

 

SetPropTask,УстановитьСвойствоЗадачи

Синтаксис:  УстановитьСвойствоЗадачи (Индекс, Свойство, Значение)

Параметры    Индекс – число, порядковый индекс  задачи, согласно сортировке по умолчанию. Внимание, индекс начинается с единицы.

                        Свойство – строка, имя изменяемого свойства, одна из следующих констант:

                                   Subject – строка, наименование задачи

          Category – строка, категория задачи

          Body – строка, текст заметки к задаче

          ReminderSoundFile – строка, путь к звуковому файлу напоминания

          Priority – число, приоритет задачи

          ReminderOptions – число, опции запоминания

          Complete – булево, статус завершения задачи

          Reminder – булево, флаг напоминания о задаче

          StartDate – дата, дата начала задачи

          DueDate – дата, дата завершения задачи

          ReminderTime – дата, дата напоминания о задаче

                                   Регистр букв в наименовании свойства не учитывается.

 

                        Значение – значение устанавливаемого свойства (строка, число, дата)

Возвращает:  Булево – истина, если свойство задачи успешно изменено и Ложь  в противном случае.

Описание:  Позволяет изменить значение свойства  задачи из Pocket Outlook.

 

//пример изменения свойства существующей задачи

//ТаблицаЗадач - ТЗ на форме, в колонке "Индекс" - индекс задачи согласно текущей выборке

ТекущаяСтрокаДанных = ЭлементыФормы.ТаблицаЗадач.ТекущиеДанные;

Если НЕ ТекущаяСтрокаДанных = Неопределено Тогда

       

    Результат = ВК.УстановитьСвойствоЗадачи(ТекущаяСтрокаДанных.Индекс,"Complete",Истина);

    Если НЕ Результат Тогда

        Предупреждение("Ошибка изменения задачи!");

    КонецЕсли;

   

    ОбновитьСписокЗадач();

         

КонецЕсли;

 

ShowTaskInfo,ПоказатьИнфоЗадачи

Синтаксис:  ПоказатьИнфоЗадачи (Индекс)

Параметры    Индекс – число, порядковый индекс задачи, согласно сортировке по умолчанию.

Возвращает:  Булево  – возвращает истина после закрытия окна (если окно успешно отображено пользователю) и Ложь – в случае ошибки.

Описание:  Показать стандартное суммарное окно информации о задаче, пользователь может изменить информацию и записать задачу.

 

//пример, показать суммарную информацию о задаче

//ТаблицаЗадач - ТЗ на форме, в колонке "Индекс" - индекс задачи согласно текущей выборке

ТекущаяСтрокаДанных = ЭлементыФормы.ТаблицаЗадач.ТекущиеДанные;

Если НЕ ТекущаяСтрокаДанных = Неопределено Тогда

    ВК.ПоказатьИнфоЗадачи(ТекущаяСтрокаДанных.Индекс);

КонецЕсли;

 

             

 

RemoveTask,УдалитьЗадачу

Синтаксис:  УдалитьЗадачу (Индекс)

Параметры    Индекс – число, порядковый индекс задачи, согласно сортировке по умолчанию.

Возвращает:  Булево – истина, если задача успешно удалена, Ложь – в случае ошибки.

Описание:  Удалить задачу из Pocket Outlook.

 

//пример удаления задачи

//ТаблицаЗадач - ТЗ на форме, в колонке "Индекс" - индекс задачи согласно текущей выборке

ТекущаяСтрокаДанных = ЭлементыФормы.ТаблицаЗадач.ТекущиеДанные;

Если НЕ ТекущаяСтрокаДанных = Неопределено Тогда

    УдалитьЗадачу = Вопрос("Удалить выбранную задачу?",РежимДиалогаВопрос.ДаНет,"Удаление задачи");

   

    Если УдалитьЗадачу = КодВозвратаДиалога.Да Тогда

       

        Если ВК.УдалитьЗадачу(ТекущаяСтрокаДанных.Индекс) Тогда

            Предупреждение("Задача удалена!");

            ОбновитьСписокЗадач();

        КонецЕсли;     

    КонецЕсли; 

КонецЕсли;

Отслеживание изменений в файловой системе

Методы данной группы предназначены для получения извещений об изменениях в файловой системе Windows Mobile: добавление, удаление и изменение файлов, папок и карт памяти.

UseFileNotify,ОтслеживатьИзмененияФС

Синтаксис:  ОтслеживатьИзмененияФС (Использовать, КомбинацияФлагов, Каталог, Рекурсивно)

Параметры    Использовать – булево, Истина – если необходимо включить получение уведомлений

КомбинацияФлагов – число, комбинация флагов – условия фильтрации

        1           (RENAMEITEM) Элемент не- директория переименован

        2           (CREATE) Элемент не- директория создан

        4           (DELETE) Элемент не- директория удален

        8           (MKDIR) Директория создана

        16          (RMDIR) Директория удалена

        128            (DRIVEREMOVED) Карта памяти удалена

        256         (DRIVEADD) Карта памяти добавлена

        512         (NETSHARE) Локальная папка расшарена

        1024        (NETUNSHARE) Отмена расшаривания папки

        2048        (ATTRIBUTES) Атрибуты файла или папки изменены

        4096        (UPDATEDIR) Содержимое существующей папки изменено, при этом сама папка не переименована и не удалена

        8192        (UPDATEITEM) Содержимое существующего элемента не- директории изменено, при этом сам элемент не переименован и не удален

        131072      (RENAMEFOLDER) Имя папки изменено

        2147483647  (ALLEVENTS) Отслеживание всех изменений

 

Возвращает:  Булево – результат выполнения операции.

Описание: При установленном флаге «Использовать» внешняя компонента выполняет подготовку для работы с уведомлениями от файловой системы и устанавливает необходимые фильтры, при снятом флаге – получение уведомлений прекращается и дополнительные объекты выгружаются из памяти.  

 

Уведомления передаются в 1С с использованием механизма внешних событий, где:

Источник – строка с именем компоненты "ExtService".

Событие – строка тип события, начинается с префикса  - "FN_". После прификса указано имя события (см. конбинацию флагов).

Данные – многострочная стока:

       1  - дата и время модификации в формате "dd.mm.yyyy H:M:S"

2 -  атрибуты файла (каталога), строка типа: "DARHSI" - подробнее см. в группе "Файловая система"

       3 - размер (файла, каталога в байтах)

       4 - значение (как правило, старое значение)

       5 - значение (как правило, новое значение, или пустая строка)

   

//пример, включение

Процедура ВключитьОтслеживаниеФС()

 

    //доступные флаги, допускается комбинация различных (сложение)

    //  1           (_RENAMEITEM) Элемент не-директория переименован

    //  2           (_CREATE) Элемент не-директория создан

    //  4           (_DELETE) Элемент не-директория удален

    //  8           (_MKDIR) Директория создана

    //  16          (_RMDIR) Директория удалена

    //  128         (_DRIVEREMOVED) Карта памяти удалена

    //  256         (_DRIVEADD) Карта памяти добавлена

    //  512         (_NETSHARE) Локальная папка расшарена

    //  1024        (_NETUNSHARE) Отмена расшаривания папки

    //  2048        (_ATTRIBUTES) Атрибуты файла или папки изменены

    //  4096        (_UPDATEDIR) Содержимое существующей папки изменено, при этом сама папка не переименована и не удалена

    //  8192        (_UPDATEITEM) Содержимое существующего элемента не-директории изменено, при этом сам элемент не переименован и не удален

    //  131072      (_RENAMEFOLDER) Имя папки изменено

    //  2147483647  (_ALLEVENTS) Отслеживание всех изменений

 

    Включить            = Истина;

    КомбинацияФлагов    = 2 + 4096 + 8192 + 131072;

    Рекурсивно          = Ложь;

   

    Результат = ВК.ОтслеживатьИзмененияФС(Включить,КомбинацияФлагов,Каталог,Рекурсивно);

    Если Результат Тогда

        Предупреждение("Отслеживание изменений в файловой системе включено!");

    Иначе

        Предупреждение("Ошибка включения отслеживания изменений в ФС!");

    КонецЕсли; 

 

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

 

//пример, выключение

Процедура ВыключитьОтслеживаниеФС()

    Результат = ВК.ОтслеживатьИзмененияФС(Ложь);

    Если Результат Тогда

        Предупреждение("Отслеживание изменений выключено!");

    Иначе

        Предупреждение("Ошибка выключения отслеживания!");

    КонецЕсли; 

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

 

//пример, получение уведомлений

Процедура ВнешнееСобытие (Источник, Событие, Данные)

 

    Если Источник= "ExtService" Тогда // события от внешней компоненты

       

        Префикс = Лев(Событие,3);

        Если Префикс = "FN_" Тогда //это группа событий об измемениях файловой системы

   

            //Событие может быть: FN_ - префикс события "File notifity",

            //после подчеркивания имя события (см. флаги)

            //FN_RENAMEITEM,FN_CREATE,FN_DELETE,FN_MKDIR,FN_RMDIR,

            //FN_RENAMEFOLDER,FN_DRIVERADD,FN_DRIVEREMOVED,FN_NETSHARE,

            //FN_NETUNSHARE,FN_ATTRIBUTES,FN_UPDATEDIR,FN_UPDATEITEM.