JP6794686B2 - Information processing system, information processing device, and information processing method - Google Patents
Information processing system, information processing device, and information processing method Download PDFInfo
- Publication number
- JP6794686B2 JP6794686B2 JP2016138026A JP2016138026A JP6794686B2 JP 6794686 B2 JP6794686 B2 JP 6794686B2 JP 2016138026 A JP2016138026 A JP 2016138026A JP 2016138026 A JP2016138026 A JP 2016138026A JP 6794686 B2 JP6794686 B2 JP 6794686B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- flow
- identification information
- processing
- program
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Landscapes
- Stored Programmes (AREA)
Description
本発明は、情報処理システム、情報処理装置、及び情報処理方法に関する。 The present invention relates to an information processing system, an information processing device, and an information processing method.
近年、クラウドコンピューティング等により多種多様な外部サービスが提供されるようになった。例えば、ユーザにより指定された電子データを外部ストレージに保管する外部サービス等が知られている。 In recent years, a wide variety of external services have come to be provided by cloud computing and the like. For example, an external service that stores electronic data specified by a user in an external storage is known.
また、1以上の処理を一連の処理として表した情報等が含まれる指示書に基づいて、当該一連の処理を実行する画像形成装置が知られている(例えば特許文献1参照)。 Further, there is known an image forming apparatus that executes a series of processes based on an instruction sheet including information representing one or more processes as a series of processes (see, for example, Patent Document 1).
しかしながら、上記の従来技術では、外部サービスと連携した一連の処理を実行させるためには、画像形成装置に搭載されるアプリケーションの開発が必要であった。一方で、アプリケーションの開発には、例えば、プログラミング言語等に関する専門的な知識や経験を必要する場合があった。 However, in the above-mentioned conventional technique, it is necessary to develop an application mounted on an image forming apparatus in order to execute a series of processes linked with an external service. On the other hand, application development may require specialized knowledge and experience regarding programming languages, for example.
本発明の一実施形態は、上記の点に鑑みてなされたもので、アプリケーションの開発を支援することを目的とする。 One embodiment of the present invention has been made in view of the above points, and an object of the present invention is to support the development of an application.
上記目的を達成するため、本発明の一実施形態は、1以上の情報処理装置を含み、所定の処理をそれぞれ実行する複数のプログラムを有する情報処理システムであって、電子データを用いた一連の処理毎に、該一連の処理のそれぞれの処理を実行する1以上の前記プログラムを識別するプログラム識別情報と、1以上の前記プログラムそれぞれの実行に用いられるパラメータと、1以上の前記プログラムの実行順とが定義されたフロー情報を、該フロー情報を識別するフロー識別情報と関連付けて記憶する記憶手段と、前記情報処理システムに接続される1以上の機器のうちの第1の機器に表示されたフロー作成画面において、前記プログラム識別情報と、前記パラメータと、前記実行順とを定義するユーザ操作が行われると、該プログラム識別情報と、前記パラメータと、前記実行順とが定義された前記フロー情報を作成して、作成した該フロー情報を識別する前記フロー識別情報と関連付けて前記記憶手段に記憶させる登録手段と、前記1以上の機器のうちの第2の機器から、電子データに関する情報と、前記フロー識別情報とを受信する受信手段と、前記記憶手段に記憶されている前記フロー情報のうち、前記受信手段により受信した前記フロー識別情報と関連付けて前記記憶手段に記憶されているフロー情報を取得する取得手段と、前記取得手段により取得した前記フロー情報に定義されている前記プログラム識別情報により識別される前記プログラムそれぞれを、前記フロー情報に定義されている前記実行順に従って、前記フロー情報に定義されている前記パラメータを用いて実行させることで、前記受信手段により受信した前記電子データに関する情報に基づく電子データを用いた前記一連の処理を実行する実行手段と、を有する。 In order to achieve the above object, one embodiment of the present invention is an information processing system including one or more information processing devices and having a plurality of programs each executing a predetermined process, and is a series of information processing systems using electronic data. For each process, program identification information that identifies one or more programs that execute each process of the series of processes, parameters used for executing each of the one or more programs, and execution order of one or more programs. Is displayed on a storage means that stores the flow information defined as and in association with the flow identification information that identifies the flow information, and on the first device of one or more devices connected to the information processing system. When a user operation that defines the program identification information, the parameters, and the execution order is performed on the flow creation screen, the flow information in which the program identification information, the parameters, and the execution order are defined is performed. Is created and stored in the storage means in association with the flow identification information for identifying the created flow information, and information related to electronic data from the second device of the one or more devices. The receiving means for receiving the flow identification information and the flow information stored in the storage means in association with the flow identification information received by the receiving means among the flow information stored in the storage means. The acquisition means to be acquired and the program identified by the program identification information defined in the flow information acquired by the acquisition means are converted into the flow information according to the execution order defined in the flow information. It has an execution means for executing the series of processes using the electronic data based on the information about the electronic data received by the receiving means by executing the execution using the defined parameters.
本発明の一実施形態によれば、アプリケーションの開発を支援することができる。 According to one embodiment of the present invention, it is possible to support the development of an application.
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
[第一の実施形態]
<システム構成>
まず、本実施形態に係る情報処理システム1のシステム構成について、図1を参照しながら説明する。図1は、本実施形態に係る情報処理システム1の一例のシステム構成を示す図である。
[First Embodiment]
<System configuration>
First, the system configuration of the
図1に示す情報処理システム1は、サービス提供システム10と、機器20と、PC端末30と、外部ストレージシステム40とを含み、インターネット等の広域的なネットワークN1を介して通信可能に接続されている。
The
サービス提供システム10は、一台以上の情報処理装置で実現され、ネットワークN1を介して、クラウドサービス等の外部サービスと連携した一連の処理により実現される各種のサービスを提供する。
The
本実施形態に係るサービス提供システム10が提供するサービスの具体例については後述する。なお、以降では、一連の処理を「処理フロー」とも表す。
A specific example of the service provided by the
なお、本実施形態では、外部サービスの具体例としてクラウドサービスを採用して説明するが、これに限られない。本実施形態は、例えば、ASP(Application Service Provider)によって提供されるサービスやWebサービス等のネットワークを介して提供される各種の外部サービスに関して適用されても良い。 In this embodiment, a cloud service will be adopted as a specific example of the external service, but the description is not limited to this. This embodiment may be applied, for example, to various external services provided via a network such as a service provided by an ASP (Application Service Provider) or a Web service.
機器20は、ユーザが使用する各種の電子機器である。すなわち、機器20は、例えば、MFP(Multifunction Peripheral)等の画像形成装置、PC(パーソナルコンピュータ)、プロジェクタ、電子黒板、デジタルカメラ等である。ユーザは、機器20を用いて、サービス提供システム10が提供する各種のサービスを利用することができる。
The
なお、以降では、複数の機器20について、各々を区別するときは、「機器201」、「機器202」等と添え字を用いて記載する。
In the following, a plurality of
PC端末30は、例えば、ユーザが使用するデスクトップPC、ノート型PC、スマートフォン、タブレット端末等である。ユーザは、PC端末30を用いて、サービス提供システム10が提供する各種のサービスを利用することができる。
The
なお、以降では、複数のPC端末30について、各々を区別するときは、「PC端末301」、「PC端末302」等と添え字を用いて記載する。
In the following, when distinguishing each of the plurality of
外部ストレージシステム40は、ネットワークN1を介してストレージサービス(又はオンラインストレージ)と呼ばれるクラウドサービスを提供するコンピュータシステムである。ストレージサービスとは、外部ストレージシステム40のストレージの記憶領域を貸し出すサービスである。
The
なお、以降では、複数の外部ストレージシステム40について、各々を区別するときは、「外部ストレージシステム401」、「外部ストレージシステム402」等と添え字を用いて記載する。また、外部ストレージシステム401により提供されるストレージサービスの名称を「ストレージA」、外部ストレージシステム401により提供されるストレージサービスの名称を「ストレージB」等とする。
In the following, a plurality of
なお、外部ストレージシステム40は、複数台の情報処理装置によって実現されるシステムであっても良い。
The
また、図1に示す情報処理システム1の構成は一例であって、他の構成であっても良い。例えば、本実施形態に係る情報処理システム1には、電子データの入力及び出力の少なくとも一方を行う各種機器が含まれ、これらの機器がサービス提供システム10により提供される各種サービスを利用しても良い。
Further, the configuration of the
<ハードウェア構成>
次に、本実施形態に係る情報処理システム1に含まれるサービス提供システム10及びPC端末30のハードウェア構成について、図2を参照しながら説明する。図2は、本実施形態に係るサービス提供システム10及びPC端末30の一例のハードウェア構成を示す図である。なお、サービス提供システム10及びPC端末30は、同様のハードウェア構成を有しているため、以降では、主に、サービス提供システム10のハードウェア構成について説明する。
<Hardware configuration>
Next, the hardware configurations of the
図2に示すサービス提供システム10は、入力装置11と、表示装置12と、外部I/F13と、RAM(Random Access Memory)14とを有する。また、サービス提供システム10は、ROM(Read Only Memory)15と、CPU(Central Processing Unit)16と、通信I/F17と、HDD(Hard Disk Drive)18とを有する。これらの各ハードウェアは、それぞれがバスBで接続されている。
The
入力装置11は、キーボードやマウス、タッチパネル等を含み、ユーザが各操作信号を入力するのに用いられる。表示装置12は、ディスプレイ等を含み、サービス提供システム10による処理結果を表示する。なお、入力装置11及び表示装置12の少なくとも一方は、必要なときにサービス提供システム10に接続して利用する形態であっても良い。
The
通信I/F17は、サービス提供システム10をネットワークN1に接続するインタフェースである。これにより、サービス提供システム10は、通信I/F17を介して通信を行うことができる。
The communication I /
HDD18は、プログラムやデータを格納している不揮発性の記憶装置である。HDD18に格納されるプログラムやデータには、サービス提供システム10全体を制御する基本ソフトウェアであるOS(Operating System)、OS上において各種機能を提供するアプリケーションソフトウェア等がある。
The
なお、サービス提供システム10は、HDD18に代え、記憶媒体としてフラッシュメモリを用いるドライブ装置(例えばソリッドステートドライブ:SSD)を利用するものであっても良い。また、HDD18は、格納しているプログラムやデータを所定のファイルシステム及び/又はDBにより管理している。
The
外部I/F13は、外部装置とのインタフェースである。外部装置には、記録媒体13a等がある。これにより、サービス提供システム10は、外部I/F13を介して記録媒体13aの読み取りや書き込みを行うことができる。記録媒体13aには、フレキシブルディスク、CD、DVD、SDメモリカード、USBメモリ等がある。
The external I /
ROM15は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ROM15には、サービス提供システム10の起動時に実行されるBIOS(Basic Input/Output System)、OS設定、及びネットワーク設定等のプログラムやデータが格納されている。RAM14は、プログラムやデータを一時保持する揮発性の半導体メモリである。
The
CPU16は、ROM15やHDD18等の記憶装置からプログラムやデータをRAM14上に読み出し、処理を実行することで、サービス提供システム10全体の制御や機能を実現する演算装置である。
The
本実施形態に係るサービス提供システム10及びPC端末30は、図2に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
By having the hardware configuration shown in FIG. 2, the
次に、本実施形態に係る情報処理システム1に含まれる機器20が画像形成装置である場合のハードウェア構成について、図3を参照しながら説明する。図3は、本実施形態に係る機器20の一例のハードウェア構成を示す図である。
Next, the hardware configuration when the
図3に示す機器20は、コントローラ21と、操作パネル22と、外部I/F23と、通信I/F24と、プリンタ25と、スキャナ26とを有する。また、コントローラ21は、CPU31と、RAM32と、ROM33と、NVRAM34と、HDD35とを有する。
The
ROM33は、各種プログラムやデータを格納している不揮発性の半導体メモリである。RAM32は、プログラムやデータを一時保持する揮発性の半導体メモリである。NVRAM34は、例えば設定情報等を格納している。また、HDD35は、各種プログラムやデータを格納している不揮発性の記憶装置である。
The
CPU31は、ROM33やNVRAM34、HDD35等からプログラムやデータ、設定情報等をRAM32上に読み出し、処理を実行することで、機器20全体の制御や機能を実現する演算装置である。
The
操作パネル22は、ユーザからの入力を受け付ける入力部と、表示を行う表示部とを備えている。外部I/F23は、外部装置とのインタフェースである。外部装置には、記録媒体23a等がある。これにより、機器20は、外部I/F23を介して記録媒体23aの読み取り及び/又は書き込みを行うことができる。なお、記録媒体23aには、例えば、ICカード、フレキシブルディスク、CD、DVD、SDメモリカード、USBメモリ等がある。
The
通信I/F24は、機器20をネットワークに接続するインタフェースである。これにより、機器20は、通信I/F24を介して通信を行うことができる。プリンタ25は、印刷データを印刷する印刷装置である。スキャナ26は、原稿を読み取って電子ファイル(画像ファイル)を生成する読取装置である。
The communication I /
本実施形態に係る機器20は、図3に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
The
<サービス提供システムが提供するサービス>
ここで、本実施形態に係るサービス提供システム10が提供するサービスについて説明する。なお、以降では、機器20が画像形成装置であるものとして説明する。
<Services provided by the service provision system>
Here, the service provided by the
本実施形態では、機器20において原稿をスキャンして生成された電子ファイルを、OCR(Optical Character Reader)処理して、外部ストレージシステム40に保存するサービスを「OCR配信」サービスと表す。そして、本実施形態では、サービス提供システム10が「OCR配信」サービスを提供する場合について説明する。
In the present embodiment, a service in which an electronic file generated by scanning a document in the
ここで、サービス提供システム10が「OCR配信」サービスを提供するには、当該サービスを実現する一連の処理(処理フロー)をサービス提供システム10に登録する必要がある。
Here, in order for the
したがって、本実施形態では、「OCR配信」サービスを実現する一連の処理を登録する場合と、当該一連の処理により実現される「OCR配信」サービスを利用する場合とについて説明する。 Therefore, in the present embodiment, a case of registering a series of processes for realizing the "OCR distribution" service and a case of using the "OCR distribution" service realized by the series of processes will be described.
ただし、サービス提供システム10により提供されるサービスは、これらに限られない。例えば、サービス提供システム10は、機器20において原稿をスキャンして生成された電子ファイルを、OCR処理して、所定のメールアドレス宛にメール送信するサービスを提供しても良い。また、例えば、サービス提供システム10は、外部ストレージシステム40に保存されている電子ファイルを、プロジェクタで投影するサービスを提供しても良い。更に、例えば、サービス提供システム10は、外部ストレージシステム40に保存されている電子ファイルを、機器20で印刷するサービスを提供しても良い。
However, the services provided by the
<機能構成>
次に、本実施形態に係る情報処理システム1の機構構成について、図4を参照しながら説明する。図4は、第一の実施形態に係る情報処理システム1の一例の機能構成を示す図である。
<Functional configuration>
Next, the mechanical configuration of the
図4に示す機器20は、UI制御部210と、スキャン処理部220とを有する。これら各機能部は、機器20にインストールされた1以上のプログラムが、CPU31に実行させる処理により実現される。
The
UI制御部210は、操作パネル22に各種画面を表示させる。また、UI制御部210は、操作パネル22に表示された各種画面におけるユーザの各種操作を受け付ける。
The
スキャン処理部220は、UI制御部210により受け付けられたユーザの操作に応じて、スキャナ26で原稿をスキャンして電子ファイル(画像ファイル)を生成する。
The
図4に示すPC端末30は、UI制御部310を有する。当該機能部は、PC端末30にインストールされた1以上のプログラムが、CPU16に実行させる処理により実現される。
The
UI制御部310は、表示装置12に各種画面を表示させる。また、UI制御部210は、表示装置12に表示された各種画面において、入力装置11により入力されたユーザの各種操作を受け付ける。
The
図4に示すサービス提供システム10は、サービス処理部110と、ドキュメントサービス部160と、外部ストレージ連携部170とを有する。これら各機能部は、サービス提供システム10にインストールされた1以上のプログラムが、CPU16に実行させる処理により実現される。
The
また、サービス提供システム10は、アプリ情報記憶部180を有する。当該記憶部は、HDD18を用いて実現可能である。なお、アプリ情報記憶部180は、サービス提供システム10とネットワークを介して接続される記憶装置等を用いて実現されても良い。
Further, the
サービス処理部110は、機器20のUI制御部210からの要求に応じて、後述するアプリ情報1000により提供される各種サービスに関する処理を行う。また、サービス処理部110は、PC端末30のUI制御部310からの要求に応じて、アプリ情報1000に含まれる処理フロー情報1100の作成に関する処理を行う。
The
なお、処理フロー情報1100とは、アプリ情報1000により提供されるサービス(例えば、「OCR配信」サービス等)を実現するための一連の処理(処理フロー)が定義された情報である。
The
ここで、サービス処理部110は、アプリ管理部120と、ロジック処理部130と、フロー作成処理部140と、データI/F部150とを有する。
Here, the
アプリ管理部120は、アプリ情報記憶部180に記憶されているアプリ情報1000を管理する。アプリ管理部120は、機器20のUI制御部210やPC端末30のUI制御部310からの要求に応じて、各種の情報を返信する。
The
例えば、アプリ管理部120は、機器20のUI制御部210からの要求に応じて、アプリ一覧情報を返信する。なお、アプリ一覧情報とは、アプリ情報1000の名称(アプリケーション名)やアプリ情報1000の識別情報(アプリID)の一覧を示す情報である。
For example, the
また、例えば、アプリ管理部120は、ロジック処理部130からの要求に応じて、アプリ情報1000に含まれる処理フロー情報1100を返信する。
Further, for example, the
更に、アプリ管理部120は、フロー作成処理部140からの要求に応じて、PC端末30において作成された処理フロー情報1100をアプリ情報記憶部180に記憶させる。
Further, the
ロジック処理部130は、機器20のUI制御部210からの要求に応じて、アプリ情報1000に含まれる処理フロー情報1100をアプリ管理部120から取得する。そして、ロジック処理部130は、取得した処理フロー情報1100に基づいて、ドキュメントサービス部160や外部ストレージ連携部170のファイル処理部171等に処理の実行を要求することで、当該処理フロー情報1100に基づく一連の処理を実行する。
The
なお、ロジック処理部130は、後述するコンポーネントを組み合わせることにより、処理フロー情報1100に基づく一連の処理を実行する。
The
これにより、本実施形態に係るサービス提供システム10では、アプリ情報1000により提供される各種サービスが実現される。ロジック処理部130の詳細については後述する。
As a result, in the
フロー作成処理部140は、PC端末30のUI制御部310からの要求に応じて、処理フロー作成画面を返信する。なお、処理フロー作成画面とは、処理フロー情報1100を作成するための画面である。
The flow
そして、フロー作成処理部140は、処理フロー作成画面において作成された処理フローを示す処理フロー情報1100の登録をアプリ管理部120に要求する。
Then, the flow
このように、本実施形態に係る情報処理システム1は、PC端末30において作成された処理フローをサービス提供システム10に登録することができる。
In this way, the
データI/F部150は、機器20のUI制御部210からの要求に応じて、外部ストレージ連携部170のデータ処理部172に対して、各種の要求(例えば、フォルダ一覧の取得要求等)を行う。
The data I /
ドキュメントサービス部160は、処理フロー情報1100に基づく一連の処理(処理フロー)に含まれる所定の処理を実行する。ここで、ドキュメントサービス部160は、OCR処理部161と、メール送信部162とを有する。
The
OCR処理部161は、電子ファイルに対してOCR処理を行う。メール送信部162は、指定されたメールアドレス宛にメールを送信する。
The
なお、ドキュメントサービス部160には、これら以外にも、例えば、電子ファイルの圧縮又は解凍するための圧縮・解凍処理部、電子ファイルのデータ形式を変換するためのデータ形式変換部等、種々の機能部が含まれていても良い。
In addition to these, the
外部ストレージ連携部170は、ロジック処理部130やデータI/F部150からの要求に応じて、外部ストレージシステム40に対して、各種の要求(例えば、フォルダ一覧の取得要求等)を行う。
The external
本実施形態に係るサービス提供システム10は、当該サービス提供システム10と連携して処理を行う外部ストレージシステム40毎に、それぞれの外部ストレージシステム40に対応する外部ストレージ連携部170を有する。すなわち、本実施形態に係るサービス提供システム10は、外部ストレージシステム401に対して各種の要求を行うための外部ストレージA連携部1701を有する。同様に、本実施形態に係るサービス提供システム10は、外部ストレージシステム402に対して各種の要求を行うための外部ストレージB連携部1702等を有する。
The
なお、以降では、複数の外部ストレージ連携部170について、各々を区別するときは、上記のように、「外部ストレージA連携部1701」、「外部ストレージB連携部1702」等と添え字を用いて表す。
In the following, when distinguishing each of the plurality of external
ここで、外部ストレージ連携部170は、ロジック処理部130からの要求を受け付けるファイル処理部171と、データI/F部150からの要求を受け付けるデータ処理部172とを有する。
Here, the external
ファイル処理部171は、外部ストレージシステム40に保存されている電子ファイルに対する操作(例えば、取得、保存、編集等)を行うためのAPI(Application Programming Interface)が定義された共通I/F1711及び固有I/F1712を有する。
The
共通I/F1711は、複数の外部ストレージシステム40間で共通に利用できるAPIであり、例えば図5(a)に示すAPIが挙げられる。すなわち、ファイル処理部171の共通I/F1711は、全ての外部ストレージシステム40が利用できるファイル操作に関する機能(例えば、ファイルの取得、保存等)を利用するためのAPI群である。
The common I /
一方、固有I/F1712は、特定の外部ストレージシステム40において利用できるAPIであり、例えば図5(b)に示すAPIが挙げられる。すなわち、ファイル処理部171の固有I/F1712は、ある特定の外部ストレージシステム40において利用できるファイル操作に関する機能(例えば、ドキュメントにファイルを付加等)を利用するためのAPI群である。
On the other hand, the unique I / F 1712 is an API that can be used in the specific
したがって、共通I/F1711は、全ての外部ストレージ連携部170に対して同様に定義される。一方で、固有I/F1712は、当該固有I/F1712で定義されるAPIが利用可能な特定の外部ストレージシステム40に対応する外部ストレージ連携部170に対して定義される。
Therefore, the common I /
データ処理部172は、外部ストレージシステム40に保存されている電子ファイルの書誌情報等のメタデータ(例えば、ファイル一覧やフォルダ一覧等)を取得等するためのAPIが定義された共通I/F1721及び固有I/F1722を有する。
The data processing unit 172 has a common I / F1721 in which an API for acquiring metadata (for example, a file list, a folder list, etc.) such as bibliographic information of an electronic file stored in the
共通I/F1721は、複数の外部ストレージシステム40間で共通に利用できるAPIであり、例えば図5(c)に示すAPIが挙げられる。すなわち、データ処理部172の共通I/F1721は、全ての外部ストレージシステム40で利用できるメタデータ取得に関する機能(例えば、ファイル一覧の取得、フォルダ一覧の取得等)を利用するためのAPI群である。
The common I / F1721 is an API that can be commonly used among a plurality of
一方、固有I/F1722は、ある特定の外部ストレージシステム40において利用できるAPIであり、例えば図5(d)に示すAPIが挙げられる。すなわち、データ処理部172の固有I/F1722は、ある特定の外部ストレージシステム40において利用できるメタデータ取得等に関する機能(例えば、画像ファイル一覧の取得等)を利用するためのAPI群である。
On the other hand, the unique I /
したがって、共通I/F1721は、全ての外部ストレージ連携部170に対して同様に定義される。一方で、固有I/F1722は、当該固有I/F1722で定義されるAPIが利用可能な特定の外部ストレージシステム40に対応する外部ストレージ連携部170に対して定義される。
Therefore, the common I / F1721 is similarly defined for all external
以上のように、本実施形態に係るサービス提供システム10は、当該サービス提供システム10と連携して処理を行う外部ストレージシステム40毎に、それぞれの外部ストレージシステム40に対応する外部ストレージ連携部170を有する。このため、連携先となる外部ストレージシステム40を追加や削除(以降、「追加等」と表す。)する場合、当該追加等される外部ストレージシステム40に対応する外部ストレージ連携部170をサービス提供システム10に追加等すれば良い。
As described above, the
これにより、本実施形態に係るサービス提供システム10では、連携先となる外部ストレージシステム40の追加等に伴う影響を局所化することができる。換言すれば、本実施形態に係るサービス提供システム10では、他の機能部(サービス処理部110やドキュメントサービス部160等)に影響を与えることなく、連携先となる外部ストレージシステム40の追加等を行うことができる。なお、外部ストレージ連携部170の追加等は、SDK(Software Development Kit)を用いて行うことができる。
As a result, in the
また、外部ストレージ連携部170のファイル処理部171は、共通I/F1711と固有I/F1712とを異なるモジュール等で定義している。また、共通I/F1711及び固有I/F1712で定義されるAPIは、「外部ストレージ名」を指定することで利用できる(すなわち、「外部ストレージ名」が可変部分となっている。)。
Further, the
これにより、外部ストレージ連携部170を追加する場合、他の外部ストレージ連携部170のファイル処理部171に定義されている共通I/F1711を再利用することができる。換言すれば、外部ストレージ連携部170を追加する場合、当該追加する外部ストレージ連携部170のファイル処理部171は、固有I/F1722のみを開発すれば良い。このことは、データ処理部172の共通I/F1721及び固有I/F1722についても同様である。
As a result, when the external
アプリ情報記憶部180は、機器20に各種サービスを提供するためのアプリケーションであるアプリ情報1000を記憶する。
The application
アプリ情報1000は、当該アプリ情報1000を識別するためのアプリIDと、当該アプリ情報1000の名称(アプリ名)とが関連付けられてアプリ情報記憶部180に記憶されている。また、アプリ情報1000には、機器20に提供するサービスを実現するための一連の処理(処理フロー)が定義された処理フロー情報1100が含まれる。なお、処理フロー情報1100の詳細については後述する。
The
ここで、ロジック処理部130の詳細な機能構成について、図6を参照しながら説明する。図6は、第一の実施形態に係るロジック処理部130の一例の機能構成を示す図である。
Here, the detailed functional configuration of the
図6に示すロジック処理部130は、フロー実行部131と、コンポーネント管理部132と、コンポーネント群133と、型変換管理部134と、型変換群135とを有する。また、ロジック処理部130は、処理情報テーブル2000と、型変換情報テーブル3000とを利用する。
The
フロー実行部131は、機器20のUI制御部210からの要求に応じて、アプリ情報1000に含まれる処理フロー情報1100をアプリ管理部120から取得する。そして、フロー実行部131は、アプリ管理部120から取得した処理フロー情報1100に基づいて、コンポーネントに対して処理の実行を要求する。
The
ここで、コンポーネントとは、処理フロー情報1100に基づく一連の処理(処理フロー)に含まれる所定の処理を実行するためのモジュール等である。したがって、処理フロー情報1100に基づく一連の処理は、1以上のコンポーネントにより実行される各処理が組み合わされることにより実現される。なお、コンポーネントは、例えばクラスや関数等で定義される。
Here, the component is a module or the like for executing a predetermined process included in a series of processes (process flow) based on the
コンポーネント管理部132は、フロー実行部131からの要求に応じて、コンポーネントの生成を行う。コンポーネントの生成とは、例えばクラスや関数等で定義されているコンポーネントを、メモリ(例えばRAM14)上に展開することである。
The
また、コンポーネント管理部132は、フロー作成処理部140からの要求に応じて、処理情報テーブル2000を返信する。
Further, the
ここで、処理情報テーブル2000の詳細について、図7を参照しながら説明する。図7は、処理情報テーブル2000の一例を示す図である。 Here, the details of the processing information table 2000 will be described with reference to FIG. 7. FIG. 7 is a diagram showing an example of the processing information table 2000.
図7に示す処理情報テーブル2000には、1以上の処理情報が格納されている。また、処理情報は、データ項目として、コンポーネント名と、アイコンパスと、コンポーネントIDと、オペレーション名と、オペレーションIDと、パラメータ設定情報とを有する。 One or more processing information is stored in the processing information table 2000 shown in FIG. 7. Further, the processing information has a component name, an icon path, a component ID, an operation name, an operation ID, and parameter setting information as data items.
コンポーネント名は、コンポーネントの名称である。アイコンパスは、コンポーネント及びオペレーションを表すアイコン等の表示部品が格納されている格納先パス(例えば、URL(Uniform Resource Locator)等)である。 The component name is the name of the component. The icon path is a storage destination path (for example, URL (Uniform Resource Locator) or the like) in which display components such as icons representing components and operations are stored.
コンポーネントIDは、コンポーネントを識別する識別情報である。オペレーション名は、コンポーネントにより実行される処理を示すオペレーションの名称である。オペレーションIDは、オペレーションを識別する識別情報である。パラメータ設定情報は、コンポーネントにより実行される処理に用いられるパラメータ情報のパラメータ値を設定する際に用いられる各種情報である。 The component ID is identification information that identifies the component. The operation name is the name of the operation that indicates the processing performed by the component. The operation ID is identification information that identifies the operation. The parameter setting information is various information used when setting the parameter value of the parameter information used for the processing executed by the component.
また、パラメータ設定情報には、パラメータ名、表示名、及び入力形式等が含まれる。パラメータ名は、パラメータ情報の名称である。表示名は、パラメータ情報のパラメータ値を設定するための画面(後述するパラメータ設定画面)に表示される表示名である。入力形式は、パラメータ値として設定可能なデータ形式や入力数(例えば、文字や数字、入力可能な文字数等)である。 Further, the parameter setting information includes a parameter name, a display name, an input format, and the like. The parameter name is the name of the parameter information. The display name is a display name displayed on a screen for setting a parameter value of parameter information (a parameter setting screen described later). The input format is a data format that can be set as a parameter value and the number of inputs (for example, characters and numbers, the number of characters that can be input, etc.).
例えば、コンポーネント名「外部ストレージAコンポーネント」(コンポーネントID「storageA」)は、オペレーション名「配信」(オペレーションID「uploadFile」)の処理(オペレーション)を実行することできる。このとき、外部ストレージAコンポーネントは、パラメータ名「folderID」のパラメータ情報を用いることが示されている。 For example, the component name “external storage A component” (component ID “storeA”) can execute the process (operation) of the operation name “delivery” (operation ID “uploadFile”). At this time, it is shown that the external storage A component uses the parameter information of the parameter name “folderID”.
同様に、例えば、コンポーネント名「外部ストレージAコンポーネント」(コンポーネントID「storageA」)は、オペレーション名「取得」(オペレーションID「getFiles」)の処理(オペレーション)を実行することができる。このとき、外部ストレージAコンポーネントは、パラメータ名「fileID」のパラメータ情報を用いることが示されている。 Similarly, for example, the component name “external storage A component” (component ID “storeA”) can execute the process (operation) of the operation name “acquisition” (operation ID “getFiles”). At this time, it is shown that the external storage A component uses the parameter information of the parameter name “fileID”.
また、同様に、例えば、コンポーネント名「OCRコンポーネント」(コンポーネントID「ocr」)は、オペレーション名「OCR」(オペレーションID「process」)の処理(オペレーション)を実行することができる。このとき、OCRコンポーネントは、パラメータ名「language」のパラメータ情報と、パラメータ名「outputType」のパラメータ情報を用いることが示されている。 Similarly, for example, the component name “OCR component” (component ID “ocr”) can execute the process (operation) of the operation name “OCR” (operation ID “process”). At this time, it is shown that the OCR component uses the parameter information of the parameter name "language" and the parameter information of the parameter name "outputType".
このように、各コンポーネントには、1以上のオペレーションが含まれる。そして、コンポーネントは、オペレーションと、当該オペレーションに対するパラメータとが設定されることで、各種処理を実行することができる。 As such, each component contains one or more operations. Then, the component can execute various processes by setting the operation and the parameters for the operation.
コンポーネント群133は、コンポーネントの集合である。コンポーネント群133には、外部ストレージシステム401(外部ストレージA)と連携して処理を行うための外部ストレージAコンポーネント1331が含まれる。また、コンポーネント群133には、外部ストレージシステム402(外部ストレージB)と連携して処理を行うための外部ストレージBコンポーネント1332が含まれる。
The
さらに、コンポーネント群133は、電子ファイルにOCR処理を行うためのOCRコンポーネント1333、指定されたメールアドレス宛にメールを送信するためのメール送信コンポーネント1334等が含まれる。
Further, the
なお、コンポーネント群133には、これら以外にも、例えば、画像ファイルのサイズを変換するためのサイズ変換コンポーネントや言語の翻訳を行うための翻訳コンポーネント等が含まれても良い。また、コンポーネント群133には、例えば、外部ストレージシステム40に対してログイン認証を行うためのログインコンポーネント等が含まれていても良い。このように、コンポーネント群133には、各種のコンポーネントが含まれる。
In addition to these, the
ここで、各コンポーネントは、コンポーネント共通I/F1330を有する。コンポーネント共通I/F1330は、各コンポーネントに対して共通に定義されたAPIであり、コンポーネントを生成するためのAPIと、コンポーネントに対して処理の実行を要求するためのAPIとが含まれる。
Here, each component has a component common I /
各コンポーネントがコンポーネント共通I/F1330を有することで、コンポーネントの追加等に伴う影響を局所化することができる。すなわち、本実施形態に係るサービス提供システム10では、例えば、フロー実行部131やコンポーネント管理部132等に影響を与えることなく、コンポーネントの追加等を行うことができる。
Since each component has a component common I /
型変換管理部134は、データ型の型変換を管理する。ここで、各コンポーネントは、自身が扱えるデータ型が予め決まっている。したがって、型変換管理部134は、コンポーネントからの要求に応じて、型変換情報テーブル3000を参照して、型変換群135に定義されている型変換を生成する。そして、型変換管理部134は、生成された型変換に対して型変換処理の実行を要求する。これにより、型変換管理部134は、要求元のコンポーネントが扱えるデータ型に型変換を行う。
The type
ここで、型変換情報テーブル3000の詳細について、図8を参照しながら説明する。図8は、型変換情報テーブル3000の一例を示す図である。 Here, the details of the type conversion information table 3000 will be described with reference to FIG. FIG. 8 is a diagram showing an example of the type conversion information table 3000.
図8に示す型変換情報テーブル3000に格納されている型変換情報は、データ項目として、変換前のデータ型と、変換後のデータ型と、生成する型変換とを有する。すなわち、型変換情報は、変換前のデータ型及び変換後のデータ型毎に、当該変換前のデータ型を当該変換後のデータ型に型変換するための型変換が関連付けられた情報である。 The type conversion information stored in the type conversion information table 3000 shown in FIG. 8 has a data type before conversion, a data type after conversion, and a type conversion to be generated as data items. That is, the type conversion information is information in which type conversion for converting the data type before conversion to the data type after conversion is associated with each of the data type before conversion and the data type after conversion.
これにより、例えば、ストリームデータを示すデータ型「InputStream」のデータを、記憶装置等に格納されている電子ファイルのパス(アドレス)を示すデータ型「LocalFilePath」に型変換する場合、第1の型変換を生成すれば良い。 As a result, for example, when the data of the data type "InputStream" indicating the stream data is converted into the data type "LocalFilePath" indicating the path (address) of the electronic file stored in the storage device or the like, the first type is used. All you have to do is generate the transformation.
なお、型変換の生成とは、例えばクラスで定義された型変換を、メモリ(例えばRAM14)上に展開することである。また、データ型には、上述した「InputStream」や「LocalFilePath」以外に、例えば、電子ファイルの実体を示すデータ型「File」等が挙げられる。 Note that the generation of type conversion means, for example, expanding the type conversion defined in the class on the memory (for example, RAM 14). Further, as the data type, in addition to the above-mentioned "Input Stream" and "Local File Path", for example, a data type "File" indicating the substance of an electronic file can be mentioned.
型変換群135は、型変換の集合である。型変換群135には、データ型「InputStream」のデータを、データ型「LocalFilePath」のデータに変換する第1の型変換1351が含まれる。また、型変換群135には、データ型「LocalFilePath」のデータを、データ型「File」のデータに変換する第2の型変換1352等が含まれる。
The
ここで、各型変換は、型変換共通I/F1350を有する。型変換共通I/F1350は、各型変換に対して共通に定義されたAPIであり、型変換を生成するためのAPIと、型変換に対して処理の実行を要求するためのAPIとが含まれる。
Here, each type conversion has a common type conversion I /
各型変換が型変換共通I/F1350を有することで、型変換の追加等に伴う影響を局所化することができる。すなわち、本実施形態に係るサービス提供システム10では、例えば、型変換管理部134等に影響を与えることなく、型変換の追加等を行うことができる。
Since each type conversion has a common I /
ここで、「OCR配信」サービスを実現する一連の処理が定義された処理フロー情報1100の詳細について、図9を参照しながら説明する。図9は、OCR配信を実現する一連の処理が定義された処理フロー情報1100の一例を示す図である。
Here, the details of the
図9に示す処理フロー情報1100には、処理フロー情報1100を識別するフローID1101と、処理フロー情報1100に基づく一連の処理の名称を示すフロー名1102と、一連の処理に含まれる各処理を定義したフロー詳細1103とが含まれる。
The
また、フロー詳細1103には、処理定義1104と、処理定義1105とが含まれる。各処理定義1104及び1105には、コンポーネントIDが設定される「component」と、オペレーションIDが設定される「operation」と、パラメータ情報が設定される「parameters」とが定義されている。
Further, the
例えば、処理定義1104の「component」には、コンポーネントID「ocr」が設定されている。また、処理定義1104の「operation」には、オペレーションID「process」が設定されている。更に、処理定義1104の「parameters」には、パラメータ情報「"language":"English"」及び「"outputType":"pdf"」が設定されている。
For example, the component ID "ocr" is set in the "component" of the
同様に、処理定義1105の「component」には、コンポーネントID「storageA」が設定されている。また、処理定義1105の「operation」には、オペレーションID「uploadFile」が設定されている。更に、処理定義1105の「parameters」には、パラメータ情報「"folderId":"folderA"」が設定されている。
Similarly, the component ID "storeA" is set in the "component" of the
これにより、図9に示す処理フロー情報1100に基づく一連の処理では、まず、OCR言語「英語」で、電子ファイルに対してOCR処理が行われ、当該OCR処理の処理結果がPDF形式の電子ファイルで出力される。そして、当該一連の処理では、外部ストレージシステム401におけるフォルダID「folderA」のフォルダに対して、当該PDF形式の電子ファイルがアップロードされる。
As a result, in the series of processing based on the
なお、各処理定義に定義された処理の実行順は、フロー詳細1103において、上から順に実行される。すなわち、図9に示す処理フロー情報1100に基づく一連の処理(処理フロー)では、処理定義1104に定義された処理、処理定義1105に定義された処理の順で実行される。ただし、これに限られず、処理フロー情報1100には、例えば、各処理定義に定義された処理の実行順を示す情報が定義されていても良い。
The execution order of the processes defined in each process definition is executed in order from the top in the flow details 1103. That is, in a series of processes (process flows) based on the
<処理の詳細>
次に、本実施形態に係る情報処理システム1の処理の詳細について説明する。まず、PC端末30のユーザUが、「OCR配信」サービスを実現する一連の処理(処理フロー)をサービス提供システム10に登録する処理について、図8を参照しながら説明する。図10は、処理フローの登録処理の一例を示すシーケンス図である。
<Details of processing>
Next, the details of the processing of the
ユーザUは、PC端末30を用いて、処理フローの作成開始操作を行う(ステップS1001)。例えば、ユーザUは、PC端末30を用いて、サービス提供システム10にログインした後、当該ログイン後に表示されるポータル画面等において、「処理フロー作成」ボタン等を選択することにより、処理フローの作成開始操作を行うことができる。
The user U performs a processing flow creation start operation using the PC terminal 30 (step S1001). For example, the user U creates a processing flow by logging in to the
PC端末30のUI制御部310は、処理フローの作成開始操作を受け付けると、アプリ一覧画面の取得要求を、サービス提供システム10のフロー作成処理部140に送信する(ステップS1002)。
When the
サービス提供システム10のフロー作成処理部140は、アプリ一覧画面の取得要求を受信すると、アプリ一覧情報の取得要求をアプリ管理部120に送信する(ステップS1003)。そして、アプリ管理部120は、アプリ一覧情報をフロー作成処理部140に返信する。なお、アプリ一覧情報とは、アプリ情報記憶部180に記憶されているアプリ情報1000のアプリ名やアプリIDの一覧を示す情報である。
When the flow
サービス提供システム10のフロー作成処理部140は、アプリ一覧情報を受信すると、当該アプリ一覧情報に基づいて、アプリ情報1000のアプリ名の一覧を表示するアプリ一覧画面を作成する(ステップS1004)。なお、アプリ一覧画面は、例えば、HTML(HyperText Markup Language)やCSS(Cascading Style Sheets)等により画面が定義されている。
When the flow
そして、フロー作成処理部140は、作成したアプリ一覧画面をUI制御部310に返信する。
Then, the flow
PC端末30のUI制御部310は、アプリ一覧画面を受信すると、例えば図11(a)に示すアプリ一覧画面G100を表示する(ステップS1005)。ここで、図11(a)に示すアプリ一覧画面G100には、アプリ情報1000のアプリ名の一覧であるアプリ一覧G101が含まれる。
When the
次に、ユーザUは、図11(a)に示すアプリ一覧画面G100のアプリ一覧G101から、処理フローを作成するアプリケーションを選択する操作を行う(ステップS1006)。ここで、以降では、図11(a)に示すアプリ一覧画面G100のアプリ一覧G101から「アプリ1」がユーザUにより選択されたものとして説明する。
Next, the user U performs an operation of selecting an application for creating a processing flow from the application list G101 of the application list screen G100 shown in FIG. 11A (step S1006). Here, it is assumed that "
PC端末30のUI制御部310は、アプリケーションの選択操作を受け付けると、処理フロー作成画面の取得要求を、サービス提供システム10のフロー作成処理部140に送信する(ステップS1007)。なお、当該取得要求には、ユーザUにより選択されたアプリケーションを識別するための情報(例えば、アプリ一覧G101に含まれる各表示部品を識別する情報やアプリID等)が含まれる。
When the
サービス提供システム10のフロー作成処理部140は、処理フロー作成画面の取得要求を受信すると、処理情報テーブルの取得要求を、ロジック処理部130のコンポーネント管理部132に送信する(ステップS1008)。そして、コンポーネント管理部132は、処理情報テーブルの取得要求を受信すると、処理情報テーブル2000をフロー作成処理部140に返信する。
When the flow
サービス提供システム10のフロー作成処理部140は、処理情報テーブル2000を受信すると、当該処理情報テーブル2000に格納されている処理情報に基づいて、処理フロー作成画面を作成する(ステップS1009)。なお、処理フロー作成画面は、例えば、HTMLやCSS等により画面が定義されている。
When the flow
そして、フロー作成処理部140は、作成した処理フロー作成画面をUI制御部310に返信する。
Then, the flow
PC端末30のUI制御部310は、処理フロー作成画面を受信すると、例えば図11(b)に示す処理フロー作成画面G200を表示する(ステップS1010)。
When the
ここで、図11(b)に示す処理フロー作成画面G200は、「アプリ1」の処理フローを作成するための画面であり、各処理情報に含まれるコンポーネント名が一覧表示されたコンポーネント一覧G201が含まれる。また、図11(b)に示す処理フロー作成画面G200には、処理フローをグラフィカルに作成するための作成領域G202と、操作ガイド等の説明が表示される説明欄G203と、処理フローのフロー名を設定するフロー名設定欄G204とが含まれる。更に、図11(b)に示す処理フロー作成画面G200には、作成された処理フローを登録するための登録ボタンG205が含まれる。
Here, the processing flow creation screen G200 shown in FIG. 11B is a screen for creating the processing flow of "
ユーザUは、処理フロー作成画面G200において、1以上のコンポーネント及びオペレーションを選択して、作成領域G202に配置すると共に、各コンポーネントが処理に用いるパラメータ情報を定義することで、処理フローを作成することができる。 The user U creates a processing flow by selecting one or more components and operations on the processing flow creation screen G200 and arranging them in the creation area G202, and defining parameter information used by each component for processing. Can be done.
次に、ユーザUは、図11(b)に示す処理フロー作成画面G200において、「アプリ1」の処理フローを作成する操作を行って、処理フローの作成処理を行う(ステップS1011)。なお、処理フローの作成処理の詳細については後述する。
Next, the user U performs an operation of creating the processing flow of the “
次に、ユーザUは、処理フローを作成すると、登録ボタンG205を押下して、処理フローの登録操作を行う(ステップS1012)。 Next, when the user U creates the processing flow, the user U presses the registration button G205 to perform the processing flow registration operation (step S1012).
PC端末30のUI制御部310は、処理フローの登録操作を受け付けると、処理フローの登録要求を、サービス提供システム10のフロー作成処理部140に送信する(ステップS1013)。なお、当該登録要求には、ユーザUにより作成された処理フローを示す情報(例えば、処理フロー情報1100等)と、「アプリ1」を識別する情報(例えば、アプリIDや処理フロー作成画面G200を識別する情報等)が含まれる。
When the
サービス提供システム10のフロー作成処理部140は、処理フローの登録要求を受信すると、当該登録要求をアプリ管理部120に送信する(ステップS1014)。そして、アプリ管理部120は、処理フローの登録要求に含まれる処理フロー情報1100を、「アプリ1」のアプリ情報1000と関連付けてアプリ情報記憶部180に記憶させる。これにより、ユーザUにより作成された処理フローがサービス提供システム10に登録される。
When the flow
ここで、上記のステップS1011において、ユーザが、1以上のコンポーネント及びオペレーションを選択して、作成領域G202に配置する場合の処理について、図12を参照しながら説明する。図12は、処理フローの作成処理(1/2)の一例を示すシーケンス図である。 Here, in step S1011 described above, a process when the user selects one or more components and operations and arranges them in the creation area G202 will be described with reference to FIG. FIG. 12 is a sequence diagram showing an example of the process flow creation process (1/2).
まず、ユーザUは、コンポーネント及びオペレーションの配置操作を行う(ステップS1201)。すなわち、ユーザUは、次のようにしてコンポーネント及びオペレーションの配置操作を行う。 First, the user U performs a component and operation placement operation (step S1201). That is, the user U performs the arrangement operation of the components and operations as follows.
まず、図13(a)に示す処理フロー作成画面G300において、コンポーネント一覧G201から「外部ストレージAコンポーネント」をユーザUが選択すると、外部ストレージAコンポーネント1331のオペレーション一覧G301が表示される。このように、コンポーネント一覧G201からコンポーネントが選択されると、選択されたコンポーネントのオペレーション一覧が表示される。
First, on the processing flow creation screen G300 shown in FIG. 13A, when the user U selects the “external storage A component” from the component list G201, the operation list G301 of the external
次に、オペレーション一覧G301から「配信」オペレーションをユーザUが選択した上で、作成領域G202内の所望の位置を選択する。これにより、ユーザUは、コンポーネント及びオペレーションの配置操作を行うことができる。なお、配置操作は、例えば、オペレーション一覧G301の「配信」オペレーションを、作業領域G202内の所望の位置にドラッグアンドドロップすることにより行っても良い。 Next, the user U selects the "delivery" operation from the operation list G301, and then selects a desired position in the creation area G202. This allows the user U to perform component and operation placement operations. The placement operation may be performed, for example, by dragging and dropping the "delivery" operation of the operation list G301 to a desired position in the work area G202.
ここで、図13(a)に示す処理フロー作成画面G300において、オペレーション一覧からオペレーションがユーザUにより選択されると、選択されたオペレーションの説明が説明欄G203に表示される。例えば、上記のように、外部ストレージAコンポーネント1331の「配信」オペレーションがユーザUにより選択されると、当該「配信」オペレーションの説明が説明欄G203に表示される。
Here, on the processing flow creation screen G300 shown in FIG. 13A, when an operation is selected by the user U from the operation list, a description of the selected operation is displayed in the explanation column G203. For example, as described above, when the "delivery" operation of the external
PC端末30のUI制御部310は、コンポーネント及びオペレーションの配置操作を受け付けると、コンポーネントIDと、オペレーションIDと、配置位置とを、サービス提供システム10のフロー作成処理部140に送信する(ステップS1202)。なお、コンポーネントIDは、ユーザUにより選択された外部ストレージAコンポーネント1331のコンポーネントID「storageA」である。同様に、オペレーションIDは、ユーザUにより選択された「配信」オペレーションのオペレーションID「uploadFile」である。また、配置位置は、例えば、コンポーネント及びオペレーションの配置操作が行われた作業領域G202内の位置座標等である。
When the
サービス提供システム10のフロー作成処理部140は、コンポーネントID及びオペレーションIDを受信すると、当該コンポーネントID及びオペレーションIDに対応する処理情報を処理情報テーブル2000から取得する(ステップS1203)。すなわち、フロー作成処理部140は、コンポーネントID「storageA」及びオペレーションID「uploadFile」に対応する処理情報を処理情報テーブル2000から取得する。
Upon receiving the component ID and the operation ID, the flow
次に、サービス提供システム10のフロー作成処理部140は、処理情報を取得すると、アイコンの取得要求を、ロジック処理部130のコンポーネント管理部132に送信する(ステップS1204)。なお、当該取得要求には、上記のステップS1203で取得された処理情報のアイコンパスが含まれる。
Next, when the flow
ロジック処理部130のコンポーネント管理部132は、アイコンの取得要求を受信すると、当該取得要求に含まれるアイコンパスからアイコンを取得する(ステップS1205)。そして、コンポーネント管理部132は、取得したアイコンをフロー作成処理部140に返信する。なお、アイコンは、例えば、PNGやJPEG、ICO等のデータ形式の画像データである。
When the
サービス提供システム10のフロー作成処理部140は、アイコンを受信すると、処理フロー作成画面の作成領域G202の配置位置にアイコンが表示されるように、当該作成領域G202を更新する(ステップS1206)。そして、フロー作成処理部140は、更新後の作成領域G202をUI制御部310に返信する。
Upon receiving the icon, the flow
PC端末30のUI制御部310は、更新後の作成領域G202を受信すると、当該更新後の作成領域G202を表示する(ステップS1207)。すなわち、UI制御部310は、図13(a)に示す処理フロー作成画面G300の作成領域G202において、アイコンP11を表示する。これにより、ユーザUにより選択された外部ストレージAコンポーネント1331の「配信」オペレーションを表すアイコンP11が作成領域G202に配置される。
When the
その後、同様に、図13(b)に示す処理フロー作成画面G400において、コンポーネント一覧G201から「OCRコンポーネント」をユーザUが選択すると、OCRコンポーネント1333のオペレーション一覧G401が表示される。そして、オペレーション一覧G401から「OCR」オペレーションを選択した上で、作成領域G202内の所望の位置が選択されると、OCRコンポーネント1333の「OCR」オペレーションを表すアイコンP12が作成領域G202の当該位置に配置される。
After that, similarly, on the processing flow creation screen G400 shown in FIG. 13B, when the user U selects “OCR component” from the component list G201, the operation list G401 of the
また、図13(a)に示す処理フロー作成画面G300の作成領域G202において、ユーザUが、アイコンP11とアイコンP12との先行関係を指定する操作を行うことで、矢印P13が表示される。これにより、ユーザUは、アイコンP12が示すコンポーネントの処理(オペレーション)の次に、アイコンP11が示すコンポーネントの処理(オペレーション)を行うことを指定できる。これにより、ユーザUは、OCRコンポーネント1333の「OCR」オペレーションを行った後、外部ストレージAコンポーネント1331の「配信」オペレーションを行う処理フローF11を作成することができる。
Further, in the creation area G202 of the processing flow creation screen G300 shown in FIG. 13A, the arrow P13 is displayed by the user U performing an operation of designating the preceding relationship between the icon P11 and the icon P12. As a result, the user U can specify that the processing (operation) of the component indicated by the icon P11 is performed next to the processing (operation) of the component indicated by the icon P12. As a result, the user U can create a processing flow F11 that performs the "OCR" operation of the
更に、図13(a)に示す処理フロー作成画面G300のフロー名設定欄G204に、処理フローF11のフロー名を設定することができる。 Further, the flow name of the processing flow F11 can be set in the flow name setting field G204 of the processing flow creation screen G300 shown in FIG. 13A.
ここで、図13(a)に示す処理フロー作成画面G300において、例えば、アイコンP11やアイコンP11が作成領域G202に配置されると、処理フローを登録するための説明が説明欄G203に表示される。例えば、上記のように、アイコンP12が作成領域G202に配置されると、処理フローを登録するための説明が説明欄G203に表示される。このように、説明欄G203には、ユーザUの操作に応じて、各コンポーネントの説明や当該ユーザUが次に行うと想定される操作の説明等が表示される。 Here, on the processing flow creation screen G300 shown in FIG. 13A, for example, when the icon P11 or the icon P11 is arranged in the creation area G202, an explanation for registering the processing flow is displayed in the explanation column G203. .. For example, when the icon P12 is arranged in the creation area G202 as described above, the explanation for registering the processing flow is displayed in the explanation column G203. As described above, in the explanation column G203, the explanation of each component, the explanation of the operation expected to be performed next by the user U, and the like are displayed according to the operation of the user U.
以上により、ユーザUは、コンポーネント及びオペレーションを表すアイコンを作成領域G202に配置することで、処理フローF11を作成することができる。 As described above, the user U can create the processing flow F11 by arranging the icons representing the components and operations in the creation area G202.
次に、各コンポーネントが処理(オペレーション)に用いるパラメータ情報を定義する場合の処理について、図14を参照しながら説明する。図14は、処理フローの作成処理(2/2)の一例を示すシーケンス図である。 Next, the processing when each component defines the parameter information used for the processing (operation) will be described with reference to FIG. FIG. 14 is a sequence diagram showing an example of the process flow creation process (2/2).
まず、ユーザUは、アイコンの選択操作を行う(ステップS1401)。ここで、以降では、作成領域G202に配置されたアイコンP11をユーザUが選択したものとする。 First, the user U performs an icon selection operation (step S1401). Here and thereafter, it is assumed that the user U has selected the icon P11 arranged in the creation area G202.
PC端末30のUI制御部310は、アイコンの選択操作を受け付けると、選択されたアイコンに対応するコンポーネントID及びオペレーションIDを、サービス提供システム10のフロー作成処理部140に送信する(ステップS1402)。すなわち、UI制御部310は、アイコンP11に対応するコンポーネントID「storageA」及びオペレーションID「uploeadFile」をフロー作成処理部140に送信する。
When the
サービス提供システム10のフロー作成処理部140は、コンポーネントID及びオペレーションIDを受信すると、当該コンポーネントID及びオペレーションIDに対応する処理情報を処理情報テーブル2000から取得する(ステップS1403)。すなわち、フロー作成処理部140は、コンポーネントID「storageA」及びオペレーションID「uploeadFile」に対応する処理情報を処理情報テーブル2000から取得する。
Upon receiving the component ID and the operation ID, the flow
次に、サービス提供システム10のフロー作成処理部140は、上記のステップS1403で取得した処理情報に含まれるパラメータ設定情報に基づいて、パラメータ設定画面を作成する(ステップS1404)。なお、パラメータ設定画面とは、コンポーネントの処理に用いられるパラメータ情報のパラメータ値を設定するための画面であり、例えば、HTMLやCSS等により画面が定義されている。
Next, the flow
そして、フロー作成処理部140は、作成したパラメータ設定画面をUI制御部310に返信する。
Then, the flow
PC端末30のUI制御部310は、パラメータ設定画面を受信すると、例えば図15に示すパラメータ設定画面G500を表示する(ステップS1405)。
When the
ここで、図15に示すパラメータ設定画面G500は、外部ストレージAコンポーネント1331の「配信」オペレーションが用いるパラメータ情報を設定するための画面である。図15に示すパラメータ設定画面G500には、フォルダIDを設定するためのフォルダ設定欄G501と、決定ボタンG502とが含まれる。
Here, the parameter setting screen G500 shown in FIG. 15 is a screen for setting parameter information used in the “delivery” operation of the external
なお、表示名G504は、上記のステップS1403で取得した処理情報に含まれるパラメータ設定情報の表示名が表示される。また、入力制限情報G505は、上記のステップS1403で取得した処理情報に含まれるパラメータ設定情報の入力形式に基づいて表示される。 As the display name G504, the display name of the parameter setting information included in the processing information acquired in step S1403 is displayed. Further, the input restriction information G505 is displayed based on the input format of the parameter setting information included in the processing information acquired in step S1403 above.
ユーザUは、フォルダ設定欄G501にフォルダIDを入力した上で、決定ボタンG502を押下することで、パラメータ名「folderId」に値(パラメータ値)を設定することができる。 The user U can set a value (parameter value) in the parameter name "folderId" by pressing the enter button G502 after inputting the folder ID in the folder setting field G501.
なお、パラメータ設定画面G500には、共通パラメータ設定欄G503が含まれていても良い。共通パラメータ設定欄G503では、複数のコンポーネントの処理で共通に用いるパラメータ情報を設定することができる。共通パラメータには、例えば、各コンポーネントの処理結果を保存するか否か設定するための「セーブ」、所定のコンポーネントの処理をスキップ(実行しない)か否かを設定するための「スキップ」等がある。 The parameter setting screen G500 may include a common parameter setting field G503. In the common parameter setting field G503, parameter information commonly used in the processing of a plurality of components can be set. Common parameters include, for example, "save" for setting whether to save the processing result of each component, "skip" for setting whether to skip (do not execute) the processing of a predetermined component, and the like. is there.
次に、ユーザUは、図15に示すパラメータ設定画面G500において、パラメータ情報を設定する操作(パラメータ設定操作)を行う(ステップS1406)。 Next, the user U performs an operation (parameter setting operation) for setting parameter information on the parameter setting screen G500 shown in FIG. 15 (step S1406).
そして、PC端末30のUI制御部310は、パラメータ設定操作を受け付けると、当該設定されたパラメータ情報を、該当のコンポーネント及びオペレーションに設定する(ステップS1407)。これにより、外部ストレージAコンポーネント1331の「配信」オペレーションに対してパラメータ情報が設定される。なお、ユーザUは、同様に、OCRコンポーネント1333の「OCR」コンポーネントに対してもパラメータ情報を設定する。
Then, when the
なお、上記のステップS1405において、PC端末30のUI制御部310は、例えば図16に示すパラメータ設定画面G510を表示しても良い。図16に示すパラメータ設定画面G510では、フォルダ設定欄G501に設定する情報を選択するための入力支援ボタンG511が含まれる。
In step S1405, the
ユーザUが入力支援ボタンG511を押下した場合、フォルダ設定欄G501に設定可能な情報の一覧である設定情報一覧G520が表示される。ここで、設定情報一覧G520には、例えば、他のコンポーネントの処理結果等の情報を選択することができる。 When the user U presses the input support button G511, the setting information list G520, which is a list of information that can be set in the folder setting field G501, is displayed. Here, for example, information such as processing results of other components can be selected in the setting information list G520.
例えば、ユーザUは、設定情報一覧G520から、外部ストレージシステム40にログイン認証を行うためのログインコンポーネントの処理結果を示す「ログインユーザID」等を選択することができる。これにより、例えば、フォルダ設定欄G501に、ログインコンポーネントによりログイン認証されたユーザID(ログインユーザID)を設定することができるようになる。
For example, the user U can select a "login user ID" or the like indicating the processing result of the login component for performing login authentication to the
以上により、本実施形態に係る情報処理システム1では、ユーザUにより作成された処理フローF11を示す処理フロー情報1100をサービス提供システム10に登録することができる。
As described above, in the
しかも、本実施形態に係る情報処理システム1では、コンポーネント一覧G201から所望のコンポーネント及びオペレーションを選択して、先後関係を指定すると共に、パラメータ情報を設定することで、処理フローを作成することができる。したがって、ユーザUは、容易に処理フローを作成することができるようになる。
Moreover, in the
ここで、処理フロー情報1100は、例えば、JSON(JavaScript Object Notation)やXML(Extensible Markup Language)、DSL(Domain-Specific Language)等により記述される。したがって、本実施形態に係る情報処理システム1によれば、これらJSONやXML、DSL等の仕様や形式を理解していないユーザでも容易に処理フローを作成することができるようになる。
Here, the
なお、上記では、先後関係が1つである処理フローを作成する場合について説明したが、これに限られず、処理フローの先後関係は複数であっても良い。 In the above description, the case of creating a processing flow having one pre-post relationship has been described, but the present invention is not limited to this, and there may be a plurality of pre-post relationships of the processing flow.
ここで、ユーザUが、処理フロー作成画面において、処理フローを作成する場合における他の操作例について、図17及び図18を参照しながら説明する。 Here, another operation example in the case where the user U creates a processing flow on the processing flow creation screen will be described with reference to FIGS. 17 and 18.
まず、図17(a)に示す処理フロー作成画面G600の作成領域G202には、処理フローF21が配置されていたとする。このとき、ユーザUが整列ボタンG601を押下することで、処理フローF21を構成する各アイコンP21〜P24の配置位置を整列することができる。 First, it is assumed that the processing flow F21 is arranged in the creation area G202 of the processing flow creation screen G600 shown in FIG. 17A. At this time, when the user U presses the alignment button G601, the arrangement positions of the icons P21 to P24 constituting the processing flow F21 can be aligned.
すなわち、ユーザUにより整列ボタンG601が押下されると、図17(b)に示す処理フロー作成画面G700の作成領域G202に配置されている処理フローF21のように、各アイコンP21〜P24の配置位置が整列される。なお、このような配置位置の整列は、例えば、PC端末30のUI制御部310が行っても良いし、UI制御部310からの要求に応じて、フロー作成処理部140が作成領域G202を更新した上で、当該更新後の作成領域G202をUI制御部310が表示しても良い。
That is, when the alignment button G601 is pressed by the user U, the arrangement positions of the icons P21 to P24 are arranged as in the processing flow F21 arranged in the creation area G202 of the processing flow creation screen G700 shown in FIG. 17B. Are aligned. For example, the
これにより、ユーザUは、処理フローF21を構成する各アイコンP21〜P24を容易に整列することができる。 As a result, the user U can easily arrange the icons P21 to P24 constituting the processing flow F21.
また、図17(a)に示す処理フロー作成画面G600において、ユーザUが拡大ボタンG602や縮小ボタンG603を押下することで、作成領域G202に配置されている処理フローF21を拡大又は縮小することができる。これにより、ユーザUは、処理フローF21を構成する各アイコンP21〜P24の表示を拡大したり、縮小したりすることができる。 Further, on the processing flow creation screen G600 shown in FIG. 17A, the user U can press the enlargement button G602 or the reduction button G603 to enlarge or reduce the processing flow F21 arranged in the creation area G202. it can. As a result, the user U can enlarge or reduce the display of the icons P21 to P24 constituting the processing flow F21.
次に、図18(a)に示す処理フロー作成画面G800において、ユーザUが共有フロー取り込みボタンG801を押下することで、UI制御部310は、共有フロー選択画面G810を表示することができる。ここで、共有フローとは、共有フロー選択画面G810において選択可能なように予め作成された処理フローである。共有フローは、例えば、処理フロー情報1100において、「"shareflow":"true"」と定義された処理フローである。
Next, on the processing flow creation screen G800 shown in FIG. 18A, when the user U presses the shared flow import button G801, the
ユーザUは、共有フロー選択画面G810において、共有フロー選択欄G811から所望の処理フローを選択した上で、OKボタンG812を押下することで、処理フローを選択することができる。 The user U can select a processing flow by pressing the OK button G812 after selecting a desired processing flow from the shared flow selection field G811 on the shared flow selection screen G810.
そして、UI制御部310は、共有フロー選択画面G810において処理フローが選択されると、図18(b)に示す処理フロー作成画面G900のように、作成領域G202に選択された処理フローF31が表示される。これにより、ユーザUは、処理フローF31を編集することで、所望の処理フローを作成することができるようになる。したがって、ユーザUは、共有フローである処理フローF31を編集して処理フローを作成することで、最初から処理フローを作成するよりも、容易に処理フローを作成することができるようになる。
Then, when the processing flow is selected on the shared flow selection screen G810, the
次に、ユーザUが機器20を用いて、サービス提供システム10のアプリケーション(アプリ情報1000)により提供される「OCR配信」サービスを利用する場合の処理について、図19を参照しながら説明する。図19は、サービス利用の全体処理の一例を示すシーケンス図である。
Next, a process when the user U uses the “OCR distribution” service provided by the application (application information 1000) of the
ユーザUは、機器20を用いて、アプリ情報1000により提供されるサービスの一覧を表示させるための表示操作を行う(ステップS1901)。
The user U uses the
機器20のUI制御部210は、サービスの一覧を表示させるための表示操作を受け付けると、例えば図20(a)に示すサービス一覧画面G1000を表示する(ステップS1902)。なお、UI制御部210は、例えば、HTMLやCSS等によりサービス一覧画面G1000が定義された情報をサービス提供システム10から受信するにより、当該サービス一覧画面G1000を表示しても良い。
When the
図20(a)に示すサービス一覧画面G1000には、サービス名の一覧が表示されたサービス名一覧G1001が含まれる。 The service list screen G1000 shown in FIG. 20A includes a service name list G1001 in which a list of service names is displayed.
次に、ユーザUは、サービス一覧画面G1000のサービス名一覧G1001から、所望のサービスを選択する操作を行う(ステップS1903)。ここで、以降では、サービス一覧画面G1000のサービス名一覧G1001から「OCR配信」サービスがユーザUにより選択されたものとして説明する。 Next, the user U performs an operation of selecting a desired service from the service name list G1001 on the service list screen G1000 (step S1903). Here, it is assumed that the "OCR distribution" service is selected by the user U from the service name list G1001 on the service list screen G1000.
機器20のUI制御部210は、「OCR配信」サービスの選択操作を受け付けると、例えば図20(b)に示すサービス利用画面G1100を表示する(ステップS1904)。なお、UI制御部210は、例えば、HTMLやCSS等によりサービス利用画面G1100が定義された情報をサービス提供システム10から受信するにより、当該サービス利用画面G1100を表示しても良い。
When the
図20(b)に示すサービス利用画面G1100には、保存先フォルダ表示欄G1101と、OCR言語表示欄G1102と、データ形式表示欄G1103と、スキャンボタンG1104とが含まれる。 The service use screen G1100 shown in FIG. 20B includes a save destination folder display field G1101, an OCR language display field G1102, a data format display field G1103, and a scan button G1104.
ここで、保存先フォルダ表示欄G1101は、例えば、図9に示す処理フロー情報1100の処理定義1105に定義されているパラメータ情報「"folderId":"folderA"」に基づいて表示される。また、OCR言語表示欄G1102は、例えば、図9に示す処理フロー情報1100の処理定義1104に定義されているパラメータ情報「"language":"English"」に基づいて表示される。更に、データ形式表示欄G1103は、例えば、図9に示す処理フロー情報1100の処理定義1104に定義されているパラメータ情報「"outputType":"pdf"」に基づいて表示される。
Here, the save destination folder display field G1101 is displayed based on, for example, the parameter information "" folderId ":" folderA "" defined in the
次に、ユーザUは、図20(b)に示すサービス利用画面G1100において、スキャンボタンG1104を押下して、スキャン実行操作を行う(ステップS1905)。すると、UI制御部210は、当該スキャン実行操作を受け付ける。
Next, the user U presses the scan button G1104 on the service use screen G1100 shown in FIG. 20B to perform a scan execution operation (step S1905). Then, the
機器20のUI制御部210は、スキャン実行操作を受け付けると、スキャン処理部220に対して、スキャンの実行要求を送信する(ステップS1906)。
When the
機器20のスキャン処理部220は、スキャンの実行要求を受け取ると、スキャナ26を制御して、原稿台にセットされた原稿を読み取って、電子ファイルを生成する(ステップS1907)。そして、スキャン処理部220は、スキャンが終了したことを示すスキャン結果を返信する。
Upon receiving the scan execution request, the
機器20のUI制御部210は、スキャン結果を受け取ると、「OCR配信」サービスを実現する処理フローの実行要求を、サービス提供システム10のロジック処理部130に送信する(ステップS1908)。なお、当該実行要求には、例えば、「OCR配信」サービスを提供するアプリ情報1000のアプリIDと、当該サービスを実現する処理フロー情報1100のフローIDと、上記のステップS1907で生成された電子ファイルとが含まれる。
Upon receiving the scan result, the
サービス提供システム10のロジック処理部130は、処理フローの実行要求を受信すると、当該実行要求に含まれるアプリID及びフローIDに対応する処理フロー情報1100を取得する。そして、ロジック処理部130は、取得した処理フロー情報1100に基づく一連の処理を実行する(ステップS1909)。その後、ロジック処理部130は、当該一連の処理の処理結果を返信する。
When the
これにより、本実施形態に係るサービス提供システム10において、「OCR配信」サービスを実現する一連の処理が実行され、機器20に対して、「OCR配信」サービスが提供される。
As a result, in the
ここで、上記のステップS1909の処理フローの実行処理の詳細について、図21を参照しながら説明する。図21は、処理フローの実行処理の一例を示すシーケンス図である。 Here, the details of the execution processing of the processing flow of the above step S1909 will be described with reference to FIG. FIG. 21 is a sequence diagram showing an example of execution processing of the processing flow.
フロー実行部131は、処理フローの実行要求を受信すると、処理フロー情報の取得要求をアプリ管理部120に送信する(ステップS2101)。なお、当該取得要求には、受信した処理フローの実行要求に含まれるアプリID及びフローIDが含まれる。
When the
そして、アプリ管理部120は、受信した処理フロー情報の取得要求に含まれるアプリID及びフローIDに対応する処理フロー情報1100をアプリ情報記憶部180から取得して、当該処理フロー情報1100を返信する。これにより、フロー実行部131には、図9に示す処理フロー情報1100が返信される。
Then, the
次に、フロー実行部131は、図9に示す処理フロー情報1100を受信すると、コンポーネント管理部132に対して、当該処理フロー情報1100に基づくコンポーネントの取得要求を送信する(ステップS2102)。
Next, when the
すなわち、フロー実行部131は、図9に示す処理フロー情報1100の処理定義1104に定義されたコンポーネントID「ocr」を含むコンポーネントの取得要求をコンポーネント管理部132に送信する。
That is, the
コンポーネント管理部132は、コンポーネントの取得要求を受け取ると、当該取得要求に含まれるコンポーネントID「ocr」に対応するOCRコンポーネント1333を生成する(ステップS1703)。なお、OCRコンポーネント1333の生成は、コンポーネント共通I/F1330に定義されたAPIを用いて行うことができる。
Upon receiving the component acquisition request, the
そして、コンポーネント管理部132は、フロー実行部131に対して、生成したOCRコンポーネント1333を返信する。すなわち、コンポーネント管理部132は、例えば、OCRコンポーネント1333が展開されたメモリ(例えばRAM14)上のアドレスをフロー実行部131に返信する。
Then, the
次に、フロー実行部131は、生成されたOCRコンポーネント1333に対して、処理フロー情報1100に基づく処理実行要求を送信する(ステップS2104)。
Next, the
すなわち、フロー実行部131は、図9に示す処理フロー情報1100の処理定義1104に定義されたオペレーションID「process」と、データと、パラメータ情報とを含む処理実行要求をOCRコンポーネント1333に送信する。
That is, the
ここで、当該処理実行要求に含まれるデータは、データ型「InputStream」としてUI制御部210から受け取った電子ファイルである。
Here, the data included in the process execution request is an electronic file received from the
すなわち、フロー実行部131は、UI制御部210からデータ型「InputStream」として受け取った電子ファイルを、単に「データ」として(データ型を指定することなく)、OCRコンポーネント1333に送信する。以降では、このようにデータ型を指定することなく送受信される電子ファイル等を、単に「データ」と表す。
That is, the
また、当該処理実行要求に含まれるパラメータ情報は、図9に示す処理フロー情報1100の処理定義1104に定義されたパラメータ情報「"language":"English"」及び「"outputType":"pdf"」である。
Further, the parameter information included in the processing execution request is the parameter information "" language ":" English "" and "" outputType ":" pdf "" defined in the
OCRコンポーネント1333は、処理実行要求を受け取ると、型変換管理部134に対して、型変換要求を送信する(ステップS2105)。なお、当該型変換要求には、データと、OCRコンポーネント1333が扱うことができるデータ型である「LocalFilePath」の指定とが含まれる。
Upon receiving the processing execution request, the
型変換管理部134は、型変換要求を受け取ると、当該型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するか否かをチェックする(ステップS2106)。
Upon receiving the type conversion request, the type
ここで、受け取った型変換要求に含まれるデータのデータ型は「InputStream」である一方、指定されたデータ型は「LocalFilePath」である。したがって、型変換管理部134は、型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致しないものと判断する。
Here, the data type of the data included in the received type conversion request is "InputStream", while the specified data type is "LocalFilePath". Therefore, the type
すると、型変換管理部134は、型変換情報テーブル3000を参照して、データ型「InputStream」をデータ型「LocalFilePath」に変換するための第1の型変換1351を特定する。そして、型変換管理部134は、特定した第1の型変換1351を生成する(ステップS2107)。なお、第1の型変換1351の生成は、型変換共通I/F1350に定義されたAPIを用いて行うことができる。
Then, the type
次に、型変換管理部134は、生成された第1の型変換1351に対して、型変換処理の実行要求を送信する(ステップS2108)。なお、当該実行要求には、データが含まれる。
Next, the type
第1の型変換1351は、型変換処理の実行要求を受信すると、当該実行要求に含まれるデータのデータ型を「InputStream」から「LocalFilePath」に変換する(ステップS2109)。そして、第1の型変換1351は、型変換後のデータを返信する。
When the
型変換管理部134は、型変換後のデータを受け取ると、当該型変換後のデータをOCRコンポーネント1333に送信する(ステップS2110)。
When the type
OCRコンポーネント1333は、型変換後のデータを受け取ると、パラメータ情報を用いて、処理を実行する(ステップS2111)。すなわち、OCRコンポーネント1333は、データ型「LocalFilePath」のデータ(パス又はアドレス)により示される電子ファイルに対して、パラメータ情報を用いて、OCR処理を実行する。
When the
より具体的には、OCRコンポーネント1333は、ドキュメントサービス部160のOCR処理部161に対して処理の実行を要求する。そして、OCR処理部161が、OCR言語「英語」で、当該電子ファイルに対してOCR処理を行って、当該OCR処理の処理結果をPDF形式の電子ファイルで出力する。
More specifically, the
そして、OCRコンポーネント1333は、OCR処理後の電子ファイルを示すデータをフロー実行部131に返信する。なお、OCRコンポーネント1333により返信されるデータは、OCR処理後の電子ファイルのパス又はアドレスを示すデータ(すなわち、データ型「LocalFilePath」のデータ)である。
Then, the
次に、フロー実行部131は、データを受け取ると、コンポーネント管理部132に対して、処理フロー情報1100に基づくコンポーネントの取得要求を送信する(ステップS2112)。
Next, when the
すなわち、フロー実行部131は、図9に示す処理フロー情報1100の処理定義1105に定義されたコンポーネントID「storageA」を含むコンポーネントの取得要求をコンポーネント管理部132に送信する。
That is, the
コンポーネント管理部132は、コンポーネントの取得要求を受け取ると、当該取得要求に含まれるコンポーネントID「storageA」に対応する外部ストレージAコンポーネント1331を生成する(ステップS2113)。なお、外部ストレージAコンポーネント1331の生成は、コンポーネント共通I/F1330に定義されたAPIを用いて行うことができる。
Upon receiving the component acquisition request, the
そして、コンポーネント管理部132は、フロー実行部131に対して、生成した外部ストレージAコンポーネント1331を返信する。すなわち、コンポーネント管理部132は、例えば、外部ストレージAコンポーネント1331が展開されたメモリ(例えばRAM14)上のアドレスをフロー実行部131に返信する。
Then, the
次に、フロー実行部131は、生成された外部ストレージAコンポーネント1331に対して、処理フロー情報1100に基づく処理実行要求を送信する(ステップS2114)。
Next, the
すなわち、フロー実行部131は、図9に示す処理フロー情報1100の処理定義1105に定義されたオペレーションID「uploadFile」と、データと、パラメータ情報とを含む処理実行要求を外部ストレージAコンポーネント1331に送信する。
That is, the
なお、当該処理実行要求に含まれるデータは、データ型「LocalFilePath」としてOCRコンポーネント1333から返信されたデータ(すなわち、OCR処理後の電子ファイルを示すパス又はアドレス)である。
The data included in the processing execution request is the data returned from the
また、当該処理実行要求に含まれるパラメータ情報は、図9に示す処理フロー情報1100の処理定義1105に定義されたパラメータ情報「"folderId":"folderA"」である。
Further, the parameter information included in the processing execution request is the parameter information "" folderId ":" folderA "" defined in the
外部ストレージAコンポーネント1331は、処理実行要求を受け取ると、型変換管理部134に対して、型変換要求を送信する(ステップS2115)。なお、当該型変換要求には、データと、外部ストレージAコンポーネント1331が扱うことができるデータ型である「LocalFilePath」の指定とが含まれる。
Upon receiving the processing execution request, the external
型変換管理部134は、型変換要求を受け取ると、当該型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するか否かをチェックする(ステップS2116)。
Upon receiving the type conversion request, the type
ここで、受信した型変換要求に含まれるデータのデータ型は「LocalFilePath」であり、指定されたデータ型も「LocalFilePath」である。したがって、型変換管理部134は、型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するものと判断する。
Here, the data type of the data included in the received type conversion request is "LocalFilePath", and the designated data type is also "LocalFilePath". Therefore, the type
すると、型変換管理部134は、型変換要求に含まれるデータを外部ストレージAコンポーネント1331に送信する(ステップS2117)。このように、データ型のチェック(ステップS2116の処理)においてデータ型が一致すると判断された場合、型変換管理部134は、型変換の生成を行わない。
Then, the type
外部ストレージAコンポーネント1331は、型変換管理部134からデータを受信すると、処理を実行する(ステップS2118)。すなわち、外部ストレージAコンポーネント1331は、パラメータ情報を用いて、外部ストレージAのフォルダID「folderA」のフォルダに対して、受信したデータにより示される電子ファイルを配信(アップロード)する。
Upon receiving the data from the type
より具体的には、外部ストレージAコンポーネント1331は、外部ストレージA連携部1701のファイル処理部1711に対して、図5(a)に示すAPI「/外部ストレージ名/process/folder」を用いて行うことができる。すなわち、外部ストレージAコンポーネント1331は、ファイル処理部1711に対して、例えば、「/storage-a/process/folder」としてデータを送信する。
More specifically, the external
これにより、OCR処理後の電子ファイルが、外部ストレージAのフォルダID「folderA」のフォルダに保存される。 As a result, the electronic file after the OCR processing is saved in the folder of the folder ID "folder A" of the external storage A.
そして、外部ストレージAコンポーネント1331は、処理結果を示すデータをフロー実行部131に返信する。
Then, the external
以上により、本実施形態に係るサービス提供システム10は、機器20に対して、図9に示す処理フロー情報1100に基づく一連の処理により実現される「OCR配信」サービスを提供することができる。このとき、本実施形態に係るサービス提供システム10は、処理フロー情報1100に基づいて、1以上のコンポーネントを組み合わせることにより、一連の処理を実行することができる。
As described above, the
[第二の実施形態]
次に、第二の実施形態に係る情報処理システム1について説明する。第二の実施形態では、処理フローの登録処理において、処理フローの登録(追加)に加えて、処理フローの更新又は削除をすることができる点が第一の実施形態と異なる。なお、以降では、第一の実施形態と実質的に同一の機能を有する箇所及び同一の処理を行う箇所については、第一の実施形態と同一の符号を用いて、その説明を省略する。
[Second Embodiment]
Next, the
<処理の詳細>
以降では、第二の実施形態に係る処理フローの登録処理について、図22を参照しながら説明する。図22は、処理フローの登録、更新、又は削除処理の一例を示すシーケンス図である。
<Details of processing>
Hereinafter, the processing flow registration process according to the second embodiment will be described with reference to FIG. 22. FIG. 22 is a sequence diagram showing an example of processing for registering, updating, or deleting a processing flow.
ステップS1006に続いて、PC端末30のUI制御部310は、アプリケーションの選択操作を受け付けると、選択されたアプリケーションのアプリ情報画面を表示する(ステップS2201)。
Following step S1006, when the
すなわち、例えば、図11(a)に示すアプリ一覧画面G100のアプリ一覧G101から「アプリ1」がユーザUにより選択された場合、UI制御部310は、例えば図23に示すアプリ情報画面G1200を表示する。
That is, for example, when "
図23に示すアプリ情報画面G1200は、「アプリ1」であるアプリ情報1000の処理フローの登録、更新、又は削除を行うための画面である。
The application information screen G1200 shown in FIG. 23 is a screen for registering, updating, or deleting the processing flow of the
図23に示すアプリ情報画面G1200には、「アプリ1」であるアプリ情報1000に含まれる処理フロー情報1100の一覧であるフロー名一覧G1201が含まれる。また、図23に示すアプリ情報画面G1200には、処理フローを登録するための登録ボタンG1202と、登録されている処理フローを更新するための更新ボタンG1203と、登録されている処理フローを削除するための削除ボタンG1204とが含まれる。
The application information screen G1200 shown in FIG. 23 includes a flow name list G1201 which is a list of
以降では、ユーザUにより、登録ボタンG1202が選択された場合、更新ボタンG1203が選択された場合、削除ボタンG1204が選択された場合について、それぞれ説明する。 Hereinafter, a case where the registration button G1202 is selected, a case where the update button G1203 is selected, and a case where the delete button G1204 is selected by the user U will be described.
図23に示すアプリ情報画面G1200において、ユーザUにより登録ボタンG1202が選択された場合、図10のステップS1007〜ステップS1013と同様の処理を行う。これらの処理の詳細については省略する。 When the registration button G1202 is selected by the user U on the application information screen G1200 shown in FIG. 23, the same processing as in steps S1007 to S1013 of FIG. 10 is performed. Details of these processes will be omitted.
次に、図23に示すアプリ情報画面G1200において、ユーザUにより、フロー名一覧G1201から更新対象のフロー名が選択された上で、更新ボタンG1203が選択された場合について、以降で説明する。なお、以降では、フロー名一覧G1201から「OCR配信」が選択された上で、更新ボタンG1203が選択されたものとして説明する。 Next, in the application information screen G1200 shown in FIG. 23, a case where the update button G1203 is selected after the flow name to be updated is selected from the flow name list G1201 by the user U will be described below. In the following description, it is assumed that "OCR distribution" is selected from the flow name list G1201 and then the update button G1203 is selected.
まず、PC端末30のUI制御部310は、更新ボタンG1203の選択操作を受け付けると、フロー作成処理部140に対して、処理フローの更新画面の取得要求を送信する(ステップS2202)。なお、当該取得要求には、当該取得要求には、ユーザUにより選択されたアプリケーションを識別するための情報(例えば、アプリ情報画面G1200を識別する情報やアプリID等)が含まれる。また、当該取得要求には、フロー名一覧G1201から選択された更新対象の処理フロー「OCR配信」を識別する情報(例えば、当該「OCR配信」を選択するための表示部品の識別情報やフローID「flow001」)が含まれる。
First, when the
次に、フロー作成処理部140は、処理フロー情報の取得要求をアプリ管理部120に送信する(ステップS2203)。なお、当該取得要求には、アプリID及びフローIDが含まれる。
Next, the flow
そして、アプリ管理部120は、受信した処理フロー情報の取得要求に含まれるアプリID及びフローIDに対応する処理フロー情報1100をアプリ情報記憶部180から取得して、当該処理フロー情報1100を返信する。
Then, the
次に、フロー作成処理部140は、処理情報テーブルの取得要求を、ロジック処理部130のコンポーネント管理部132に送信する(ステップS2204)。そして、コンポーネント管理部132は、処理情報テーブルの取得要求を受信すると、処理情報テーブル2000をフロー作成処理部140に返信する。
Next, the flow
サービス提供システム10のフロー作成処理部140は、受信した処理フロー情報1100と、受信した処理情報テーブル2000に格納されている処理情報とに基づいて、処理フロー更新画面を作成する(ステップS2205)。なお、処理フロー更新画面は、例えば、HTMLやCSS等により画面が定義されている。
The flow
そして、フロー作成処理部140は、作成した処理フロー更新画面をUI制御部310に返信する。
Then, the flow
PC端末30のUI制御部310は、処理フロー更新画面を受信すると、例えば図24に示す処理フロー更新画面G1300を表示する(ステップS2206)。
Upon receiving the processing flow update screen, the
ここで、図24に示す処理フロー更新画面G1300は、フロー名「OCR配信」の処理フローを更新するための画面であり、更新領域G1301と、更新ボタンG1302とが含まれる。そして、更新領域G1301には、上記のステップS2203で取得した処理フロー情報1100に基づいて処理フローF11が配置されている。
Here, the processing flow update screen G1300 shown in FIG. 24 is a screen for updating the processing flow of the flow name “OCR distribution”, and includes an update area G1301 and an update button G1302. Then, the processing flow F11 is arranged in the update area G1301 based on the
ユーザUは、処理フロー更新画面G1300において、コンポーネント及びオペレーションの追加や削除、パラメータ情報の修正、フロー名の修正等を行うことで、処理フローG11を変更することができる。 The user U can change the processing flow G11 by adding or deleting components and operations, modifying parameter information, modifying the flow name, and the like on the processing flow update screen G1300.
次に、ユーザUは、図24に示す処理フロー更新画面G1300において、処理フローG11を変更した上で、更新ボタンG1302を押下して、処理フローの更新操作を行う(ステップS2207)。 Next, the user U changes the processing flow G11 on the processing flow update screen G1300 shown in FIG. 24, presses the update button G1302, and performs a processing flow update operation (step S2207).
PC端末30のUI制御部310は、処理フローの更新操作を受け付けると、処理フローの更新要求を、サービス提供システム10のフロー作成処理部140に送信する(ステップS2208)。なお、当該登録要求には、ユーザUにより変更された処理フローF11を示す情報(例えば、処理フロー情報1100等)と、「アプリ1」を識別する情報(例えば、アプリIDや処理フロー更新画面G1300を識別する情報等)が含まれる。
When the
サービス提供システム10のフロー作成処理部140は、処理フローの更新要求を受信すると、当該更新要求をアプリ管理部120に送信する(ステップS2209)。そして、アプリ管理部120は、処理フローの更新要求に含まれる処理フロー情報1100を、「アプリ1」のアプリ情報1000と関連付けてアプリ情報記憶部180に記憶させる。その後、アプリ管理部120は、フロー作成処理部140を介して、更新結果を返信する。これにより、サービス提供システム10に登録されていた処理フローが更新される。
When the flow
次に、図23に示すアプリ情報画面G1200において、ユーザUにより、フロー名一覧G1201から削除対象のフロー名が選択された上で、削除ボタンG1204が選択された場合について、以降で説明する。なお、以降では、フロー名一覧G1201から「OCRメール」が選択された上で、削除ボタンG1204が選択されたものとして説明する。 Next, in the application information screen G1200 shown in FIG. 23, a case where the delete button G1204 is selected after the flow name to be deleted is selected from the flow name list G1201 by the user U will be described below. In the following description, it is assumed that "OCR mail" is selected from the flow name list G1201 and then the delete button G1204 is selected.
PC端末30のUI制御部310は、削除ボタンG1204の選択操作を受け付けると、フロー作成処理部140に対して、処理フローの削除要求を送信する(ステップS2210)。なお、当該削除要求には、ユーザUにより選択されたアプリケーションを識別するための情報(例えば、アプリ情報画面G1200を識別する情報やアプリID等)が含まれる。また、当該削除要求には、ユーザUにより選択された削除対象の処理フローを識別するための情報(例えば、フロー名一覧G1201に含まれる各表示部品を識別する情報やフローID等)が含まれる。
When the
フロー作成処理部140は、処理フローの削除要求を受け取ると、当該削除要求をアプリ管理部120に送信する(ステップS2211)。
When the flow
そして、 アプリ管理部120は、処理フローの削除要求を受け取ると、当該削除要求に含まれるアプリID及びフローIDに対応する処理フロー情報1100をアプリ情報記憶部180から削除する。その後、アプリ管理部120は、フロー作成処理部140を介して、削除結果を返信する。これにより、サービス提供システム10に登録されていた処理フローが削除される。
Then, when the
以上により、本実施形態に係る情報処理システム1では、サービス提供システム10に登録されている処理フローの更新及び削除を行うことができる。
As described above, the
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。 The present invention is not limited to the above-described embodiment disclosed specifically, and various modifications and modifications can be made without departing from the scope of claims.
1 情報処理システム
10 サービス提供システム
20 機器
30 PC端末
40 外部ストレージシステム
110 サービス処理部
120 アプリ管理部
130 ロジック処理部
131 フロー実行部
132 コンポーネント管理部
133 コンポーネント群
134 型変換管理部
135 型変換群
140 フロー作成処理部
150 データI/F部
160 ドキュメントサービス部
170 外部ストレージ連携部
180 アプリ情報記憶部
210 UI制御部
220 スキャン処理部
310 UI制御部
1000 アプリ情報
1100 処理フロー情報
2000 処理情報テーブル
3000 型変換情報テーブル
1
Claims (10)
電子データを用いた一連の処理毎に、該一連の処理のそれぞれの処理を実行する1以上の前記プログラムを識別するプログラム識別情報と、前記プログラムが実行する処理を識別する処理識別情報と、1以上の前記プログラムそれぞれが実行する処理に用いられるパラメータと、1以上の前記プログラムの実行順とが定義されたフロー情報を、該フロー情報を識別するフロー識別情報と関連付けて記憶する記憶手段と、
前記情報処理システムに接続される1以上の機器のうちの第1の機器に表示されたフロー作成画面において、前記プログラム識別情報と、該プログラム識別情報により識別されるプログラムが実行可能な前記複数の処理のうちの一の処理を識別する処理識別情報と、前記パラメータと、前記実行順とを定義するユーザ操作が行われると、該プログラム識別情報と、前記処理識別情報と、前記パラメータと、前記実行順とが定義された前記フロー情報を作成して、作成した該フロー情報を識別する前記フロー識別情報と関連付けて前記記憶手段に記憶させる登録手段と、
前記1以上の機器のうちの第2の機器から、電子データに関する情報と、前記フロー識別情報とを受信する受信手段と、
前記記憶手段に記憶されている前記フロー情報のうち、前記受信手段により受信した前記フロー識別情報と関連付けて前記記憶手段に記憶されているフロー情報を取得する取得手段と、
前記取得手段により取得した前記フロー情報に定義されている前記プログラム識別情報により識別される前記プログラムそれぞれに、前記フロー情報に定義されている前記実行順に従って、前記フロー情報に定義されている前記パラメータを用いて、前記プログラム識別情報に対応する処理識別情報により識別される処理を実行させることで、前記受信手段により受信した前記電子データに関する情報に基づく電子データを用いた前記一連の処理を実行する実行手段と、
を有する情報処理システム。 An information processing system including one or more information processing devices and having a plurality of programs capable of executing a plurality of predetermined processes.
For each series of processes using electronic data, program identification information that identifies one or more programs that execute each process of the series of processes, process identification information that identifies the processes executed by the program, and 1 and parameters used in the processing executed by the respective above said program, one or more flow information execution order and is defined in the program, storage means for storing in association with the flow identification information for identifying the flow information,
On the flow creation screen displayed on the first device of the one or more devices connected to the information processing system, the program identification information and the plurality of devices capable of executing the program identified by the program identification information. When a user operation that defines a process identification information that identifies one of the processes, the parameter, and the execution order is performed, the program identification information, the process identification information, the parameter, and the execution order are performed. A registration means that creates the flow information in which the execution order is defined, associates the created flow information with the flow identification information that identifies the flow information, and stores the flow information in the storage means.
A receiving means for receiving information on electronic data and the flow identification information from a second device among the one or more devices.
Of the flow information stored in the storage means, an acquisition means for acquiring the flow information stored in the storage means in association with the flow identification information received by the receiving means.
The parameters defined in the flow information according to the execution order defined in the flow information for each of the programs identified by the program identification information defined in the flow information acquired by the acquisition means. By executing the process identified by the process identification information corresponding to the program identification information, the series of processes using the electronic data based on the information about the electronic data received by the receiving means is executed. The means of execution and
Information processing system with.
前記第1の機器に表示されたフロー作成画面に含まれる所定の領域に、前記プログラム識別情報を表す所定の表示部品を配置するユーザ操作が行われると、前記プログラム識別情報が定義された前記フロー情報を作成する、請求項1に記載の情報処理システム。 The registration means
When a user operation for arranging a predetermined display component representing the program identification information is performed in a predetermined area included in the flow creation screen displayed on the first device, the flow in which the program identification information is defined is performed. The information processing system according to claim 1, which creates information.
前記フロー作成画面に含まれる所定の領域に、前記表示部品を配置するドラッグアンドドロップ操作が行われると、前記プログラム識別情報が定義された前記フロー情報を作成する、請求項2に記載の情報処理システム。 The registration method is
The information processing according to claim 2, wherein when a drag-and-drop operation for arranging the display component is performed in a predetermined area included in the flow creation screen, the flow information in which the program identification information is defined is created. system.
前記第1の機器のユーザに対する操作説明を表示する領域が含まれる、請求項1乃至4の何れか一項に記載の情報処理システム。 On the flow creation screen,
The information processing system according to any one of claims 1 to 4, which includes an area for displaying an operation explanation for the user of the first device.
電子データに対して、該電子データのデータ型を所定のデータ型に変換する型変換手段を1以上有し、
前記電子データのデータ型を、前記型変換手段により前記プログラムが処理可能なデータ型に変換した後、前記プログラムを実行させることで、前記電子データを用いた一連の処理を実行する、請求項1乃至6の何れか一項に記載の情報処理システム。 The execution means
It has one or more type conversion means for converting the data type of the electronic data into a predetermined data type for the electronic data.
Claim 1 in which a series of processes using the electronic data is executed by converting the data type of the electronic data into a data type that can be processed by the program by the type conversion means and then executing the program. The information processing system according to any one of 6 to 6.
前記外部サービスに関する処理を実行するプログラムには、
外部サービスに対して電子データをアップロードする処理を実行するプログラムを少なくとも含む、請求項1乃至7の何れか一項に記載の情報処理システム。 The program includes a program that executes processing related to an external service.
The program that executes the processing related to the external service includes
The information processing system according to any one of claims 1 to 7, further comprising a program that executes a process of uploading electronic data to an external service.
電子データを用いた一連の処理毎に、該一連の処理のそれぞれの処理を実行する1以上の前記プログラムを識別するプログラム識別情報と、前記プログラムが実行する処理を識別する処理識別情報と、1以上の前記プログラムそれぞれが実行する処理に用いられるパラメータと、1以上の前記プログラムの実行順とが定義されたフロー情報を、該フロー情報を識別するフロー識別情報と関連付けて記憶する記憶手段と、
前記情報処理装置に接続される1以上の機器のうちの第1の機器に表示されたフロー作成画面において、前記プログラム識別情報と、該プログラム識別情報により識別されるプログラムが実行可能な前記複数の処理のうちの一の処理を識別する処理識別情報と、前記パラメータと、前記実行順とを定義するユーザ操作が行われると、該プログラム識別情報と、前記処理識別情報と、前記パラメータと、前記実行順とが定義された前記フロー情報を作成して、作成した該フロー情報を識別する前記フロー識別情報と関連付けて前記記憶手段に記憶させる登録手段と、
前記1以上の機器のうちの第2の機器から、電子データに関する情報と、前記フロー識別情報とを受信する受信手段と、
前記記憶手段に記憶されている前記フロー情報のうち、前記受信手段により受信した前記フロー識別情報と関連付けて前記記憶手段に記憶されているフロー情報を取得する取得手段と、
前記取得手段により取得した前記フロー情報に定義されている前記プログラム識別情報により識別される前記プログラムそれぞれに、前記フロー情報に定義されている前記実行順に従って、前記フロー情報に定義されている前記パラメータを用いて、前記プログラム識別情報に対応する処理識別情報により識別される処理を実行させることで、前記受信手段により受信した前記電子データに関する情報に基づく電子データを用いた前記一連の処理を実行する実行手段と、
を有する情報処理装置。 An information processing device having a plurality of programs capable of executing a plurality of predetermined processes.
For each series of processes using electronic data, program identification information that identifies one or more programs that execute each process of the series of processes, process identification information that identifies the processes executed by the program, and 1 and parameters used in the processing executed by the respective above said program, one or more flow information execution order and is defined in the program, storage means for storing in association with the flow identification information for identifying the flow information,
On the flow creation screen displayed on the first device of the one or more devices connected to the information processing device, the program identification information and the plurality of programs capable of executing the program identified by the program identification information. When a user operation that defines a process identification information that identifies one of the processes, the parameter, and the execution order is performed, the program identification information, the process identification information, the parameter, and the execution order are performed. A registration means that creates the flow information in which the execution order is defined, associates the created flow information with the flow identification information that identifies the flow information, and stores the flow information in the storage means.
A receiving means for receiving information on electronic data and the flow identification information from a second device among the one or more devices.
Of the flow information stored in the storage means, an acquisition means for acquiring the flow information stored in the storage means in association with the flow identification information received by the receiving means.
The parameters defined in the flow information according to the execution order defined in the flow information for each of the programs identified by the program identification information defined in the flow information acquired by the acquisition means. By executing the process identified by the process identification information corresponding to the program identification information, the series of processes using the electronic data based on the information about the electronic data received by the receiving means is executed. The means of execution and
Information processing device with.
前記情報処理システムに接続される1以上の機器のうちの第1の機器に表示されたフロー作成画面において、前記プログラム識別情報と、該プログラム識別情報により識別されるプログラムが実行可能な前記複数の処理のうちの一の処理を識別する処理識別情報と、前記パラメータと、前記実行順とを定義するユーザ操作が行われると、該プログラム識別情報と、前記処理識別情報と、前記パラメータと、前記実行順とが定義された前記フロー情報を作成して、作成した該フロー情報を識別する前記フロー識別情報と関連付けて前記記憶手段に記憶させる登録手順と、
前記1以上の機器のうちの第2の機器から、電子データに関する情報と、前記フロー識別情報とを受信する受信手順と、
前記記憶手段に記憶されている前記フロー情報のうち、前記受信手順により受信した前記フロー識別情報と関連付けて前記記憶手段に記憶されているフロー情報を取得する取得手順と、
前記取得手順により取得した前記フロー情報に定義されている前記プログラム識別情報により識別される前記プログラムそれぞれに、前記フロー情報に定義されている前記実行順に従って、前記フロー情報に定義されている前記パラメータを用いて、前記プログラム識別情報に対応する処理識別情報により識別される処理を実行させることで、前記受信手順により受信した前記電子データに関する情報に基づく電子データを用いた前記一連の処理を実行する実行手順と、
を有する情報処理方法。 An information processing system including one or more information processing devices and having a plurality of programs capable of executing a plurality of predetermined processes, and each process of the series of processes for each series of processes using electronic data. the program identification information for identifying one or more of the programs to be executed, the process identification information for identifying a process in which the program is executed, and parameters used for processing each one or more of the program is executed, one or more of the An information processing method used in an information processing system having a storage means for storing flow information in which a program execution order is defined in association with flow identification information that identifies the flow information.
On the flow creation screen displayed on the first device of the one or more devices connected to the information processing system, the program identification information and the plurality of devices capable of executing the program identified by the program identification information. When a user operation that defines a process identification information that identifies one of the processes, the parameter, and the execution order is performed, the program identification information, the process identification information, the parameter, and the execution order are performed. A registration procedure in which the flow information in which the execution order is defined is created, the created flow information is identified, and the flow identification information is associated with the flow identification information and stored in the storage means.
A receiving procedure for receiving information on electronic data and the flow identification information from a second device among the one or more devices.
Of the flow information stored in the storage means, an acquisition procedure for acquiring the flow information stored in the storage means in association with the flow identification information received by the reception procedure, and
The parameters defined in the flow information according to the execution order defined in the flow information for each of the programs identified by the program identification information defined in the flow information acquired by the acquisition procedure. By executing the process identified by the process identification information corresponding to the program identification information, the series of processes using the electronic data based on the information about the electronic data received by the reception procedure is executed. Execution procedure and
Information processing method having.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016138026A JP6794686B2 (en) | 2016-07-12 | 2016-07-12 | Information processing system, information processing device, and information processing method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016138026A JP6794686B2 (en) | 2016-07-12 | 2016-07-12 | Information processing system, information processing device, and information processing method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2018010434A JP2018010434A (en) | 2018-01-18 |
| JP6794686B2 true JP6794686B2 (en) | 2020-12-02 |
Family
ID=60993517
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2016138026A Active JP6794686B2 (en) | 2016-07-12 | 2016-07-12 | Information processing system, information processing device, and information processing method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6794686B2 (en) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP7215106B2 (en) * | 2018-11-21 | 2023-01-31 | 株式会社リコー | Information processing system, information processing device, information processing method, information processing program |
| JP7404872B2 (en) * | 2019-12-27 | 2023-12-26 | 株式会社リコー | Information processing system, service provision system, information processing method, program |
| CN112749026B (en) * | 2020-12-30 | 2024-09-03 | 金蝶软件(中国)有限公司 | API calling method and related device |
| JP7672760B1 (en) * | 2024-10-15 | 2025-05-08 | 株式会社川村インターナショナル | File processing system, file processing method, and file processing program |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002278759A (en) * | 2001-03-15 | 2002-09-27 | Toshiba Corp | Remote control software development system |
| JP4925969B2 (en) * | 2006-09-15 | 2012-05-09 | 株式会社リコー | Information processing apparatus, processing control method, and program |
| JP4626676B2 (en) * | 2008-05-26 | 2011-02-09 | コニカミノルタビジネステクノロジーズ株式会社 | Workflow creation support method, workflow server, program |
| JP2011070472A (en) * | 2009-09-28 | 2011-04-07 | Sharp Corp | Method, system and program for supporting development of application |
-
2016
- 2016-07-12 JP JP2016138026A patent/JP6794686B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2018010434A (en) | 2018-01-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11112958B2 (en) | Information processing system, service providing system, and flow setting method | |
| US11150941B2 (en) | Information processing system, information processing apparatus, method for processing information, and recording medium for handling process flow information | |
| US10372485B2 (en) | Information processing system, information processing apparatus, method for processing information, and recording medium | |
| US10114940B2 (en) | Information processing system, information processing apparatus, and information processing method | |
| US9794447B2 (en) | Service providing system, cooperation processing method, and information processing system | |
| EP3309695A1 (en) | Information processing apparatus, document display method, document display system, and program | |
| JP7159558B2 (en) | Image processing device, image processing system, image processing method, and web browser program | |
| CN103327206A (en) | Image processing apparatus, image processing system, and image processing method | |
| JP6794686B2 (en) | Information processing system, information processing device, and information processing method | |
| JP6756270B2 (en) | Information processing system, information processing device, information processing method, and program | |
| US20180060131A1 (en) | Information processing system, information processing apparatus, and information processing method | |
| JP2010262584A (en) | Information processing apparatus, information processing system, information processing method, and program | |
| US9904499B2 (en) | Information processing system for dynamically adding a process to a sequence of processes and information processing method using same | |
| JP5659562B2 (en) | Document management system, information processing apparatus, document file registration method, and file registration program | |
| JP7027846B2 (en) | Input / output devices, programs and information processing systems | |
| US10348926B2 (en) | Information processing system, information processing apparatus, and information processing method | |
| JP6881920B2 (en) | Information processing equipment, control methods, and programs | |
| JP6753489B2 (en) | Information processing system, information processing device, information processing method, and program | |
| JP6673047B2 (en) | Information processing system, information processing apparatus, and information processing method | |
| US10432735B2 (en) | Information processing system for facilitating designation of restriction conditions in requests to an input/output service received from an input/output device | |
| JP6536308B2 (en) | INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD, AND PROGRAM | |
| US10725832B2 (en) | Information processing system, information processing apparatus, method for processing information, and information processing program | |
| JP7444208B2 (en) | Information processing system, information processing device, information processing method, and program | |
| CN111788590A (en) | Information processing system, information processing method, and recording medium | |
| JP2024054723A (en) | Information processing system, setting method, program, and service providing system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190522 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200311 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200317 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200514 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20201013 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20201026 |
|
| R151 | Written notification of patent or utility model registration |
Ref document number: 6794686 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |