RU2605047C2 - Method for synchronisation of objects of personal information manager and external server - Google Patents

Method for synchronisation of objects of personal information manager and external server Download PDF

Info

Publication number
RU2605047C2
RU2605047C2 RU2012104530/08A RU2012104530A RU2605047C2 RU 2605047 C2 RU2605047 C2 RU 2605047C2 RU 2012104530/08 A RU2012104530/08 A RU 2012104530/08A RU 2012104530 A RU2012104530 A RU 2012104530A RU 2605047 C2 RU2605047 C2 RU 2605047C2
Authority
RU
Russia
Prior art keywords
email client
fields
external server
objects
elements
Prior art date
Application number
RU2012104530/08A
Other languages
Russian (ru)
Other versions
RU2012104530A (en
Inventor
Петр Евгеньевич Волынский
Денис Сергеевич Дятлов
Максим Викторович Цыпляев
Константин Николаевич Бредюк
Original Assignee
Общество с ограниченной ответственностью "Колловэар"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Общество с ограниченной ответственностью "Колловэар" filed Critical Общество с ограниченной ответственностью "Колловэар"
Priority to RU2012104530/08A priority Critical patent/RU2605047C2/en
Priority to PCT/RU2012/000300 priority patent/WO2013119141A1/en
Priority to EA201400805A priority patent/EA201400805A1/en
Publication of RU2012104530A publication Critical patent/RU2012104530A/en
Application granted granted Critical
Publication of RU2605047C2 publication Critical patent/RU2605047C2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/42Mailbox-related aspects, e.g. synchronisation of mailboxes

Abstract

FIELD: information technology.
SUBSTANCE: invention relates to data synchronisation. Objects describing workflow are stored in personal information manager Microsoft Outlook in form of Outlook objects. Two continuous processes check whether there are changes in Outlook objects and whether said changes are saved. MICROSOFT storage objects are used to store information on changed fields of Outlook objects in computer memory and fields of Outlook objects which were stored on hard disk. Information on changed and stored fields is sent on an external server. Notification on successful storage of fields on external server is then received. Information on changes to field on external server is received. Fields changed on external server are saved in Microsoft Outlook Objects.
EFFECT: technical result consists in providing data synchronisation between Miscrosoft Outlook and an external server with constant data update.
15 cl, 8 dwg

Description

Изобретение относится к способам синхронизации данных, а именно к системе и способу для синхронизации специализированных объектов между MICROSOFT Outlook и аналогичными клиентами для электронной почты и внешним сервером.The invention relates to data synchronization methods, and in particular, to a system and method for synchronizing specialized objects between MICROSOFT Outlook and similar email clients and an external server.

Microsoft Outlook стал основным почтовым приложением, которым пользуются миллионы пользователей по всему миру. Microsoft Outlook позволяет эффективно работать с большим количеством бизнес-объектов (в том числе специализированных объектов, которые будут описаны ниже), такие как почта, задачи, встречи, мероприятия и т.д. Однако Microsoft Outlook изначально не позволяет работать с бизнес-объектами, за которыми стоит расширенный поток работ (такими, как, например, заявки, проекты, бизнес-процессы, жалобы клиентов, запросы и т.д.). Данные потоки работ выполняются на внешнем сервере. Учитывая популярность программы Microsoft Outlook в качестве почтового клиента, а также отсутствие встроенной поддержки бизнес-объектов на базе потоков работ, желательно иметь возможность поддержать работу с бизнес-объектами с потоком работ из интерфейса Microsoft Outlook.Microsoft Outlook has become the primary email application used by millions of users around the world. Microsoft Outlook allows you to effectively work with a large number of business objects (including specialized objects, which will be described below), such as mail, tasks, meetings, events, etc. However, Microsoft Outlook initially does not allow you to work with business objects behind which there is an expanded workflow (such as, for example, applications, projects, business processes, customer complaints, requests, etc.). These workflows are performed on an external server. Given the popularity of Microsoft Outlook as an email client, as well as the lack of built-in support for business objects based on workflows, it is desirable to be able to support working with business objects with a workflow from the Microsoft Outlook interface.

Таким образом, существует техническая необходимость в системе и способе синхронизации данных между Microsoft Outlook и внешним сервером, где данные сохраняются таким образом, чтобы позволить их постоянное обновление.Thus, there is a technical need for a system and method for synchronizing data between Microsoft Outlook and an external server, where the data is stored in such a way as to allow constant updating.

Далее приводится подробная ссылка на предпочтительные варианты настоящего изобретения, примеры которых проиллюстрированы в сопроводительных чертежах.The following is a detailed reference to preferred embodiments of the present invention, examples of which are illustrated in the accompanying drawings.

В настоящем описании Microsoft Outlook 2010 используется в качестве примера, хотя изобретение может быть применимо к любому приложению клиента для электронной почты (почтовому агенту пользователя (MUA)), который позволяет проектировать специализированный интерфейс и отображать в нем релевантные данные, такие как приложение настольного компьютера, которое используется для работы с электронной почтой и принадлежностями, такими как контакты, задачи, календарь и т.д. Можно также использовать особенный клиент электронной почты для управления специализированными Элементами, если он поддерживает, как было заявлено выше, проектировку специализированных форм и отображение в нем наших данных. Microsoft Outlook 2010 используется в описании как пример, так как он является одним из наиболее популярных клиентов для электронной почты и отвечает требованиям. Lotus Notes является другим примером, хотя изобретение не ограничивается каким-либо конкретным клиентом для электронной почты.In the present description, Microsoft Outlook 2010 is used as an example, although the invention can be applied to any client email application (mail user agent (MUA)) that allows you to design a specialized interface and display relevant data such as a desktop application, which is used to work with e-mail and accessories, such as contacts, tasks, calendar, etc. You can also use a special email client to manage specialized Elements, if it supports, as stated above, the design of specialized forms and the display of our data in it. Microsoft Outlook 2010 is used as an example in the description, as it is one of the most popular email clients and meets the requirements. Lotus Notes is another example, although the invention is not limited to any particular email client.

Специализированные Объекты могут быть преобразованы и сохранены в MICROSOFT Outlook как Элементы Outlook. Согласно рассматриваемому примеру специальные процессы непрерывно проверяют, есть ли изменения в Элементах Outlook и сохраняются ли данные изменения в хранилище данных, например на жестком диске. Элементы Хранения MICROSOFT (112, ФИГ. 1) используются для хранения информации о полях Элементов Outlook, которые были изменены в ОЗУ (142, ФИГ. 1) и о полях Элементов Outlook, которые были сохранены в хранилище данных пользователя (140, ФИГ. 1), таких как накопитель на жестком диске.Specialized Objects can be converted and saved in MICROSOFT Outlook as Outlook Elements. According to the example under consideration, special processes continuously check whether there are changes in the Outlook Elements and whether these changes are stored in the data store, for example, on the hard disk. MICROSOFT Storage Elements (112, FIG. 1) are used to store information about the fields of Outlook Elements that have been changed in RAM (142, FIG. 1) and about the fields of Outlook Elements that have been stored in the user data store (140, FIG. 1 ), such as a hard drive.

Информация, отражающая измененные и сохраненные поля, отправляется на внешний сервер. Впоследствии приходит уведомление об успешном сохранении поля на внешнем сервере. Также информация об измененном поле на внешнем сервере отправляется обратно. Поля, измененные на внешнем сервере, сохраняются в Объектах Outlook. Таким образом, достигается двусторонняя синхронизация между Microsoft Outlook и внешним сервером.Information reflecting the changed and saved fields is sent to an external server. Subsequently, a notification arrives that the field was successfully saved on the external server. Also, information about the changed field on the external server is sent back. Fields that are modified on the external server are saved in Outlook Objects. Thus, two-way synchronization between Microsoft Outlook and an external server is achieved.

Таким образом, согласно рассматриваемому примеру в данном изобретении синхронизация реализуется за счет плагина Microsoft Outlook, разработанного с использованием Утилит MICROSOFT Office. Связь с внешним сервером осуществляется посредством интерфейса программирования приложений (API). API работает следующим образом:Thus, according to the considered example, in this invention, synchronization is realized through the Microsoft Outlook plug-in, developed using the MICROSOFT Office Utilities. Communication with an external server is carried out through the application programming interface (API). The API works as follows:

а. Надстройка MICROSOFT Outlook формирует список всех объектов, хранящихся в Microsoft Outlook. Кроме того, для некоторых объектов содержится дополнительная информация о редактировании поля или удалении объекта, как показано ниже:but. The MICROSOFT Outlook add-in forms a list of all objects stored in Microsoft Outlook. In addition, some objects contain additional information about editing a field or deleting an object, as shown below:

Объект 1Object 1 Объект 2Object 2 Объект 3Object 3 Объект 4Object 4 Объект 5Object 5 Объект 8Object 8 Объект 9Object 9 Поле 3: НовоеЗначениеField 3: New Value УдаленоRemoved Поле 3: НовоеЗначениеField 3: New Value Поле 9: НовоеЗначениеField 9: New Value Поле7: НовоеЗначениеField7: NewValue Поле 6: НовоеЗначениеField 6: New Value Поле 9: НовоеЗначениеField 9: New Value "Удалено" означает то, что объект был удален. "Поле#: НовоеЗначение" означает, что Значение Поля# в релевантном объекте было изменено на "НовоеЗначение".“Deleted” means that the object has been deleted. "Field #: NewValue" means that the Value of Field # in the relevant object has been changed to "NewValue".

б. После получения данных внешний сервер применяет изменения к объектам, сохраненным на внешнем сервере. Если происходит конфликт (например, когда данные на внешнем сервере отличаются от данных в MICROSOFT Outlook), данные на внешнем сервере не изменяются, и сообщение об ошибке отправляется в Надстройку MICROSOFT Outlook. Данные в MICROSOFT Outlook восстанавливаются на предыдущие, поскольку данные на внешнем сервере считаются более корректными по сравнению с данными в Microsoft Outlook, хотя пользователь может изменить данную опцию посредством настроек.b. After receiving the data, the external server applies the changes to objects stored on the external server. If a conflict occurs (for example, when the data on the external server is different from the data in MICROSOFT Outlook), the data on the external server does not change, and the error message is sent to the MICROSOFT Outlook Add-in. Data in MICROSOFT Outlook is restored to the previous one, since data on an external server is considered more correct than data in Microsoft Outlook, although the user can change this option through the settings.

в. Внешний сервер формирует ответ для отправки в Надстройку MICROSOFT Outlook. Отправляются все поля всех измененных объектов, т.е. объектов, которые были изменены в MICROSOFT Outlook (как было сказано в предыдущем параграфе), и объектов, которые были изменены на внешнем сервере. Также отправляется подтверждение в Надстройку MICROSOFT Outlook о применении изменений к объектам, сохраненным на внешнем сервере, т.е. подтверждение об обновлении сохраненных объектов. Информация о времени последней успешной синхронизации сохраняется в Надстройке MICROSOFT Outlook. Также внешний сервер отправляет в Надстройку MICROSOFT Outlook следующую информацию:at. An external server generates a response for sending to the MICROSOFT Outlook Add-in. All fields of all changed objects are sent, i.e. objects that were changed in MICROSOFT Outlook (as mentioned in the previous paragraph), and objects that were changed on an external server. A confirmation is also sent to the MICROSOFT Outlook Add-in on the application of changes to objects stored on an external server, i.e. confirmation of updating saved objects. Information about the time of the last successful synchronization is stored in the MICROSOFT Outlook Add-in. The external server also sends the following information to the MICROSOFT Outlook Add-in:

Figure 00000001
Figure 00000001

г. Комментарии и Прикрепления синхронизируются также как Объекты, и формируются два дополнительных списка:d. Comments and Attachments are synchronized as well as Objects, and two additional lists are formed:

i. Для всех комментариев, добавленных ко всем объектам,i. For all comments added to all objects,

ii. Для всех прикреплений, добавленных ко всем объектам.ii. For all attachments added to all objects.

В случае прикрепления файла в Расширении MICROSOFT Outlook данное прикрепление загружается непосредственно на внешний сервер и ссылка на данное прикрепление отправляется как Значение поля "ПрикреплениеСсылка" на внешний сервер. В случае прикрепления файла на внешнем сервере ссылка также отправляется как Значение поля "ПрикреплениеСсылка" в Расширение MICROSOFT Outlook и Расширение MICROSOFT Outlook загружает прикрепленный файл и прикрепляет его к Элементу MICROSOFT Outlook. Ключевое слово "Удалено" также используется для обозначения того, что прикрепление было удалено.In case of attaching a file in the MICROSOFT Outlook Extension, this attachment is downloaded directly to the external server and the link to this attachment is sent as the value of the "Attachment Link" field to the external server. When attaching a file on an external server, the link is also sent as the value of the Attach Link field to the MICROSOFT Outlook Extension and MICROSOFT Extension Outlook downloads the attached file and attaches it to the MICROSOFT Outlook Element. The keyword "Deleted" is also used to indicate that the attachment has been removed.

На ФИГ. 1 показан способ синхронизации специализированных объектов между MICROSOFT Outlook и внешним сервером. Элементы MICROSOFT Outlook 110 являются стандартными объектами MICROSOFT Outlook, которые используются для хранения всех сущностей MICROSOFT Outlook (таких как, например, письма, контакты, задачи, расписания, встречи и т.д.). Элементы MICROSOFT Outlook хранятся в ОЗУ для постоянного хранения и имеют ассоциированные записи в хранилище данных (например, на жестком накопителе) компьютерной системы. В блоке 125 процесс проверяет наличие изменений в Элементах MICROSOFT Outlook.In FIG. 1 shows a method for synchronizing specialized objects between MICROSOFT Outlook and an external server. MICROSOFT Outlook 110 elements are standard MICROSOFT Outlook objects that are used to store all MICROSOFT Outlook entities (such as, for example, letters, contacts, tasks, schedules, appointments, etc.). MICROSOFT Outlook items are stored in RAM for permanent storage and have associated entries in the data store (for example, on a hard drive) of a computer system. At block 125, the process checks for changes to the MICROSOFT Outlook Items.

Процесс блока 125 использует события MICROSOFT Outlook для регистрации всех сделанных изменений в Элементах MICROSOFT Outlook. Затем, если в блоке 130 были обнаружены изменения, то в блоке 145 процесс записывает их в список измененных полей в ОЗУ. Список полей, которые были изменены в Элементах MICROSOFT Outlook, записывается в "Элементы Хранения, хранящиеся в ОЗУ" 142, которые являются частью Элементов Хранения 112. Стоит отметить, что записывается только список измененных полей (а не фактические значения полей). Список измененных полей может быть представлен массивом. Стоит отметить, что список измененных полей может быть обновлен после каждого изменения в Элементе Microsoft Outlook. Список измененных полей может быть создан для каждого Элемента Microsoft Outlook после того, как Элемент открыт. Стоит отметить, что список измененных полей может быть очищен или удален для текущего Элемента Microsoft Outlook, если пользователь или система (например, в случае критической ошибки) не сохранит изменения для данного Элемента.Block process 125 uses MICROSOFT Outlook events to log all changes made to the MICROSOFT Outlook Elements. Then, if changes were detected in block 130, then in block 145, the process writes them to the list of changed fields in RAM. The list of fields that have been changed in the MICROSOFT Outlook Elements is recorded in “Storage Elements Stored in RAM” 142, which are part of Storage Elements 112. It should be noted that only the list of changed fields is recorded (not the actual field values). A list of changed fields can be represented by an array. It is worth noting that the list of changed fields can be updated after each change in the Microsoft Outlook Element. A list of changed fields can be created for each Microsoft Outlook Item after the Item is open. It is worth noting that the list of changed fields can be cleared or deleted for the current Microsoft Outlook Element if the user or the system (for example, in case of a critical error) does not save the changes for this Element.

Также стоить отметить, что список измененных полей является опциональным, поскольку измененные поля могут быть записаны в "Элементы Хранения, хранящиеся в ОЗУ" 142.It is also worth noting that the list of changed fields is optional, since the changed fields can be written to “Storage Elements Stored in RAM” 142.

Элементы Хранения 112 являются Стандартными объектами MICROSOFT Outlook, которые используются для хранения информации, которая не может быть сохранена в Элементах Outlook. В иллюстративном варианте Элементы Хранения 112 используются для хранения информации об измененных полях и о сохраненных полях (обсуждаемых ниже).Storage Elements 112 are the standard MICROSOFT Outlook objects that are used to store information that cannot be stored in Outlook Elements. In an illustrative embodiment, Storage Elements 112 are used to store information about changed fields and stored fields (discussed below).

Если в блоке 130 новые изменения не были обнаружены, то процесс продолжает проверять Элементы Outlook на Элемент изменений в блоке 125. Затем в блоке 115 процесс проверяет наличие сохраненных Элементов Outlook. Таким образом, если в блоке 120 обнаружены сохраненные изменения, в блоке 135 процесс записывает информацию о сохраненных полях. Согласно иллюстративному варианту этот процесс использует события MICROSOFT Outlook для регистрации события сохранения изменений в Элементах Хранения 112.If no new changes were found in block 130, the process continues to check the Outlook Items for the Change Item in block 125. Then, in block 115, the process checks for the presence of the saved Outlook Items. Thus, if stored changes are detected in block 120, in block 135, the process writes information about the stored fields. According to an illustrative embodiment, this process uses MICROSOFT Outlook events to log changes saving events in Storage Elements 112.

Процесс записывает тот факт, что поля были сохранены в Элементах Хранения. В одном из вариантов изобретения технически это означает добавление переменной булевского типа в массив измененных полей, сохраненных в Элементах Хранения. В другом варианте изобретения, после того как изменения были сохранены, "Элементы Хранения, хранящиеся в ОЗУ" 142, обновляют "Элементы Хранения, хранящиеся в хранилище данных" 140 последними изменениями, которые были сделаны после последнего сохранения. Таким образом, последние сохраненные изменения могут быть стерты из "Элементов Хранения, хранящихся в ОЗУ" 142. Если в блоке 120 новые сохраненные изменения не были зарегистрированы, то в блоке 115 процесс продолжает проверять наличие событий сохранения в Элементах Outlook. В блоке 150 процесс проверяет наличие изменений в "Элементах Хранения, хранящихся в хранилище данных" 140. Процесс непрерывно проверяет "Элементы Хранения, хранящиеся в хранилище данных" 140 на наличие информации о новых сохраненных полях (которые были отмечены как сохраненные в блоке 135). Фактически, в блоке 150 начинается процесс синхронизации.The process records the fact that the fields were stored in the Storage Elements. In one embodiment of the invention, technically this means adding a Boolean type variable to an array of modified fields stored in the Storage Elements. In another embodiment of the invention, after the changes have been saved, “Storage Items Stored in RAM” 142 update “Storage Items Stored in Data Warehouse” 140 with the latest changes made since the last save. Thus, the last saved changes can be erased from the "Storage Elements stored in RAM" 142. If in block 120 the new saved changes were not registered, then in block 115 the process continues to check for saving events in the Outlook Elements. In block 150, the process checks for changes in the "Storage Elements stored in the data warehouse" 140. The process continuously checks the "Storage Elements stored in the data warehouse" 140 for information about new stored fields (which were marked as stored in block 135). In fact, in block 150, the synchronization process begins.

Если в блоке 155 выявлены новые измененные и сохраненные поля, в блоке 160 процесс извлекает актуальные значения для измененных полей. Процесс читает Элементы MICROSOFT Outlook и извлекает актуальные значения для полей, которые были выявлены как сохраненные в блоке 155. Для каждого поля, обозначенного как сохраненное, берется обновленное значение поля (актуальное значение, которое было получено из Элементов MICROSOFT Outlook) и в блоке 165 отправляется на внешний сервер. Если в блоке 155 новые сохраненные поля не выявлены, то в блоке 150 процесс продолжает проверять наличие новых сохраненных полей в "Элементах Хранения, хранящихся в хранилище данных" 140.If new changed and saved fields are detected in block 155, in block 160, the process retrieves the actual values for the changed fields. The process reads the MICROSOFT Outlook Elements and retrieves the actual values for the fields that were identified as stored in block 155. For each field designated as saved, the updated field value is taken (the actual value that was obtained from the MICROSOFT Outlook Elements) and sent in block 165 to an external server. If in block 155 no new stored fields are detected, then in block 150 the process continues to check for new stored fields in the "Storage Elements stored in the data warehouse" 140.

В блоке 170 процесс получает информацию об обновленных и новых полях, включая значения с внешнего сервера. Фактически, новыми полями являются поля, которые были изменены, например, другим пользователем из другого почтового клиента или посредством интернет-браузера. Также, эти поля могут отличаться от обновленных полей, полученных в шаге 160. Затем в блоке 185 процесс обновляет Элементы MICROSOFT Outlook новыми полями. В блоке 175 процесс получает уведомления о сохраненных полях на внешнем сервере. Данный процесс обеспечивается работой специализированного ИПП. Затем, в блоке 180, процесс обновляет "Элементы Хранения, хранящиеся в хранилище данных" 140 посредством информации, отражающей тот факт, что поля были успешно сохранены на внешнем сервере.In block 170, the process receives information about the updated and new fields, including values from an external server. In fact, new fields are fields that have been changed, for example, by another user from another email client or through an Internet browser. Also, these fields may differ from the updated fields obtained in step 160. Then, in block 185, the process updates the MICROSOFT Outlook Elements with new fields. At block 175, the process receives notifications of stored fields on the external server. This process is ensured by the work of a specialized IPP. Then, at block 180, the process updates the "Storage Elements Stored in the Data Warehouse" 140 with information reflecting the fact that the fields were successfully stored on the external server.

Это значит, что записи как об измененных, так и о сохраненных полях были удалены из "Элементов Хранения, хранящихся в хранилище данных" 140.This means that records of both changed and saved fields have been deleted from the "Storage Elements stored in the data warehouse" 140.

На ФИГ. 2 показана блок-схема формирования списка измененных полей согласно иллюстративному варианту. В блоке 210 синхронизирующее приложение проверяет, являются ли значимыми для процесса изменения, сделанные в Элементе. В иллюстративном варианте значимыми изменениями являются изменения, которые были сделаны в Специализированном Объекте, так как объект синхронизируется по существу. Специализированный Объект представляет собой Объект (бизнес-объект, специализированный объект), за которым стоит некий поток работ и который хранится на внешнем сервере. Специализированные Объекты могут представлять собой, например: Жалобы, Запросы службе поддержки, Запросы на предоставление отпуска, Вакансии, Кандидаты, Служащие, Отчеты о командировочных расходах, Ошибки в программном обеспечении, Предложения по функционалу, Заявки на страхование, Заказы на покупки, Медицинские отчеты, Запросы на замену, Находящееся на балансе оборудование, Находящееся на балансе программное обеспечение, Сценарий тестирования, Запросы на отгул и т.д. Если Специализированные Объекты нормально не поддерживаются стандартными почтовыми клиентами, тогда Специализированные Объекты могут быть преобразованы в Элементы клиента электронной почты. Например, данные (данные, содержащиеся в специализированных объектах, таких как дата создания специализированного объекта, автор специализированного объекта и т.д.) с внешнего сервера могут быть получены и записаны в Элементы клиента электронной почты.In FIG. 2 shows a flowchart for generating a list of changed fields according to an illustrative embodiment. In block 210, the synchronization application checks to see if changes made to the Element are significant to the process. In the illustrative embodiment, significant changes are those that have been made in the Specialized Object, since the object is essentially synchronized. A specialized Object is an Object (a business object, a specialized object), behind which there is a certain flow of work and which is stored on an external server. Specialized Objects can be, for example: Complaints, Inquiries to support services, Vacation requests, Vacancies, Applicants, Employees, Travel expenses reports, Software errors, Functional offers, Insurance applications, Purchase orders, Medical reports, Replacement Requests, Balance Sheet Equipment, Balance Sheet Software, Test Scenario, Leave Requests, etc. If Specialized Objects are not normally supported by standard email clients, then Specialized Objects can be converted to Email client items. For example, data (data contained in specialized objects, such as the date the specialized object was created, the author of the specialized object, etc.) from an external server can be received and written to the Email Client Elements.

Далее, если в блоке 220 были зафиксированы изменения в значимых Элементах, то в блоке 230 система проверяет, были ли внесены изменения в значимые поля. Если в блоке 240 выявлены изменения в значимые поля, то в блоке 250 создается список измененных полей. Таким образом, список измененных полей ("Элементы Хранения, хранящиеся в ОЗУ" 142) обновляется с каждым измененным значимым полем. Если в блоке 220 изменения не выявлены, то в блоке 260 процесс заканчивается.Further, if in block 220 changes were recorded in significant Elements, then in block 230 the system checks whether changes have been made to significant fields. If changes to significant fields are detected in block 240, then a list of changed fields is created in block 250. Thus, the list of changed fields ("Storage Elements Stored in RAM" 142) is updated with each changed significant field. If no changes are detected at block 220, then at block 260, the process ends.

На ФИГ. 3 изображена блок-схема формирования списка сохраненных полей согласно иллюстративному варианту. В блоке 310 синхронизирующее приложение проверяет, является ли значимым для процесса Элемент, который был сохранен. В иллюстративном варианте значимыми являются события сохранения, которые касаются Специализированного Объекта, так как он синхронизируется.In FIG. 3 shows a block diagram of generating a list of stored fields according to an illustrative embodiment. At block 310, the synchronization application checks if the Item that was saved is significant to the process. In the illustrative embodiment, conservation events that relate to the Specialized Object are significant because it is synchronized.

Если в блоке 320 в значимых Элементах MICROSOFT Outlook выявлены события сохранения, то в блоке 330 синхронизирующее приложение проверяет факт сохранения значимых полей. Если в блоке 340 выявлены значимые поля, то в блоке 350 создается список сохраненных полей. Процесс копирования измененных полей из "Элементов Хранения, хранящихся в ОЗУ" 142 в "Элементы Хранения, хранящиеся в хранилище данных" 140 может быть использован для каждого сохраненного поля вместо создания списка сохраненных полей. Если в блоках 320 и 340 изменения не выявлены, то процесс заканчивается в блоке 360.If saving events are detected in block 320 in significant MICROSOFT Outlook Elements, then in block 330, the synchronizing application verifies that the significant fields were saved. If significant fields are detected in block 340, a list of stored fields is created in block 350. The process of copying changed fields from "Storage Elements Stored in RAM" 142 to "Storage Elements Stored in Data Warehouse" 140 can be used for each saved field instead of creating a list of stored fields. If no changes are detected in blocks 320 and 340, the process ends in block 360.

На ФИГ. 4 приведена архитектура системы согласно иллюстративному варианту. Компонент слушатель событий изменений 410 предназначен для отслеживания (мониторинга) событий, которые показывают изменения Элементов Outlook 400. Компонент слушатель событий сохранений 420 предназначен для отслеживания событий, которые показывают сохранение Элементов Outlook 400. Компонент чтения/записи из Элементов Outlook 440 предназначен для чтения информации из Элементов Outlook 400, чтобы проверить, были ли изменения, и для последующей записи обновленных полей, полученных с внешнего сервера 460.In FIG. 4 shows the architecture of a system according to an illustrative embodiment. The change event listener component 410 is designed to track (monitor) events that show changes in Outlook 400 Items. The save event listener component 420 is used to track events that show the saving of Outlook 400 Items. The read / write component from Outlook 440 items is used to read information from Outlook 400 items to check if there have been changes, and to subsequently record updated fields received from an external server 460.

Компонент чтения/записи из Элементов Хранения 450 предназначен для записи информации об измененных полях и о сохраненных полях, полученной от компонентов 410 и 420 соответственно. Далее компонент 450 читает информацию как об измененных, так и сохраненных полях из Элементов Хранения 455 для запуска процесса отправки обновленных полей на внешний сервер 460 посредством компонента передачи/получения данных 430. Данный компонент предназначен для отправки полей, обновленных в Элементах Outlook, на внешний сервер 460 и для получения обновленных полей с внешнего сервера 460.The read / write component from Storage Elements 450 is intended for recording information about changed fields and stored fields received from components 410 and 420, respectively. Next, component 450 reads information about both changed and stored fields from Storage Elements 455 to start the process of sending updated fields to an external server 460 via the data transfer / receive component 430. This component is used to send fields updated in Outlook Elements to an external server 460 and to receive updated fields from an external server 460.

Согласно другому иллюстративному варианту синхронизирующее приложение обеспечивает тесную интеграцию с MICROSOFT Outlook. Синхронизирующее приложение обладает функциональными возможностями менеджера задач (менеджера специализированных объектов), который работает с задачами и специализированными объектами. Однако описанные здесь задачи являются значительно более продвинутыми по сравнению со стандартными задачами MICROSOFT Outlook. В частности, данные задачи обладают следующими дополнительными функционалами:In another illustrative embodiment, the synchronization application provides tight integration with MICROSOFT Outlook. The synchronizing application has the functionality of a task manager (manager of specialized objects), which works with tasks and specialized objects. However, the tasks described here are significantly more advanced than the standard tasks of MICROSOFT Outlook. In particular, these tasks have the following additional functionalities:

1. Обсуждение с иерархией комментариев, отправленных пользователями;1. Discussion with a hierarchy of comments submitted by users;

2. История со списком всех изменений, которым подверглась задача;2. A story with a list of all the changes that the task has undergone;

3. Журнал регистрации времени (потраченное время), т.е. приблизительно подсчитанное время, потраченное на задачу;3. Time log (time spent), ie estimated time spent on the task;

4. Неограниченное количество подзадач; и4. Unlimited number of subtasks; and

5. Структурированные ссылки на другие Специализированные Объекты в системе. Специализированные Объекты могут быть взаимосвязаны друг с другом при помощи гиперссылок. Это позволяет гибко моделировать данные.5. Structured links to other Specialized Objects in the system. Specialized Objects can be interconnected with each other using hyperlinks. This allows flexible data modeling.

Иллюстративный вариант позволяет пользователям, использующим MICROSOFT Outlook, продолжить работать в привычной для них среде. Другими словами, менеджер задач интегрирован в интерфейс Microsoft Outlook при помощи средств разработки Outlook. Таким образом, расширенные задачи используются в Microsoft Outlook. Новые задачи представляют собой задачи, похожие на типичные задачи Microsoft Outlook, однако обладают более широкой функциональностью. Пользователи могут создавать интегрированные Специализированные задачи, редактировать их, назначать задания и т.д. Информация передается на внешний сервер (то есть на внешний сервер, синхронизированный с Microsoft Outlook).An illustrative option allows users using MICROSOFT Outlook to continue to work in their familiar environment. In other words, the task manager is integrated into the Microsoft Outlook interface using the Outlook development tools. Therefore, advanced tasks are used in Microsoft Outlook. New tasks are tasks similar to typical Microsoft Outlook tasks, but they have more functionality. Users can create integrated specialized tasks, edit them, assign tasks, etc. Information is transmitted to an external server (that is, to an external server synchronized with Microsoft Outlook).

Например, расширенные задачи могут включать обсуждение с иерархией комментариев, отправленных пользователями. В отличие от собственных задач MICROSOFT Outlook расширенные задачи обладают ассоциированными с ними комментариями. Комментарии обладают иерархической структурой, так что пользователи могут отправить новые комментарии или ответить на другие комментарии. Пользователи могут редактировать комментарии, которые они отправили. Этот функционал обеспечивает возможность обсуждения в реальном времени в пределах конкретной задачи с сохранением контекста, что делает данную задачу более удобной для целей совместной работы.For example, advanced tasks may include a discussion with a hierarchy of comments submitted by users. Unlike MICROSOFT Outlook's own tasks, advanced tasks have comments associated with them. Comments have a hierarchical structure so that users can post new comments or respond to other comments. Users can edit the comments they sent. This functionality provides the possibility of real-time discussion within a specific task while maintaining context, which makes this task more convenient for collaboration purposes.

У расширенных задач также может быть своя история изменений со списком всех изменений, сделанных в задаче. Каждое изменение, сделанное в задаче, может быть просмотрено в истории в удобной форме. Таким образом, пользователь может анализировать историю всех изменений, которые когда-либо были сделаны в задаче. Это помогает решить спорные вопросы или точно восстановить непреднамеренно удаленные данные.Advanced tasks can also have their own change history with a list of all changes made to the task. Each change made in the task can be viewed in the history in a convenient form. Thus, the user can analyze the history of all changes that have ever been made in the task. This helps resolve contentious issues or accurately recover from inadvertently deleted data.

У расширенных задач также может существовать журнал регистрации времени (потраченное время), отражающий общее время, потраченное на задачу. Пользователь может посмотреть количество времени, потраченного на задачи в специальной таблице. Затем могут быть подготовлены объединенные отчеты по затраченному времени для конкретных задач. Данная информация полезна для целей составления счетов и анализа затрат.Advanced tasks may also have a time log (time spent) reflecting the total time spent on the task. The user can see the amount of time spent on tasks in a special table. Then combined reports on elapsed time for specific tasks can be prepared. This information is useful for billing and cost analysis purposes.

Расширенные задачи могут также иметь неограниченное количество подзадач. При помощи подзадач пользователь может разделить работу на несколько более мелких частей и дать каждую часть конкретному сотруднику. Поскольку иерархия подзадач неограниченна, пользователь может управлять довольно сложными проектами только посредством расширенных задач. Список всех подзадач со статусами и именами тех, кому они назначены, можно посмотреть в первичной задаче.Advanced tasks can also have an unlimited number of subtasks. Using subtasks, the user can divide the work into several smaller parts and give each part to a specific employee. Since the hierarchy of subtasks is unlimited, the user can manage quite complex projects only through advanced tasks. A list of all subtasks with the statuses and names of those to whom they are assigned can be found in the primary task.

Расширенные задачи также могут иметь структурированные ссылки на другие специализированные объекты в системе. Элементы могут быть связаны друг с другом для целей навигации, статистики и быстрого перехода к контексту. Пользователь может установить ссылку от задачи на любой Элемент, сохраненный на сервере, после чего быстро передвигаться, используя эту ссылку. Информация о связанных задачах также может быть просмотрена в соответствующих Элементах.Advanced tasks can also have structured links to other specialized objects in the system. Elements can be linked to each other for navigation, statistics, and quick contextual navigation. The user can set a link from the task to any Element stored on the server, and then move quickly using this link. Information about related tasks can also be viewed in the corresponding Elements.

Типичный внешний вид интегрированных задач проиллюстрирован на Фигурах 5-7. На ФИГ. 5 показан один из вариантов моментального снимка экрана интерфейса обсуждения (комментарии пользователя) согласно иллюстративному варианту. На ФИГ. 6 показан один из вариантов моментального снимка экрана интерфейса истории согласно иллюстративному варианту. На ФИГ. 7 показан один из вариантов моментального снимка экрана интерфейса подзадач согласно иллюстративному варианту.A typical appearance of integrated tasks is illustrated in Figures 5-7. In FIG. 5 shows one embodiment of a screenshot of a discussion interface screen (user comments) according to an illustrative embodiment. In FIG. 6 shows one embodiment of a snapshot of a history interface screen according to an illustrative embodiment. In FIG. 7 shows one embodiment of a screenshot of a subtasks interface according to an illustrative embodiment.

Специалист примет во внимание то, что предлагаемый метод и система обеспечивают эффективную двухстороннюю синхронизацию между MICROSOFT Outlook и внешним сервером.The specialist will take into account that the proposed method and system provide effective two-way synchronization between MICROSOFT Outlook and an external server.

Двусторонняя синхронизация необходима, чтобы пользователь мог также работать со специализированными объектами в других интерфейсах, реализованных в виде дополнительных программных модулей для других приложений (то есть MICROSOFT Visual Studio). Внешний сервер также обеспечивает свой собственный веб-интерфейс, посредством которого пользователь может работать со специализированными объектами.Two-way synchronization is necessary so that the user can also work with specialized objects in other interfaces, implemented as additional program modules for other applications (i.e., MICROSOFT Visual Studio). The external server also provides its own web interface through which the user can work with specialized objects.

Со ссылкой на ФИГ. 8, типичная система для реализации изобретения включает в себя многоцелевое вычислительное устройство в виде компьютера 20 или сервера, включающего в себя процессор 21, системную память 22, системную шину 23, которая связывает различные системные компоненты, включая системную память к процессору 21.With reference to FIG. 8, a typical system for implementing the invention includes a multi-purpose computing device in the form of a computer 20 or a server including a processor 21, a system memory 22, a system bus 23 that couples various system components, including the system memory to the processor 21.

Системная шина 23 может быть любого из различных типов структур шин, включающих шину памяти или контроллер памяти, периферийную шину и локальную шину, использующую любую из множества архитектур шин. Системная память включает постоянное запоминающее устройство (ПЗУ) 24 и оперативное запоминающее устройство (ОЗУ) 25. В ПЗУ 24 хранится базовая система ввода/вывода 26 (БИОС), состоящая из основных программ, которые помогают обмениваться информацией между деталями внутри компьютера 20, например, в момент запуска. The system bus 23 may be any of various types of bus structures, including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. System memory includes read-only memory (ROM) 24 and random access memory (RAM) 25. The ROM 24 stores the basic input / output system 26 (BIOS), consisting of basic programs that help exchange information between parts inside the computer 20, for example, at the time of launch.

Компьютер 20 также может включать накопитель на жестких магнитных дисках (НЖМД) 27, накопитель на жестких магнитных дисках (НГМД) 28 для чтения и записи информации с/на гибкий магнитный диск 29 и оптический привод 30 (например, CD-привод, DVD-привод, BD-привод, GD-привод и подобные) для чтения/записи информации с/на оптический диск 31. НЖМД 27, НГМД 28 и оптический привод 30 связаны с системной шиной 23 посредством интерфейса НЖМД 32, интерфейса НГМД 33 и интерфейса оптического привода 34 соответственно. НЖМД 27, НГМД 28 и оптический привод 30 и соответствующие им накопители обеспечивают энергонезависимые хранилища данных, таких как машиночитаемых инструкций, структур данных, программных модулей и других данных компьютера 20.Computer 20 may also include a hard disk drive (HDD) 27, a hard disk drive (HDD) 28 for reading and writing information from / to a flexible magnetic disk 29 and an optical drive 30 (e.g., a CD drive, a DVD drive , BD drive, GD drive and the like) for reading / writing information from / to the optical disk 31. The HDD 27, the HDD 28 and the optical drive 30 are connected to the system bus 23 via the HDD 32 interface, the HDD interface 33 and the optical drive interface 34 respectively. HDD 27, HDD 28 and the optical drive 30 and their corresponding drives provide non-volatile storage of data, such as machine-readable instructions, data structures, program modules and other data of the computer 20.

Стоит также отметить, что описанные выше устройства для хранения информации не ограничиваются перечисленными устройствами, поскольку вместо них могут быть использованы любые типы устройств, предназначенных для хранения информации, такие как флеш-память, магнитные кассеты и пленки, цифровые видеодиски, картриджи Бернулли.It is also worth noting that the devices for storing information described above are not limited to the listed devices, since instead of them any types of devices designed for storing information can be used, such as flash memory, magnetic tapes and films, digital video disks, Bernoulli cartridges.

На НЖМД 27, ПЗУ 24, ЗУПД 25, НГМД 28 и оптических приводах 30 могут быть сохранены различные программные модули, включая операционную систему 35. Компьютер 20 включает файловую систему 36 связанную с операционной системой 35 или включенную в нее, одно или более приложений/программ 37, иные программные модули 38 и программные данные 39. Пользователь может вводить команды и информацию в компьютер 20 при помощи устройств ввода, таких как клавиатура 40 и манипулятор "мышь" 42. Другие устройства ввода (не показаны здесь) могут включать микрофон, джойстик, спутниковую антенну, сканер или любое другое.Various software modules can be stored on the HDD 27, ROM 24, RAM 25, HDD 28 and optical drives 30, including the operating system 35. Computer 20 includes a file system 36 connected to or included in the operating system 35, one or more applications / programs 37, other program modules 38 and program data 39. A user can enter commands and information into a computer 20 using input devices such as a keyboard 40 and a mouse 42. Other input devices (not shown here) may include a microphone, joystick, satellite -hand dish, scanner, or any other.

Эти и другие устройства ввода достаточно часто работают с процессором 21 посредством интерфейса последовательного порта 46, связанного с системной шиной, однако они также могут работать с процессором посредством других интерфейсов, таких как параллельный порт, игровой порт или универсальная последовательная шина. Монитор 47 или любой другой тип дисплея также подключается к системной шине 23 посредством интерфейса, например видеоадаптера 48. Кроме монитора 47 к персональным компьютерам обычно подключают другие периферийные устройства вывода информации (не показано), например динамики и принтеры.These and other input devices quite often work with the processor 21 through the serial port 46 interface connected to the system bus, however, they can also work with the processor through other interfaces, such as a parallel port, a game port, or a universal serial bus. A monitor 47 or any other type of display is also connected to the system bus 23 via an interface, such as a video adapter 48. In addition to the monitor 47, other peripheral information output devices (not shown), such as speakers and printers, are usually connected to personal computers.

Компьютер 20 может работать в сетевом окружении посредством логических подключений/соединений к одному или нескольким удаленным компьютерам 49. Удаленный компьютер (или компьютеры) 49 может представлять собой другой компьютер, сервер, роутер или общие сетевые узлы, а также обычно включает множество устройств и элементов, которые были описаны выше для компьютера 20, хотя на чертеже и указано только устройство хранения информации 50. Логические подключения/соединения включают в себя локальную сеть (ЛВС) 51 и глобальную компьютерную сеть (ГКН) 52. Такие сетевые окружения обычно распространены в компаниях, корпоративных компьютерных сетях, Интранете (Интрасети) и Интернете.Computer 20 may operate in a networked environment through logical connections / connections to one or more remote computers 49. The remote computer (or computers) 49 may be another computer, server, router, or shared network nodes, and typically also includes many devices and elements, which were described above for the computer 20, although only the information storage device 50 is indicated in the drawing. Logical connections / connections include a local area network (LAN) 51 and a global computer network (GKN) 52. Which networking environments are usually distributed in companies, enterprise-wide computer networks, intranets (Intranet) and the Internet.

Компьютер 20, используемый в сетевом окружении локальной сети, подключается к локальной сети (ЛВС) 51 посредством сетевого интерфейса или адаптера 53. При использовании в сетевом окружении ГКН компьютер 20 обычно использует модем 54 или другие средства для установления связи с ГКН 52, например, с Интернетом.Computer 20, used in a network environment of a local area network, is connected to a local area network (LAN) 51 through a network interface or adapter 53. When used in a networked environment, computer 20 typically uses a modem 54 or other means to establish communication with the public network 52, for example, The internet.

Модем 54 может быть внутренним или внешним и подключается к системной шине 23 посредством интерфейса последовательного порта 46. В сетевом окружении программные модули или части их, исполняемые компьютером 20, могут храниться на удаленном устройстве хранения информации. В данном примере показан пример сетевых соединений, однако для соединения компьютера с другими компьютерами могут быть использованы любые другие типы соединения.The modem 54 can be internal or external and is connected to the system bus 23 via the serial port interface 46. In a networked environment, program modules or parts of them executed by computer 20 can be stored on a remote information storage device. This example shows an example of network connections, but any other type of connection can be used to connect the computer to other computers.

Claims (15)

1. Внедренная в компьютер система для синхронизации объектов, описывающих поток работ между клиентом электронной почты и внешним сервером, причем система содержит:
множество объектов, описывающих поток работ, хранящихся на внешнем сервере, и элементы клиента электронной почты;
модуль мониторинга событий изменений для выявления изменений в элементах клиента электронной почты;
модуль мониторинга событий сохранений для выявления сохранений в элементах клиента электронной почты;
модуль чтения/записи из элементов клиента электронной почты для чтения полей из элементов клиента электронной почты и для записи обновленных полей элементов клиента электронной почты, полученных от внешнего сервера,
множество элементов хранения для хранения информации об измененных полях и сохраненных полях;
модуль чтения/записи из элементов хранения для чтения данных из элементов хранения и для записи данных, отражающих измененные поля и сохраненные поля, в элементы хранения; и
компонент приема/передачи данных для отправки и получения данных на/с внешний сервер,
где данные, сохраненные в элементах хранения, принимаются от модуля мониторинга событий изменений и от модуля мониторинга событий сохранений, и
где данные, сохраненные в элементах клиента электронной почты, читаются/записываются на основе элементов хранения.
1. The system implemented in the computer for synchronizing objects describing the workflow between the email client and the external server, the system comprising:
many objects describing the workflow stored on the external server, and elements of the email client;
change event monitoring module for detecting changes in email client elements;
save event monitoring module for detecting saves in email client items;
a module for reading / writing from email client items to read fields from email client items and to write updated fields of email client items received from an external server,
a plurality of storage elements for storing information about changed fields and stored fields;
a module for reading / writing from storage elements for reading data from storage elements and for writing data reflecting changed fields and stored fields to storage elements; and
a component for receiving / transmitting data for sending and receiving data to / from an external server,
where the data stored in the storage elements is received from the change event monitoring module and from the save event monitoring module, and
where data stored in email client items is read / written based on storage items.
2. Система по п. 1, где объекты, описывающие поток работ, нормально не поддерживаются стандартным клиентом электронной почты.2. The system of claim 1, wherein the objects describing the workflow are not normally supported by a standard email client. 3. Система по п. 1, где объекты, описывающие поток работ, преобразованы в элементы клиента электронной почты.3. The system of claim 1, wherein the objects describing the workflow are converted to email client elements. 4. Система по п. 1, где клиент электронной почты представляет собой MICROSOFT Outlook, Lotus Notes.4. The system of claim 1, wherein the email client is MICROSOFT Outlook, Lotus Notes. 5. Система по п. 1, где элементами клиента электронной почты являются любые из:
почтовые сообщения;
контакты;
задачи;
встречи; и
мероприятия.
5. The system of claim 1, wherein the elements of the email client are any of:
Email messages
contacts;
tasks;
meeting and
Events.
6. Система по п. 1, дополнительно содержащая менеджер объектов, описывающих поток работ, встроенный в клиента электронной почты, для управления нестандартными расширенными объектами, описывающими поток работ, которые нормально не поддерживаются клиентом электронной почты.6. The system of claim 1, further comprising a manager of objects describing the workflow embedded in the email client for managing non-standard extended objects describing the work flow that are not normally supported by the email client. 7. Система по п. 6, где расширенные объекты, описывающие поток работ, включают в себя любые из:
обсуждение с иерархией комментариев, отправленных пользователями;
история со списком всех изменений, совершенных над объектом, описывающим поток работ;
журнал регистрации времени, отражающий общее время, затраченное на объект, описывающий поток работ;
неограниченное количество подзадач; и
структурированные ссылки на другие объекты, описывающие поток работ, в системе.
7. The system according to claim 6, where the extended objects that describe the workflow include any of:
discussion with a hierarchy of comments submitted by users;
a history with a list of all changes made on an object that describes the workflow;
a time log reflecting the total time spent on an object describing the work flow;
unlimited number of subtasks; and
structured links to other objects describing the work flow in the system.
8. Внедренный в компьютер способ для синхронизации объектов, описывающих поток работ, между клиентом электронной почты и внешним сервером, содержащий этапы, на которых выполняют:
(а) проверку изменений в элементах клиента электронной почты;
(б) запись списка измененных полей элементов клиента электронной почты, если выявлены изменения;
(в) проверку событий сохранений в элементах клиента электронной почты;
(г) запись списка измененных полей в элементы хранения;
(д) проверку изменений в элементах хранения;
(е) получение актуальных значений полей из элементов клиента электронной почты, если выявлены изменения;
(ж) отправку актуальных значений полей на внешний сервер;
(з) получение уведомлений об обновлении от внешнего сервера;
(и) обновление элементов хранения;
(к) получение полей, обновленных на внешнем сервере, и новых полей от внешнего сервера;
(л) обновление элементов клиента электронной почты полученными полями; и
(м) повторение шагов (а) - (м).
8. A method for synchronizing objects describing a workflow, implemented in a computer, between an email client and an external server, comprising the steps of:
(a) checking for changes in the elements of the email client;
(b) a record of the list of modified fields of the email client elements, if changes are detected;
(c) checking save events in email client items;
(d) writing a list of changed fields to storage items;
(e) checking changes to storage items;
(f) obtaining the actual field values from the elements of the email client, if changes are detected;
(g) sending the actual field values to an external server;
(h) receiving update notifications from an external server;
(i) updating storage items;
(k) receiving fields updated on the external server and new fields from the external server;
(k) updating the email client items with the received fields; and
(m) repeating steps (a) - (m).
9. Способ по п. 8, где элементы клиента электронной почты включают объекты, описывающие поток работ, которые нормально не поддерживаются стандартным клиентом электронной почты.9. The method according to claim 8, where the elements of the email client include objects that describe the workflow that are not normally supported by the standard email client. 10. Способ по п. 8, дополнительно содержащий проверку того, сделаны ли изменения в элементе, который является значимым для процесса.10. The method of claim 8, further comprising checking whether changes have been made to the element that is significant to the process. 11. Способ по п. 8, где список измененных полей элементов клиента электронной почты состоит из значимых измененных полей.11. The method according to claim 8, where the list of changed fields of the elements of the email client consists of significant changed fields. 12. Способ по п. 8, дополнительно содержащий проверку того, сохранены ли изменения в элементе, значимом для процесса.12. The method of claim 8, further comprising checking whether changes are saved to the process-relevant element. 13. Способ по п. 8, дополнительно содержащий интегрирование менеджера объектов, описывающих поток работ, в клиента электронной почты для управления нестандартными расширенными объектами, описывающими поток работ.13. The method according to claim 8, further comprising integrating a manager of objects describing the work flow into an email client for managing non-standard extended objects describing the work flow. 14. Способ по п. 13, где расширенными объектами, описывающими поток работ, являются любые из:
обсуждение с иерархией комментариев, отправленных пользователями;
история со списком всех изменений, совершенных над объектами, описывающими поток работ;
журнал регистрации времени, отражающий общее время, затраченное на объект, описывающий поток работ;
неограниченное количество подзадач; и
структурированные ссылки на другие сущности в системе.
14. The method according to p. 13, where the extended objects that describe the workflow are any of:
discussion with a hierarchy of comments submitted by users;
a history with a list of all changes made to objects describing the work flow;
a time log reflecting the total time spent on an object describing the work flow;
unlimited number of subtasks; and
structured references to other entities in the system.
15. Система для синхронизации объектов, описывающих поток работ, между клиентом электронной почты и внешним сервером, система, включающая:
процессор;
память, связанную с процессором;
программу компьютерной логики, сохраненную в памяти и исполняемую процессором, для выполнения шагов, описанных в п. 8.
15. A system for synchronizing objects describing the workflow between an email client and an external server, a system including:
CPU;
memory associated with the processor;
a computer logic program stored in memory and executed by the processor to perform the steps described in paragraph 8.
RU2012104530/08A 2012-02-09 2012-02-09 Method for synchronisation of objects of personal information manager and external server RU2605047C2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
RU2012104530/08A RU2605047C2 (en) 2012-02-09 2012-02-09 Method for synchronisation of objects of personal information manager and external server
PCT/RU2012/000300 WO2013119141A1 (en) 2012-02-09 2012-04-18 Method for a synchronization of objects between a personal information manager and an external server
EA201400805A EA201400805A1 (en) 2012-02-09 2012-04-18 METHOD FOR SYNCHRONIZATION OF OBJECTS BETWEEN PERSONAL INFORMATION MANAGER AND EXTERNAL SERVER

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2012104530/08A RU2605047C2 (en) 2012-02-09 2012-02-09 Method for synchronisation of objects of personal information manager and external server

Publications (2)

Publication Number Publication Date
RU2012104530A RU2012104530A (en) 2013-08-20
RU2605047C2 true RU2605047C2 (en) 2016-12-20

Family

ID=48947812

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2012104530/08A RU2605047C2 (en) 2012-02-09 2012-02-09 Method for synchronisation of objects of personal information manager and external server

Country Status (3)

Country Link
EA (1) EA201400805A1 (en)
RU (1) RU2605047C2 (en)
WO (1) WO2013119141A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3839010A1 (en) 2019-12-18 2021-06-23 The Fuel Holding B.V. Reactor for pyrolysis of polymeric waste material and system comprising the same

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1130512A2 (en) * 2000-01-25 2001-09-05 FusionOne, Inc. Data transfer and synchronization system
EP1717743A1 (en) * 2005-04-28 2006-11-02 Océ-Technologies B.V. Managing digital documents in a computer system
US20070113101A1 (en) * 2005-07-01 2007-05-17 Levasseur Thierry Secure electronic mail system with configurable cryptographic engine
US7650431B2 (en) * 2006-08-28 2010-01-19 Microsoft Corporation Serving locally relevant advertisements

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7650432B2 (en) * 2004-05-20 2010-01-19 Bea Systems, Inc. Occasionally-connected application server

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1130512A2 (en) * 2000-01-25 2001-09-05 FusionOne, Inc. Data transfer and synchronization system
EP1717743A1 (en) * 2005-04-28 2006-11-02 Océ-Technologies B.V. Managing digital documents in a computer system
US20070113101A1 (en) * 2005-07-01 2007-05-17 Levasseur Thierry Secure electronic mail system with configurable cryptographic engine
US7650431B2 (en) * 2006-08-28 2010-01-19 Microsoft Corporation Serving locally relevant advertisements

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
СВЕТЛАНА ШЛЯХИНА, ";Синхронизация данных";, КопьютерПресс N7, 2005 (найдено в Интернет: URL: http://www.compress.ru/Article.aspx?id=11440, 16.02.2016). *

Also Published As

Publication number Publication date
RU2012104530A (en) 2013-08-20
EA201400805A1 (en) 2014-10-30
WO2013119141A1 (en) 2013-08-15

Similar Documents

Publication Publication Date Title
JP4989046B2 (en) Method and system for providing cross-project commitments
US8554596B2 (en) System and methods for managing complex service delivery through coordination and integration of structured and unstructured activities
US8826281B2 (en) Managing document publication using time-driven job scheduling
KR101213918B1 (en) Method and system for tracking changes in a document
US20090307045A1 (en) System and method for optimization of meetings based on subject/participant relationships
JP4800328B2 (en) Computer program integrating computer application and computer operating method
US20130212597A1 (en) Method and Apparatus to Transmit a Calendar Event in Target Calendaring System Format
US7774792B2 (en) Automatic create, update and delete event publishing
US20210264376A1 (en) Meeting location and time scheduler
US20090157459A1 (en) Collaborative project management
EP1806688A1 (en) Decentralised audit system in collaborative workflow environment
US8244644B2 (en) Supply chain multi-dimensional serial containment process
US20070078937A1 (en) Method, system, and program product for managing communications pursuant to an information technology (it) migration
US20070083562A1 (en) Computer-implemented method, tool, and program product for scheduling an information technology (IT) migration
US7890962B2 (en) Business process extensions to enable alerts and reports within the context of groupware
KR20120022911A (en) Synchronizing self-referencing fields during two-way synchronization
US20130086437A1 (en) Communicating unexpected collaboration server responses on reconnection
RU2605047C2 (en) Method for synchronisation of objects of personal information manager and external server
De Leoni et al. Visual support for work assignment in process-aware information systems
EP2600294A1 (en) Reporting work with user profile contacts
US8725821B1 (en) System and method for project and process management by synchronizing custom objects between ms outlook and external server
US8108263B2 (en) Method, system, and computer readable medium for grouping orders and creating short orders
US20090024372A1 (en) Method of identifying reusable services through modelling a business process and commonalities in process flows
Newman et al. Punctuated process modelling of information systems development: An illustration from a mid-sized enterprise
US8656391B2 (en) System and method for initiating the execution of a process

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20200210

NF4A Reinstatement of patent

Effective date: 20210913