WO2017204368A1 - Web-based spreadsheet service providing device and method - Google Patents

Web-based spreadsheet service providing device and method Download PDF

Info

Publication number
WO2017204368A1
WO2017204368A1 PCT/KR2016/005419 KR2016005419W WO2017204368A1 WO 2017204368 A1 WO2017204368 A1 WO 2017204368A1 KR 2016005419 W KR2016005419 W KR 2016005419W WO 2017204368 A1 WO2017204368 A1 WO 2017204368A1
Authority
WO
WIPO (PCT)
Prior art keywords
cell
information
data
additional
client terminal
Prior art date
Application number
PCT/KR2016/005419
Other languages
French (fr)
Korean (ko)
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 PCT/KR2016/005419 priority Critical patent/WO2017204368A1/en
Priority to KR1020167017256A priority patent/KR101797573B1/en
Publication of WO2017204368A1 publication Critical patent/WO2017204368A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting

Definitions

  • the present invention relates to a web-based spreadsheet service providing apparatus and method for supporting viewing, creating, and editing of a spreadsheet to a client terminal based on the web.
  • These electronic document related programs include word processors that support the creation and editing of basic documents, data entry, arithmetic operations, spreadsheets to assist with data management, and presentation programs to assist presenters.
  • the user may install the aforementioned electronic document related programs directly on the electronic terminal device, and then operate the electronic document related programs to view or create the electronic document. I had to edit.
  • the web-based electronic document service supports various client terminals accessing an electronic document service providing server and viewing and using a markup language-based electronic document through a browser to create and edit the electronic document.
  • various client terminals are mainly used in corporations or organizations in that they support simultaneous collaboration on the electronic document in real time.
  • the web-based electronic document service can view, create, and edit electronic documents through a browser mounted on the client terminal as long as it can access the Internet without installing a predetermined electronic document writing program on the client terminal. Because it supports to ensure the mobility of users, individual users are also gradually increasing.
  • the present invention supports a plurality of cells constituting a spreadsheet to be correctly rendered and displayed on a screen through a browser of a client terminal, and even if the spreadsheet includes a function operation, a web capable of supporting such a function operation is provided.
  • An apparatus and method for providing a spreadsheet service are provided.
  • the web-based spreadsheet service providing apparatus is information on at least one cell in which data is inserted among a plurality of cells constituting the spreadsheet-the information on the at least one cell is the at least Includes data inserted into one cell and a column address assigned to each of the at least one cell, grouped in the same row unit based on the row address assigned to each of the at least one cell.
  • the list includes information on each row address in which the information on the at least one cell is grouped. If the open command for the spreadsheet is received from the cell database and the client terminal, the list is stored from the cell database.
  • Extracting data about the list to the client terminal A spreadsheet data transmission unit for transmitting data for a lock, wherein the client terminal receives a data of the list, and receives a row address for the at least one cell grouped on the list through a browser of the client terminal. And extracts the column address assigned to each of the at least one cell and the data inserted in each of the at least one cell from the information on the at least one cell included in the list.
  • a plurality of cells constituting the spreadsheet are rendered and displayed on the screen based on the row address, the extracted column address, and the extracted data.
  • the web-based spreadsheet service providing method information on at least one cell in which data is inserted among a plurality of cells constituting the spreadsheet-the information on the at least one cell List the data inserted into the at least one cell and the column address assigned to each of the at least one cell, grouped in the same row unit based on the row address assigned to each of the at least one cell.
  • the list includes information about each row address in which information about the at least one cell is grouped. Maintaining a cell database stored therein and receiving an open command for the spreadsheet from a client terminal.
  • the present invention supports a plurality of cells constituting a spreadsheet to be correctly rendered and displayed on a screen through a browser of a client terminal, and even if the spreadsheet includes a function operation, a web capable of supporting such a function operation is provided.
  • An apparatus and method for providing a spreadsheet service based on the same may be provided.
  • FIG. 1 is a diagram showing the structure of a web-based spreadsheet service providing apparatus according to an embodiment of the present invention.
  • FIGS 2 to 6 are views for explaining the operation of the web-based spreadsheet service providing apparatus according to an embodiment of the present invention.
  • FIG. 7 is a flowchart illustrating a web-based spreadsheet service providing method according to an embodiment of the present invention.
  • FIG. 1 is a diagram showing the structure of a web-based spreadsheet service providing apparatus according to an embodiment of the present invention.
  • the web-based spreadsheet service providing apparatus 110 includes a cell database 111 and a spreadsheet data transmitter 112.
  • the cell database 111 lists information about at least one cell in which data is inserted among the plurality of cells constituting the spreadsheet in the same row unit based on the row address assigned to each of the at least one cell. Save as.
  • the information on the at least one cell includes data inserted into the at least one cell and a column address assigned to each of the at least one cell, and the list includes information on the at least one cell. Contains information about each grouped row address.
  • the cell database 111 may store a list as shown in FIG. 2.
  • a cell into which data is inserted is inserted into the cell database 111 as shown in FIG. 2.
  • a list of grouping information about cells including column addresses and data as information may be stored in the same row unit.
  • the list may include information about the row addresses of each group such as "row: 1", “row: 2", “row: 3”, and "row: 4", which are the row addresses shown in FIG. Can be.
  • the spreadsheet data transmitting unit 112 accesses the web-based spreadsheet service providing apparatus 110 through the Internet using the client terminal 130 and then authorizes an open command for the spreadsheet.
  • the open command for the spreadsheet is received from the terminal 130, the data about the list is extracted from the cell database 111 and the data about the list is transmitted to the client terminal 130.
  • the client terminal 130 may access the at least one cell grouped on the list through a browser of the client terminal 130.
  • a plurality of cells constituting the spreadsheet may be rendered and displayed on the screen based on the identified row address, the extracted column address, and the extracted data.
  • a script for rendering a spreadsheet on a browser may be installed.
  • a browser of the client terminal 130 may be installed with JavaScript configured with instructions for rendering the spreadsheet.
  • the client terminal 130 may download the spreadsheet of the form shown in FIG. 3 through a browser.
  • a plurality of constituting cells can be rendered and displayed on a screen. More specifically, each command of a script installed in a browser is executed to check a row address of the at least one cell grouped on the list. And extracting a column address allocated to each of the at least one cell and data inserted into each of the at least one cell from information about the at least one cell included in the list, and then checking the identified row address. And the spread as shown in FIG. 3 based on the extracted column address and the extracted data.
  • a plurality of cells constituting the chart may be rendered and displayed on the screen.
  • the client terminal 130 executes each command of the script installed in the browser to mark a plurality of cells constituting the spreadsheet with a markup language such as HTML (Hypertext Markup Language) or XML (eXtensible Markup Language). Markup Language) can be rendered and displayed on the screen.
  • a markup language such as HTML (Hypertext Markup Language) or XML (eXtensible Markup Language). Markup Language) can be rendered and displayed on the screen.
  • the web-based spreadsheet service providing apparatus 110 includes at least one of a plurality of cells constituting the spreadsheet inserted therein as shown in FIG. 2 on the cell database 111.
  • the data of the list is extracted from the cell database 111 and transmitted to the client terminal 130 and the client terminal 130 is included on the list through the browser based on the data for the list.
  • the web-based spreadsheet service providing apparatus 110 may further include an edit information receiver 113 and an updater 114.
  • the editing information receiving unit 113 corrects data inserted into the at least one cell among a plurality of cells constituting the spreadsheet displayed by the user on the client terminal 130, thereby allowing the user to modify the data.
  • the client terminal 130 the modification edit information including the row address and column address of the cell where the data modification occurred, and the changed data in the cell where the data modification occurred.
  • the updater 114 updates the information on the at least one cell included in the list stored in the cell database 111 based on the received correction edit information.
  • a user keyboard or the like is connected to the client terminal 130.
  • the client terminal 130 returns data.
  • Create a correction edit information including "row 1" of the row address of "1 row, column C", which is the cell where the correction occurred, "column C” of the column address, and "4" which is changed data in the cell where the data modification occurred. It may be transmitted to the web-based spreadsheet service providing apparatus 110.
  • the edit information receiver 113 may receive the correction edit information from the client terminal 130, and the update unit 114 is stored in the cell database 111 based on the received correction edit information.
  • the information on the at least one cell included in the list may be updated.
  • the update unit 114 is "data: 2, column: C” 223 which is information of a cell corresponding to column C in "row: 1" 210 grouped in one row on the list shown in FIG.
  • data: 4 column: C
  • the web-based spreadsheet service providing apparatus 110 may further include a function information database 115.
  • the function information database 115 when a function is inserted in a first cell of the at least one cell, at least one first input cell referred to as information about the function and an input value in the function (wherein the at least One first input cell is a cell included in the at least one cell, and information about a row address and a column address are stored in correspondence with each other.
  • the function information database 115 includes information about "SUM (C1, C2, C3)” which is a function inserted in the "four rows and the C columns” corresponding to the first cell. And information about addresses of at least one first input cell, "1 row, C column", “2 row, C column”, “3 row, C column”, which are referred to as input values in the function, are stored in correspondence with each other. There may be.
  • the updater 114 may include an edit determiner 116, a function operation performer 117, and a data changer 118.
  • the edit determiner 116 refers to information on the row address and column address of the at least one first input cell stored in the function information database 115. It is determined whether modification of data according to the received correction edit information has occurred in the at least one first input cell.
  • the function operation performing unit 117 may determine information about the function stored in the function information database 115.
  • a first output value is generated by performing a function operation based on the change data of the at least one first input cell according to the received correction edit information.
  • the data changer 118 changes the data inserted in the first cell on the list into the first output value based on the first output value.
  • the unit 116 is provided with the addresses of the at least one first input cell stored in the function information database 115 in the " 1 row, C column ", " 2 row, C column " The correction of the data according to the received correction edit information with reference to the information on the at least Of the first input cell, "first rows, columns C", “the second row, column C”, it can be determined whether or not generated in the "three-row, column C".
  • the function operation performing unit 117 may modify the data according to the received correction edit information such that the at least one first input cell is “1 row, C column”, “2 rows, C columns”, “3 rows, Column C "in the” Column 1, Column C “, and refers to the information on the function” SUM (C1, C2, C3) "stored in the function information database 115,
  • the first output value "16" may be generated by performing a function operation based on the change data of the at least one first input cell.
  • the data changing unit 118 has " SUM (C1, C2, C3) " inserted in the list as shown in Fig. 2 based on the first output value " 16 " "Data: 14, column: C” 225 which is information about the first cell corresponding to "row 4, column C" may be changed to "data: 16, column: C”.
  • the spreadsheet data transmitter 112 may further include an update data transmitter 119.
  • the update data transmitter 119 may transmit information about the row address and the column address of the first cell and the first output value to the client terminal. At the same time, the data update command for the first cell is transmitted to the client terminal 130.
  • the client terminal 130 when the client terminal 130 receives the information on the row address and the column address of the first cell, the first output value and the data update command for the first cell, the client terminal 130 receives a data update command for the first cell. According to the information on the row address and column address of the first cell, the data inserted in the first cell of the plurality of cells constituting the spreadsheet displayed on the screen through the browser Can be changed to the first output value.
  • the operation of the update data transmitter 119 will be described in more detail by using the example described above.
  • the information “data: 14, column: C” 225 for the first cell is “data: 16”.
  • column: C " the update data transmitter 119 transmits the information about the row address and the column address of the first cell to" four rows and columns C "and the first output value" 16 "to the client terminal.
  • the data update command for the first cell may be transmitted to the client terminal 130 at the same time.
  • the client terminal 130 when the client terminal 130 receives the information on the row address and the column address of the first cell, the first output value and the data update command for the first cell, the client terminal 130 receives a data update command for the first cell.
  • the spreadsheet is displayed on the screen through the browser on the diagram 410 of FIG. 4 with reference to "row 4, column C", which is information on the row address and column address of the first cell.
  • " 14 " 412 which is data inserted into the first cell, can be changed to the first output value " 16 " 422, as shown at 420 in FIG. .
  • the web-based spreadsheet service providing apparatus 110 includes a function information database that stores information about a function inserted into a specific cell of a spreadsheet and a cell address referenced by the function as an input value.
  • a function information database that stores information about a function inserted into a specific cell of a spreadsheet and a cell address referenced by the function as an input value.
  • the present invention can normally provide a complicated function calculation function that was difficult to implement through a script installed in the browser of the client terminal 130 itself in the web-based spreadsheet service.
  • additional editing information including the row address and column address of the at least one additional cell and data inserted into the at least one additional cell is obtained from the client terminal 130. Can be received.
  • the updater 114 may include information on the at least one additional cell based on the additional edit information (wherein the information on the at least one additional cell is inserted into the at least one additional cell and the data).
  • a column address assigned to each of the at least one additional cell may be added to the list by grouping the same row unit based on the row address assigned to each of the at least one additional cell.
  • a user may input an input device such as a keyboard connected to the client terminal 130.
  • an input device such as a keyboard connected to the client terminal 130.
  • the client terminal 130 is the additional cell.
  • the edit information receiver 113 may receive the additional edit information from the client terminal 130, and the update unit 114 may display “data: b as shown in FIG. 6 based on the additional edit information.
  • column: E " 611 can be added to the list by grouping information on an additional cell, " row 2, " which is a row address assigned to the additional cell.
  • the updater 114 displays the data of the cell corresponding to the column E for "row: 2" grouped in two rows on the list as "data: b, column: E" 611. ) Can be added.
  • the additional edit information when the data inserted into the first additional cell of the at least one additional cell is a function, the additional edit information includes information on the function inserted in the first additional cell; At least one second input cell referred to as an input value in the function inserted into the first additional cell, wherein the at least one second input cell is a cell included in the at least one cell and the at least one additional cell ) May contain information about row and column addresses.
  • the updater 114 confirms that the information on the function inserted into the first additional cell and the row address and column address of the at least one second input cell are included in the additional edit information. If the information on the function inserted into the first additional cell and the row address and column address of the at least one second input cell are corresponded to each other in the function information database 115 with reference to the additional edit information, It may further include a function information update unit 120 to store.
  • the function operation performing unit 117 may refer to the at least one second input by referring to the information about the function inserted into the first additional cell and the information about the row address and the column address of the at least one second input cell.
  • a second output value may be generated, and the data changer 118 may be configured to display the first additional cell on the list based on the second output value.
  • Data to be inserted into may be included as the second output value.
  • the update data transmitter 119 when the generation of the second output value is completed, completes information on the row address and column address of the first additional cell and the second output value. And a data update command for the first additional cell may be transmitted to the client terminal 130 at the same time.
  • the client terminal 130 may receive information about the first additional cell.
  • the first additional cell of the plurality of cells constituting the spreadsheet displayed on the screen through the browser by referring to the information on the row address and the column address of the first additional cell.
  • the second output value may be inserted.
  • the user may access the client terminal through an input device such as a keyboard connected to the client terminal 130.
  • an input device such as a keyboard connected to the client terminal 130.
  • the client terminal 130 adds the row address "row 2" of the "additional cell 1", the column address "column E” and the data added to the corresponding cell.
  • the edit information receiver 113 may receive the additional edit information from the client terminal 130, and the update unit 114 may display “data: b as shown in FIG. 6 based on the additional edit information.
  • column: E: 611 can be added to the list by grouping information about the " additional cell 1 " into “ 2 rows " which is a row address assigned to the " additional cell 1 " data 6, colunm: E “ 612 " can be added to the list by grouping information on the " additional cell 2 " to " row 1 " which is a row address assigned to the " additional cell 2 ". .
  • the update unit 114 may further perform a process for calculating the data "6".
  • the function operation execution unit 117 is a cell corresponding to the information on the function inserted in the "additional cell 2" and "1 row B column", “1 row, C column”, “1 row, D column”. Performs a function operation based on the data inserted in the cell corresponding to "1 row B column", “1 row B column, C row”, “1 row row D” by referring to the row address and column address of the By doing this, an output value of "6" can be generated.
  • the data changing unit 118 includes data to be inserted into the "additional cell 2" on the list as “6” based on the output value of "6", thereby finally displaying as shown in FIG.
  • Information about "additional cell 2" called “data: 6, column: E” 612 may be added to the list by grouping the information in "row 1" which is a row address assigned to the "additional cell 2". .
  • the update data transmission unit 119 is called “6" and information about the row address and the column address of the "additional cell 2".
  • a data update command for the "additional cell 2" may be transmitted to the client terminal 130 at the same time as the output value is transmitted to the client terminal 130.
  • the client terminal 130 receives the information on the row address and column address of the "additional cell 2" and the data update command for the output value "6" and the "additional cell 2", the "additional cell” According to the data update command for "2", the information on the row address and the column address of the "additional cell 2" is displayed on the screen through the browser as shown by reference numeral 520 of FIG.
  • An output value of “6” 521 may be inserted into “additional cell 2” among a plurality of cells constituting the spreadsheet.
  • the web-based spreadsheet service providing apparatus 110 adds data from the client terminal 130 when the user of the client terminal 130 adds data by creating a new cell on the spreadsheet. Receives the additional edit information associated with it and reflects it on the list stored in the cell database 111, and when the data added by the user is a predetermined function, a function operation is performed to reflect the calculated result value on the list. At the same time, by transmitting the result value to the client terminal 130, the client terminal 130 can support to display the output value corresponding to the function added by the user.
  • FIG. 7 is a flowchart illustrating a web-based spreadsheet service providing method according to an embodiment of the present invention.
  • information on at least one cell in which data is inserted among the plurality of cells constituting the spreadsheet (wherein the information on the at least one cell includes data inserted in the at least one cell and the A list (including the column address assigned to each of the at least one cell) in the same row unit based on the row address assigned to each of the at least one cell, wherein the list is assigned to the at least one cell. Maintain a cell database that contains information about each row address grouped together).
  • the client terminal when the data about the list is received, the client terminal confirms a row address of the at least one cell grouped on the list through a browser of the client terminal, and the at least one included in the list. Extracts the column address assigned to each of the at least one cell and the data inserted into each of the at least one cell from information about one cell, and then the identified row address, the extracted column address, and the extracted data. Based on the plurality of cells constituting the spreadsheet is rendered and displayed on the screen.
  • the web-based spreadsheet service providing method is inserted into the at least one cell of the plurality of cells constituting the spreadsheet displayed on the client terminal through the browser Receiving modification data including the row address and column address of the cell in which the data modification has occurred and the changed data in the cell in which the data modification has occurred, when the modification to the existing data occurs, and the received correction.
  • the method may further include updating information on the at least one cell included in the list stored in the cell database based on the edit information.
  • the web-based spreadsheet service providing method when a function is inserted into a first cell of the at least one cell, information about the function and an input value from the function may be used.
  • a function information database in which information about a row address and a column address of at least one first input cell referred to here, wherein the at least one first input cell is a cell included in the at least one cell, is stored in correspondence with each other It may further comprise the step of maintaining.
  • the received edited information is referred to by referring to the information about the row address and the column address of the at least one first input cell stored in the function information database. Determining whether modification of data according to correction editing information occurred in the at least one first input cell, determining that modification of data according to the received correction editing information occurs in the at least one first input cell And a first output value by performing a function operation based on the change data of the at least one first input cell according to the received modified edit information by referring to the information on the function stored in the function information database. Generating an on the list based on the first output value; And changing the data inserted into the first cell to the first output value.
  • the web-based spreadsheet service providing method when the data inserted into the first cell is changed to the first output value, the row address and the column address of the first cell.
  • the method may further include transmitting a data update command for the first cell to the client terminal while transmitting information about the first output value and the first output value to the client terminal.
  • the client terminal when the client terminal receives the information about the row address and the column address of the first cell, the first output value and the data update command for the first cell, the client terminal according to the data update command for the first cell.
  • the data inserted into the first cell among a plurality of cells constituting the spreadsheet displayed on the screen through the browser by referring to the information about the row address and the column address of the first cell. Can be changed to 1 output value.
  • the web-based spreadsheet service providing method except for the at least one cell of the plurality of cells constituting the spreadsheet that is displayed through the browser in the client terminal
  • additional editing information including row and column addresses of the at least one additional cell and data inserted in the at least one additional cell, from the client terminal.
  • each of the same line by line on the basis of it may further comprise the step of adding to the said list.
  • the additional edit information when the data inserted into the first additional cell of the at least one additional cell is a function, the additional edit information includes information on the function inserted in the first additional cell; At least one second input cell referred to as an input value in the function inserted into the first additional cell, wherein the at least one second input cell is a cell included in the at least one cell and the at least one additional cell ) May further include information about row and column addresses.
  • the adding on the list may include information on a function inserted into the first additional cell and information on row and column addresses of the at least one second input cell on the additional edit information. If it is determined that the information on the function inserted into the first additional cell and the row address and column address of the at least one second input cell are matched with each other in the function information database with reference to the additional edit information. Storing the data inserted into the at least one second input cell by referring to information about a function inserted into the first additional cell and information about a row address and a column address of the at least one second input cell. Generating a second output value and inserting the second output value into the first additional cell on the list based on the second output value.
  • the data to be is possible to include the step of including a second output value.
  • the web-based spreadsheet service providing method when generation of the second output value is completed, information about the row address and the column address of the first additional cell and the second The method may further include transmitting a data update command for the first additional cell to the client terminal while transmitting an output value to the client terminal.
  • the client terminal when the client terminal receives information on a row address and a column address of the first additional cell, the second output value, and a data update command for the first additional cell, the client terminal updates data for the first additional cell.
  • the method for providing a web-based spreadsheet service according to an embodiment of the present invention has been described with reference to FIG. 7.
  • the web-based spreadsheet service providing method according to an embodiment of the present invention may correspond to the configuration of the operation of the web-based spreadsheet service providing apparatus 110 described with reference to FIGS. 1 to 6, Detailed description thereof will be omitted.
  • Web-based spreadsheet service providing method may be implemented as a computer program stored in a storage medium for execution in combination with a computer.
  • the web-based spreadsheet service providing method can be implemented in the form of program instructions that can be executed by various computer means may be recorded on a computer readable medium.
  • the computer readable medium may include program instructions, data files, data structures, etc. alone or in combination.
  • Program instructions recorded on the media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts.
  • Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks.
  • Magneto-optical media and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like.
  • program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.
  • the hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Disclosed are a web-based spreadsheet service providing device and method. The present invention is intended to provide a web-based spreadsheet service providing device and method capable of providing support to enable a plurality of cells configuring a spreadsheet to be accurately rendered and displayed on a screen through a browser of a client terminal, and capable of supporting a function calculation, even when the function calculation is included in the spreadsheet.

Description

웹 기반의 스프레드시트 서비스 제공 장치 및 방법Apparatus and method for providing web-based spreadsheet service
본 발명은 웹을 기반으로 클라이언트 단말에 대해 스프레드시트의 열람, 작성, 편집 등을 수행할 수 있도록 지원하는 웹 기반의 스프레드시트 서비스 제공 장치 및 방법에 대한 것이다.The present invention relates to a web-based spreadsheet service providing apparatus and method for supporting viewing, creating, and editing of a spreadsheet to a client terminal based on the web.
최근, 컴퓨터나 스마트폰 또는 태블릿 PC 등과 같은 전자 단말 장치가 널리 보급됨에 따라 이러한 전자 단말 장치를 이용하여 전자 문서를 열람, 작성, 편집할 수 있도록 하는 다양한 종류의 전자 문서 관련 프로그램들이 출시되고 있다.Recently, as electronic terminal devices such as computers, smart phones, tablet PCs, and the like are widely used, various kinds of electronic document-related programs have been released, which allow users to view, create, and edit electronic documents using such electronic terminal devices.
이러한 전자 문서 관련 프로그램들로는 기본적인 문서의 작성, 편집 등을 지원하는 워드프로세서, 데이터의 입력, 산술연산, 데이터 관리를 보조하는 스프레드시트, 발표자의 발표를 보조하기 위한 프레젠테이션 프로그램들이 있다.These electronic document related programs include word processors that support the creation and editing of basic documents, data entry, arithmetic operations, spreadsheets to assist with data management, and presentation programs to assist presenters.
기존에는 사용자가 전자 단말 장치를 활용해서 전자 문서를 열람, 작성, 편집하기 위해서는 전자 단말 장치에 직접 앞서 언급한 전자 문서 관련 프로그램들을 설치한 후 전자 문서 관련 프로그램들을 구동시켜 전자 문서를 열람하거나 작성 및 편집해야 했었다.Conventionally, in order for a user to view, create, and edit an electronic document using an electronic terminal device, the user may install the aforementioned electronic document related programs directly on the electronic terminal device, and then operate the electronic document related programs to view or create the electronic document. I had to edit.
하지만, 최근에는 초고속 인터넷 환경이 구축되고, 언제 어디에서든지 인터넷에 접속할 수 있도록 하는 무선 인터넷 환경이 구축됨에 따라, 원격지의 서버를 통해서, 클라이언트 단말인 전자 단말 장치에 전자 문서 관련 서비스를 제공함으로써, 사용자가 전자 단말 장치에 소정의 전자 문서 관련 프로그램을 설치하지 않더라도 언제 어디에서든지 전자 문서를 열람, 작성, 편집할 수 있도록 하는 웹 기반의 전자 문서 서비스가 등장하고 있다.However, in recent years, as a high-speed Internet environment has been established, and a wireless Internet environment has been established to allow access to the Internet anytime, anywhere, by providing an electronic document related service to an electronic terminal device as a client terminal through a remote server, There is a web-based electronic document service that allows a user to view, create, and edit an electronic document anytime and anywhere even without installing a predetermined electronic document related program in the electronic terminal device.
이러한 웹 기반의 전자 문서 서비스는 다양한 클라이언트 단말들이 전자 문서 서비스 제공 서버에 접속한 후 브라우저를 통해 마크업 언어(Markup Language) 기반의 전자 문서를 열람한 후 해당 전자 문서를 작성 및 편집할 수 있도록 지원하며, 다양한 클라이언트 단말들이 상기 전자 문서에 대해서 실시간으로 동시 협업을 수행할 수 있도록 지원한다는 점에서 기업이나 단체 등에서 주로 활용되고 있다.The web-based electronic document service supports various client terminals accessing an electronic document service providing server and viewing and using a markup language-based electronic document through a browser to create and edit the electronic document. In addition, various client terminals are mainly used in corporations or organizations in that they support simultaneous collaboration on the electronic document in real time.
그리고, 웹 기반의 전자 문서 서비스는 클라이언트 단말에 소정의 전자 문서 작성 프로그램을 설치할 필요 없이, 인터넷에 접속만 할 수 있으면, 클라이언트 단말에 탑재되어 있는 브라우저를 통해서 전자 문서를 열람하고, 작성 및 편집할 수 있도록 지원하기 때문에 사용자의 이동성을 보장할 수 있어, 개인 사용자들도 점차 증가하고 있는 추세이다.The web-based electronic document service can view, create, and edit electronic documents through a browser mounted on the client terminal as long as it can access the Internet without installing a predetermined electronic document writing program on the client terminal. Because it supports to ensure the mobility of users, individual users are also gradually increasing.
이러한 웹 기반의 전자 문서 서비스 중에서는 웹 기반으로 사용자가 스프레드시트 관련 문서를 작성할 수 있도록 지원하는 스프레드시트 서비스도 존재한다.Among these web-based electronic document services, there is a spreadsheet service that enables a user to create a spreadsheet-related document on a web basis.
하지만, 스프레드시트는 행과 열 주소를 갖는 복수의 셀들로 구성되어 있고, 함수 연산을 지원한다는 점에서 일반적인 전자 문서와 달리, 다소 복잡한 구조의 문서이기 때문에 이러한 스프레드시트와 관련된 전자 문서 작성 서비스를 웹 기반으로 클라이언트 단말의 사용자에게 제공할 수 있도록 지원하기 위한 기술적 방법이 논의될 필요가 있다.However, since a spreadsheet is composed of a plurality of cells with row and column addresses, and unlike general electronic documents in that they support function operations, the electronic document creation service associated with these spreadsheets is not available. Based on the technical method for supporting the user of the client terminal needs to be discussed.
본 발명은 클라이언트 단말의 브라우저를 통해서 스프레드시트를 구성하는 복수의 셀들이 정확히 렌더링되어 화면 상에 표시될 수 있도록 지원하고, 상기 스프레드시트에 함수 연산이 포함되어 있더라도, 이러한 함수 연산을 지원할 수 있는 웹 기반의 스프레드시트 서비스 제공 장치 및 방법을 제공하고자 한다.The present invention supports a plurality of cells constituting a spreadsheet to be correctly rendered and displayed on a screen through a browser of a client terminal, and even if the spreadsheet includes a function operation, a web capable of supporting such a function operation is provided. An apparatus and method for providing a spreadsheet service are provided.
본 발명의 일실시예에 따른 웹 기반의 스프레드시트 서비스 제공 장치는 스프레드시트를 구성하는 복수의 셀들 중 데이터가 삽입되어 있는 적어도 하나의 셀에 대한 정보 - 상기 적어도 하나의 셀에 대한 정보는 상기 적어도 하나의 셀에 삽입되어 있는 데이터와 상기 적어도 하나의 셀 각각에 할당되어 있는 열 주소를 포함함 - 를 상기 적어도 하나의 셀 각각에 할당되어 있는 행 주소를 기초로 동일한 행 단위로 그룹화하여 목록 - 상기 목록은 상기 적어도 하나의 셀에 대한 정보가 그룹화되어 있는 각 행 주소에 대한 정보를 포함함 - 으로 저장하고 있는 셀 데이터베이스 및 클라이언트 단말로부터 상기 스프레드시트에 대한 오픈 명령이 수신되면, 상기 셀 데이터베이스로부터 상기 목록에 대한 데이터를 추출하여 상기 클라이언트 단말에 대해 상기 목록에 대한 데이터를 전송하는 스프레드시트 데이터 전송부를 포함하고, 상기 클라이언트 단말은 상기 목록에 대한 데이터가 수신되면, 상기 클라이언트 단말의 브라우저를 통해 상기 목록 상에서 그룹화되어 있는 상기 적어도 하나의 셀에 대한 행 주소를 확인하고, 상기 목록 상에 포함되어 있는 상기 적어도 하나의 셀에 대한 정보로부터 상기 적어도 하나의 셀 각각에 할당되어 있는 열 주소와 상기 적어도 하나의 셀 각각에 삽입되어 있는 데이터를 추출하여 상기 확인된 행 주소와 상기 추출된 열 주소 및 상기 추출된 데이터를 기초로 상기 스프레드시트를 구성하는 복수의 셀들을 렌더링하여 화면 상에 표시한다.The web-based spreadsheet service providing apparatus according to an embodiment of the present invention is information on at least one cell in which data is inserted among a plurality of cells constituting the spreadsheet-the information on the at least one cell is the at least Includes data inserted into one cell and a column address assigned to each of the at least one cell, grouped in the same row unit based on the row address assigned to each of the at least one cell. The list includes information on each row address in which the information on the at least one cell is grouped. If the open command for the spreadsheet is received from the cell database and the client terminal, the list is stored from the cell database. Extracting data about the list to the client terminal A spreadsheet data transmission unit for transmitting data for a lock, wherein the client terminal receives a data of the list, and receives a row address for the at least one cell grouped on the list through a browser of the client terminal. And extracts the column address assigned to each of the at least one cell and the data inserted in each of the at least one cell from the information on the at least one cell included in the list. A plurality of cells constituting the spreadsheet are rendered and displayed on the screen based on the row address, the extracted column address, and the extracted data.
또한, 본 발명의 일실시예에 따른 웹 기반의 스프레드시트 서비스 제공 방법은 스프레드시트를 구성하는 복수의 셀들 중 데이터가 삽입되어 있는 적어도 하나의 셀에 대한 정보 - 상기 적어도 하나의 셀에 대한 정보는 상기 적어도 하나의 셀에 삽입되어 있는 데이터와 상기 적어도 하나의 셀 각각에 할당되어 있는 열 주소를 포함함 - 를 상기 적어도 하나의 셀 각각에 할당되어 있는 행 주소를 기초로 동일한 행 단위로 그룹화하여 목록 - 상기 목록은 상기 적어도 하나의 셀에 대한 정보가 그룹화되어 있는 각 행 주소에 대한 정보를 포함함 - 으로 저장하고 있는 셀 데이터베이스를 유지하는 단계 및 클라이언트 단말로부터 상기 스프레드시트에 대한 오픈 명령이 수신되면, 상기 셀 데이터베이스로부터 상기 목록에 대한 데이터를 추출하여 상기 클라이언트 단말에 대해 상기 목록에 대한 데이터를 전송하는 단계를 포함하고, 상기 클라이언트 단말은 상기 목록에 대한 데이터가 수신되면, 상기 클라이언트 단말의 브라우저를 통해 상기 목록 상에서 그룹화되어 있는 상기 적어도 하나의 셀에 대한 행 주소를 확인하고, 상기 목록 상에 포함되어 있는 상기 적어도 하나의 셀에 대한 정보로부터 상기 적어도 하나의 셀 각각에 할당되어 있는 열 주소와 상기 적어도 하나의 셀 각각에 삽입되어 있는 데이터를 추출하여 상기 확인된 행 주소와 상기 추출된 열 주소 및 상기 추출된 데이터를 기초로 상기 스프레드시트를 구성하는 복수의 셀들을 렌더링하여 화면 상에 표시한다.In addition, the web-based spreadsheet service providing method according to an embodiment of the present invention information on at least one cell in which data is inserted among a plurality of cells constituting the spreadsheet-the information on the at least one cell List the data inserted into the at least one cell and the column address assigned to each of the at least one cell, grouped in the same row unit based on the row address assigned to each of the at least one cell. The list includes information about each row address in which information about the at least one cell is grouped. Maintaining a cell database stored therein and receiving an open command for the spreadsheet from a client terminal. Extract the data for the list from the cell database And transmitting data for the list to a terminal, wherein the client terminal receives data for the list for the at least one cell grouped on the list through a browser of the client terminal. Identifying a row address, extracting a column address assigned to each of the at least one cell and data inserted in each of the at least one cell from information on the at least one cell included in the list; Based on the identified row address, the extracted column address, and the extracted data, a plurality of cells constituting the spreadsheet are rendered and displayed on the screen.
본 발명은 클라이언트 단말의 브라우저를 통해서 스프레드시트를 구성하는 복수의 셀들이 정확히 렌더링되어 화면 상에 표시될 수 있도록 지원하고, 상기 스프레드시트에 함수 연산이 포함되어 있더라도, 이러한 함수 연산을 지원할 수 있는 웹 기반의 스프레드시트 서비스 제공 장치 및 방법을 제공할 수 있다.The present invention supports a plurality of cells constituting a spreadsheet to be correctly rendered and displayed on a screen through a browser of a client terminal, and even if the spreadsheet includes a function operation, a web capable of supporting such a function operation is provided. An apparatus and method for providing a spreadsheet service based on the same may be provided.
도 1은 본 발명의 일실시예에 따른 웹 기반의 스프레드시트 서비스 제공 장치의 구조를 도시한 도면이다.1 is a diagram showing the structure of a web-based spreadsheet service providing apparatus according to an embodiment of the present invention.
도 2 내지 도 6은 본 발명의 일실시예에 따른 웹 기반의 스프레드시트 서비스 제공 장치의 동작을 설명하기 위한 도면이다.2 to 6 are views for explaining the operation of the web-based spreadsheet service providing apparatus according to an embodiment of the present invention.
도 7은 본 발명의 일실시예에 따른 웹 기반의 스프레드시트 서비스 제공 방법을 도시한 순서도이다.7 is a flowchart illustrating a web-based spreadsheet service providing method according to an embodiment of the present invention.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. In describing the drawings, similar reference numerals are used for similar elements.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.
이하에서, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 일실시예에 따른 웹 기반의 스프레드시트 서비스 제공 장치의 구조를 도시한 도면이다.1 is a diagram showing the structure of a web-based spreadsheet service providing apparatus according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 일실시예에 따른 웹 기반의 스프레드시트 서비스 제공 장치(110)는 셀 데이터베이스(111) 및 스프레드시트 데이터 전송부(112)를 포함한다.Referring to FIG. 1, the web-based spreadsheet service providing apparatus 110 according to an embodiment of the present invention includes a cell database 111 and a spreadsheet data transmitter 112.
셀 데이터베이스(111)는 스프레드시트를 구성하는 복수의 셀들 중 데이터가 삽입되어 있는 적어도 하나의 셀에 대한 정보를 상기 적어도 하나의 셀 각각에 할당되어 있는 행 주소를 기초로 동일한 행 단위로 그룹화하여 목록으로 저장하고 있다.The cell database 111 lists information about at least one cell in which data is inserted among the plurality of cells constituting the spreadsheet in the same row unit based on the row address assigned to each of the at least one cell. Save as.
이때, 상기 적어도 하나의 셀에 대한 정보는 상기 적어도 하나의 셀에 삽입되어 있는 데이터와 상기 적어도 하나의 셀 각각에 할당되어 있는 열 주소를 포함하고, 상기 목록은 상기 적어도 하나의 셀에 대한 정보가 그룹화되어 있는 각 행 주소에 대한 정보를 포함한다.In this case, the information on the at least one cell includes data inserted into the at least one cell and a column address assigned to each of the at least one cell, and the list includes information on the at least one cell. Contains information about each grouped row address.
관련해서, 셀 데이터베이스(111)는 도 2에 도시된 그림과 같은 목록을 저장하고 있을 수 있다.In this regard, the cell database 111 may store a list as shown in FIG. 2.
예컨대, 상기 스프레드시트를 구성하는 복수의 셀들에 도 3에 도시되어 있는 그림과 같이 데이터가 삽입되어 있다고 가정하는 경우, 셀 데이터베이스(111)에는 도 2에 도시된 바와 같이, 데이터가 삽입되어 있는 셀들의 열 주소와 데이터를 정보로 포함하고 있는 셀에 대한 정보를 동일한 행 단위로 그룹화하고 있는 목록이 저장되어 있을 수 있다.For example, in the case where data is inserted into a plurality of cells constituting the spreadsheet as shown in FIG. 3, a cell into which data is inserted is inserted into the cell database 111 as shown in FIG. 2. A list of grouping information about cells including column addresses and data as information may be stored in the same row unit.
관련해서, 도 3에 도시된 바와 같이, 상기 스프레드시트를 구성하는 복수의 셀들 중 "1행, A열"에 데이터 "a"가 삽입되어 있고, "1행, B열"에 데이터 "1"이 삽입되어 있으며, "1행, C열"에 데이터 "2"가 삽입되어 있고, "1행, D열"에 데이터 "3"이 삽입되어 있는 경우, 셀 데이터베이스(111)에 저장되어 있는 상기 목록에는 도 2에 도시된 바와 같이, "row: 1"(210)이라고 하는 행 주소에 대해서 "data: a, column: A"(221)라고 하는 셀에 대한 정보, "data: 1, column: B"(222)라고 하는 셀에 대한 정보, "data: 2, column: C"(223)라고 하는 셀에 대한 정보 및 "data: 3, column: D"(224)라고 하는 셀에 대한 정보가 동일한 그룹으로 그룹화되어 있을 수 있다.3, data "a" is inserted in "1 row, column A" of the plurality of cells constituting the spreadsheet, and data "1" in "1 row, column B". Is inserted, data "2" is inserted in "row 1, column C", and data "3" is inserted in "row 1, column D", and is stored in the cell database 111. In the list, as shown in FIG. 2, information about a cell called "data: a, column: A" 221 for a row address called "row: 1" 210, and "data: 1, column: Information about a cell called B "222, information about a cell called" data: 2, column: C "223, and information about a cell called" data: 3, column: D "224 It may be grouped into the same group.
이때, 상기 목록은 도 2에 도시된 행 주소인 "row: 1", "row: 2", "row: 3", "row: 4"와 같은 각 그룹의 행 주소에 대한 정보를 포함하고 있을 수 있다.In this case, the list may include information about the row addresses of each group such as "row: 1", "row: 2", "row: 3", and "row: 4", which are the row addresses shown in FIG. Can be.
스프레드시트 데이터 전송부(112)는 사용자가 클라이언트 단말(130)을 이용해서 인터넷을 통해 웹 기반의 스프레드시트 서비스 제공 장치(110)에 접속한 후 상기 스프레드시트에 대한 오픈 명령을 인가함에 따라, 클라이언트 단말(130)로부터 상기 스프레드시트에 대한 오픈 명령이 수신되면, 셀 데이터베이스(111)로부터 상기 목록에 대한 데이터를 추출하여 클라이언트 단말(130)에 대해 상기 목록에 대한 데이터를 전송한다.The spreadsheet data transmitting unit 112 accesses the web-based spreadsheet service providing apparatus 110 through the Internet using the client terminal 130 and then authorizes an open command for the spreadsheet. When the open command for the spreadsheet is received from the terminal 130, the data about the list is extracted from the cell database 111 and the data about the list is transmitted to the client terminal 130.
이때, 클라이언트 단말(130)은 웹 기반의 스프레드시트 서비스 제공 장치(110)로부터 상기 목록에 대한 데이터가 수신되면, 클라이언트 단말(130)의 브라우저를 통해 상기 목록 상에서 그룹화되어 있는 상기 적어도 하나의 셀에 대한 행 주소를 확인하고, 상기 목록 상에 포함되어 있는 상기 적어도 하나의 셀에 대한 정보로부터 상기 적어도 하나의 셀 각각에 할당되어 있는 열 주소와 상기 적어도 하나의 셀 각각에 삽입되어 있는 데이터를 추출한 후 상기 확인된 행 주소와 상기 추출된 열 주소 및 상기 추출된 데이터를 기초로 상기 스프레드시트를 구성하는 복수의 셀들을 렌더링하여 화면 상에 표시할 수 있다.In this case, when the data regarding the list is received from the web-based spreadsheet service providing apparatus 110, the client terminal 130 may access the at least one cell grouped on the list through a browser of the client terminal 130. Check a row address of the row address and extract a column address assigned to each of the at least one cell and data inserted into each of the at least one cell from information on the at least one cell included in the list, and A plurality of cells constituting the spreadsheet may be rendered and displayed on the screen based on the identified row address, the extracted column address, and the extracted data.
관련해서, 클라이언트 단말(130)에는 웹 기반의 스프레드시트 서비스 제공 장치(110)로부터 도 2의 도시된 도면과 같은 상기 목록에 대한 데이터가 수신되었을 때, 브라우저를 통해서 도 3에 도시된 형태의 스프레드시트를 구성하는 복수의 셀들을 렌더링하여 화면 상에 표시하기 위해서, 브라우저 상에 스프레드시트를 렌더링하기 위한 스크립트(Script)가 설치되어 있을 수 있다. 예컨대, 클라이언트 단말(130)의 브라우저에는 상기 스프레드시트를 렌더링하기 위한 명령어들로 구성된 자바스크립트(JavaScript)가 설치되어 있을 수 있다.In relation to this, when the client terminal 130 receives data on the list as shown in FIG. 2 from the web-based spreadsheet service providing apparatus 110, the spread in the form shown in FIG. In order to render and display a plurality of cells constituting the sheet on the screen, a script for rendering a spreadsheet on a browser may be installed. For example, a browser of the client terminal 130 may be installed with JavaScript configured with instructions for rendering the spreadsheet.
이때, 클라이언트 단말(130)은 웹 기반의 스프레드시트 서비스 제공 장치(110)로부터 도 2의 도시된 도면과 같은 상기 목록에 대한 데이터가 수신되면, 브라우저를 통해 도 3에 도시된 형태의 스프레드시트를 구성하는 복수의 셀들을 렌더링해서 화면 상에 표시할 수 있는데, 보다 상세하게는 브라우저에 설치되어 있는 스크립트의 각 명령어를 실행해서, 상기 목록 상에서 그룹화되어 있는 상기 적어도 하나의 셀에 대한 행 주소를 확인하고, 상기 목록 상에 포함되어 있는 상기 적어도 하나의 셀에 대한 정보로부터 상기 적어도 하나의 셀 각각에 할당되어 있는 열 주소와 상기 적어도 하나의 셀 각각에 삽입되어 있는 데이터를 추출한 후 상기 확인된 행 주소와 상기 추출된 열 주소 및 상기 추출된 데이터를 기초로 도 3에 도시된 바와 같은 상기 스프레드시트를 구성하는 복수의 셀들을 렌더링하여 화면 상에 표시할 수 있다.In this case, when the client terminal 130 receives data on the list as shown in FIG. 2 from the web-based spreadsheet service providing apparatus 110, the client terminal 130 may download the spreadsheet of the form shown in FIG. 3 through a browser. A plurality of constituting cells can be rendered and displayed on a screen. More specifically, each command of a script installed in a browser is executed to check a row address of the at least one cell grouped on the list. And extracting a column address allocated to each of the at least one cell and data inserted into each of the at least one cell from information about the at least one cell included in the list, and then checking the identified row address. And the spread as shown in FIG. 3 based on the extracted column address and the extracted data. A plurality of cells constituting the chart may be rendered and displayed on the screen.
이때, 클라이언트 단말(130)은 상기 브라우저에 설치되어 있는 스크립트의 각 명령어를 실행하여 상기 스프레드시트를 구성하는 복수의 셀들을 HTML(Hypertext Markup Language)이나 XML(eXtensible Markup Language) 등과 같은 마크업 언어(Markup Language) 기반의 문서로 렌더링해서 화면 상에 표시할 수 있다.In this case, the client terminal 130 executes each command of the script installed in the browser to mark a plurality of cells constituting the spreadsheet with a markup language such as HTML (Hypertext Markup Language) or XML (eXtensible Markup Language). Markup Language) can be rendered and displayed on the screen.
즉, 본 발명은 웹 기반의 스프레드시트 서비스 제공 장치(110)가 셀 데이터베이스(111) 상에 도 2에 도시된 그림과 같이, 스프레드시트를 구성하는 복수의 셀들 중 데이터가 삽입되어 있는 적어도 하나의 셀에 대한 정보를 상기 적어도 하나의 셀 각각에 할당되어 있는 행 주소를 기초로 동일한 행 단위로 그룹화하여 목록으로 저장하고 있다가, 클라이언트 단말(130)로부터 상기 스프레드시트에 대한 오픈 명령이 수신되면, 셀 데이터베이스(111)로부터 상기 목록에 대한 데이터를 추출하여 클라이언트 단말(130)로 전송한 후 클라이언트 단말(130)이 상기 목록에 대한 데이터를 기초로 브라우저를 통해 상기 목록 상에 포함되어 있는 상기 적어도 하나의 셀에 대한 정보로부터 상기 적어도 하나의 셀 각각에 할당되어 있는 열 주소와 상기 적어도 하나의 셀 각각에 삽입되어 있는 데이터를 추출하도록 하고, 그 후 클라이언트 단말(130)이 상기 확인된 행 주소와 상기 추출된 열 주소 및 상기 추출된 데이터를 기초로 도 3에 도시된 그림과 같은 상기 스프레드시트를 구성하는 복수의 셀들을 렌더링하여 화면 상에 표시하도록 함으로써, 사용자가 웹 기반으로 클라이언트 단말(130)을 통해 스프레드시트를 열람할 수 있도록 지원할 수 있다.That is, according to the present invention, the web-based spreadsheet service providing apparatus 110 includes at least one of a plurality of cells constituting the spreadsheet inserted therein as shown in FIG. 2 on the cell database 111. When the information about the cell is grouped and stored in a list based on the row address assigned to each of the at least one cell, and the open command for the spreadsheet is received from the client terminal 130, The data of the list is extracted from the cell database 111 and transmitted to the client terminal 130 and the client terminal 130 is included on the list through the browser based on the data for the list. A column address assigned to each of the at least one cell from information on a cell of the at least one cell, respectively Extract the inserted data, and then the client terminal 130 constructs the spreadsheet as shown in FIG. 3 based on the identified row address, the extracted column address, and the extracted data. By rendering a plurality of cells to be displayed on the screen, it is possible to support the user to view the spreadsheet through the client terminal 130 on the web.
본 발명의 일실시예에 따르면, 웹 기반의 스프레드시트 서비스 제공 장치(110)는 편집 정보 수신부(113) 및 업데이트부(114)를 더 포함할 수 있다.According to an embodiment of the present invention, the web-based spreadsheet service providing apparatus 110 may further include an edit information receiver 113 and an updater 114.
편집 정보 수신부(113)는 사용자가 클라이언트 단말(130)에서 상기 브라우저를 통해 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중 상기 적어도 하나의 셀에 삽입되어 있는 데이터에 대해 수정을 수행함으로써, 상기 적어도 하나의 셀에 삽입되어 있는 데이터에 대한 수정이 발생하면, 클라이언트 단말(130)로부터, 데이터 수정이 발생한 셀의 행 주소와 열 주소 및 데이터 수정이 발생한 셀에서의 변경된 데이터가 포함된 수정 편집 정보를 수신한다.The editing information receiving unit 113 corrects data inserted into the at least one cell among a plurality of cells constituting the spreadsheet displayed by the user on the client terminal 130, thereby allowing the user to modify the data. When the modification to the data inserted in the at least one cell occurs, the client terminal 130, the modification edit information including the row address and column address of the cell where the data modification occurred, and the changed data in the cell where the data modification occurred Receive
그리고, 업데이트부(114)는 상기 수신된 수정 편집 정보에 기초하여 셀 데이터베이스(111)에 저장되어 있는 상기 목록 상에 포함되어 있는 상기 적어도 하나의 셀에 대한 정보를 업데이트한다.The updater 114 updates the information on the at least one cell included in the list stored in the cell database 111 based on the received correction edit information.
예컨대, 도 4의 도면부호 410에 도시된 바와 같이, 클라이언트 단말(130)에서 상기 브라우저를 통해 상기 스프레드시트를 구성하는 복수의 셀들이 표시되고 있는 상황에서 사용자가 클라이언트 단말(130)에 연결된 키보드 등의 입력 장치를 통해 "1행, C열"에 삽입되어 있는 데이터 "2"(411)를 도면부호 420에 도시된 바와 같이 "4"(421)로 수정한 경우, 클라이언트 단말(130)은 데이터 수정이 발생한 셀인 "1행, C열"의 행 주소인 "1행"과 열 주소인 "C열" 및 데이터 수정이 발생한 셀에서의 변경된 데이터인 "4"를 포함하는 수정 편집 정보를 생성하여 웹 기반의 스프레드시트 서비스 제공 장치(110)로 전송할 수 있다.For example, as shown by reference numeral 410 of FIG. 4, in a situation where a plurality of cells constituting the spreadsheet is displayed on the client terminal 130 through the browser, a user keyboard or the like is connected to the client terminal 130. When the data " 2 " 411 inserted into " 1 row, column C " through the input device of " 4 " 421 is modified as shown at 420, the client terminal 130 returns data. Create a correction edit information including "row 1" of the row address of "1 row, column C", which is the cell where the correction occurred, "column C" of the column address, and "4" which is changed data in the cell where the data modification occurred. It may be transmitted to the web-based spreadsheet service providing apparatus 110.
이때, 편집 정보 수신부(113)는 클라이언트 단말(130)로부터 상기 수정 편집 정보를 수신할 수 있고, 업데이트부(114)는 상기 수신된 수정 편집 정보에 기초하여 셀 데이터베이스(111)에 저장되어 있는 상기 목록 상에 포함되어 있는 상기 적어도 하나의 셀에 대한 정보를 업데이트할 수 있다.In this case, the edit information receiver 113 may receive the correction edit information from the client terminal 130, and the update unit 114 is stored in the cell database 111 based on the received correction edit information. The information on the at least one cell included in the list may be updated.
즉, 업데이트부(114)는 도 2에 도시된 목록 상에서 1행에 그룹화되어 있는 "row: 1"(210)에서 C열에 해당하는 셀의 정보인 "data: 2, column: C"(223)를 "data: 4, column: C"로 변경함으로써, 상기 목록 상에 포함되어 있는 상기 적어도 하나의 셀에 대한 정보를 업데이트할 수 있다.That is, the update unit 114 is "data: 2, column: C" 223 which is information of a cell corresponding to column C in "row: 1" 210 grouped in one row on the list shown in FIG. By changing to "data: 4, column: C", it is possible to update the information on the at least one cell included in the list.
이때, 본 발명의 일실시예에 따르면, 웹 기반의 스프레드시트 서비스 제공 장치(110)는 함수 정보 데이터베이스(115)를 더 포함할 수 있다.In this case, according to an embodiment of the present invention, the web-based spreadsheet service providing apparatus 110 may further include a function information database 115.
함수 정보 데이터베이스(115)에는 상기 적어도 하나의 셀 중 제1 셀에 함수가 삽입되어 있는 경우, 상기 함수에 대한 정보와 상기 함수에서 입력 값으로 참조되는 적어도 하나의 제1 입력 셀(여기서, 상기 적어도 하나의 제1 입력 셀은 상기 적어도 하나의 셀에 포함되는 셀임)의 행 주소 및 열 주소에 대한 정보가 서로 대응되어 저장되어 있다.In the function information database 115, when a function is inserted in a first cell of the at least one cell, at least one first input cell referred to as information about the function and an input value in the function (wherein the at least One first input cell is a cell included in the at least one cell, and information about a row address and a column address are stored in correspondence with each other.
예컨대, 도 4의 도면부호 410에 도시된 그림과 같이, 상기 스프레드시트를 구성하는 복수의 셀들에 데이터가 입력되어 있으면서, "4행, C열"에 해당되는 셀에 삽입되어 있는 데이터가 단순 숫자 "14"(412)가 아니라, "SUM(C1, C2, C3)"와 같이, "1행, C열", "2행, C열", "3행, C열"에 삽입되어 있는 데이터들의 합계를 연산하도록 지정된 함수인 경우, 함수 정보 데이터베이스(115)에는 상기 제1 셀에 해당하는 "4행, C열"에 삽입되어 있는 함수인 "SUM(C1, C2, C3)"에 대한 정보와 상기 함수에서 입력 값으로 참조되는 적어도 하나의 제1 입력 셀인 "1행, C열", "2행, C열", "3행, C열"의 주소에 대한 정보가 서로 대응되어 저장되어 있을 수 있다.For example, as illustrated in 410 of FIG. 4, while data is input to a plurality of cells constituting the spreadsheet, data inserted into a cell corresponding to “4 rows and C columns” is a simple number. Data inserted in "1 row, column C", "row 2, column C," "row 3, column C", as in "SUM (C1, C2, C3)" rather than "14" (412). In the case where the function is designated to calculate the sum of the sums, the function information database 115 includes information about "SUM (C1, C2, C3)" which is a function inserted in the "four rows and the C columns" corresponding to the first cell. And information about addresses of at least one first input cell, "1 row, C column", "2 row, C column", "3 row, C column", which are referred to as input values in the function, are stored in correspondence with each other. There may be.
이때, 도 4의 도면부호 410에서 "4행, C열"에 해당되는 셀에 삽입되는 데이터는 "1행, C열", "2행, C열", "3행, C열"에 삽입되어 있는 데이터들의 합계이기 때문에 결론적으로 "14"(412)가 된다.At this time, the data inserted into the cell corresponding to "4 rows, C columns" in 410 of Figure 4 is inserted into "1 row, C columns", "2 rows, C columns", "3 rows, C columns" The result is "14" (412) as it is the sum of the data.
이때, 업데이트부(114)는 편집 판단부(116), 함수 연산 수행부(117) 및 데이터 변경부(118)를 포함할 수 있다.In this case, the updater 114 may include an edit determiner 116, a function operation performer 117, and a data changer 118.
편집 판단부(116)는 클라이언트 단말(130)로부터 상기 수정 편집 정보가 수신되면, 함수 정보 데이터베이스(115)에 저장되어 있는 상기 적어도 하나의 제1 입력 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 수신된 수정 편집 정보에 따른 데이터의 수정이 상기 적어도 하나의 제1 입력 셀에서 발생하였는지 여부를 판단한다.When the edited edit information is received from the client terminal 130, the edit determiner 116 refers to information on the row address and column address of the at least one first input cell stored in the function information database 115. It is determined whether modification of data according to the received correction edit information has occurred in the at least one first input cell.
함수 연산 수행부(117)는 상기 수신된 수정 편집 정보에 따른 데이터의 수정이 상기 적어도 하나의 제1 입력 셀에서 발생한 것으로 판단되면, 함수 정보 데이터베이스(115)에 저장되어 있는 상기 함수에 대한 정보를 참조하여 상기 수신된 수정 편집 정보에 따른 상기 적어도 하나의 제1 입력 셀의 변경 데이터를 기초로 함수 연산을 수행함으로써, 제1 출력 값을 생성한다.If it is determined that the modification of the data according to the received correction edit information has occurred in the at least one first input cell, the function operation performing unit 117 may determine information about the function stored in the function information database 115. A first output value is generated by performing a function operation based on the change data of the at least one first input cell according to the received correction edit information.
데이터 변경부(118)는 상기 제1 출력 값을 기초로 상기 목록 상에서 상기 제1 셀에 삽입되어 있는 데이터를 상기 제1 출력 값으로 변경한다.The data changer 118 changes the data inserted in the first cell on the list into the first output value based on the first output value.
예컨대, 도 4의 도면부호 410에 도시된 바와 같이, 클라이언트 단말(130)에서 상기 브라우저를 통해 상기 스프레드시트를 구성하는 복수의 셀들이 표시되고 있는 상황에서 사용자가 클라이언트 단말(130)에 연결된 키보드 등의 입력 장치를 통해 "1행, C열"에 삽입되어 있는 데이터 "2"(411)를 도면부호 420에 도시된 바와 같이 "4"(421)로 수정함에 따라 클라이언트 단말(130)로부터 "1행, C열"에 해당되는 셀의 데이터를 "2"(411)에서 "4"(421)로 변경하도록 하는 수정 편집 정보가 웹 기반의 스프레드시트 서비스 제공 장치(110)에 수신되면, 편집 판단부(116)는 함수 정보 데이터베이스(115)에 저장되어 있는 상기 적어도 하나의 제1 입력 셀의 주소인 "1행, C열", "2행, C열", "3행, C열"에 대한 정보를 참조하여 상기 수신된 수정 편집 정보에 따른 데이터의 수정이 상기 적어도 하나의 제1 입력 셀인 "1행, C열", "2행, C열", "3행, C열"에서 발생하였는지 여부를 판단할 수 있다.For example, as shown by reference numeral 410 of FIG. 4, in a situation where a plurality of cells constituting the spreadsheet is displayed on the client terminal 130 through the browser, a user keyboard or the like is connected to the client terminal 130. The data " 2 "411 inserted into " 1 row, column C " through the input device of " 1 " When the edit data is received by the web-based spreadsheet service providing apparatus 110 for changing the data of the cell corresponding to the "row, column C" from "2" 411 to "4" 421, the editing judgment is made. The unit 116 is provided with the addresses of the at least one first input cell stored in the function information database 115 in the " 1 row, C column ", " 2 row, C column " The correction of the data according to the received correction edit information with reference to the information on the at least Of the first input cell, "first rows, columns C", "the second row, column C", it can be determined whether or not generated in the "three-row, column C".
그리고, 함수 연산 수행부(117)는 상기 수신된 수정 편집 정보에 따른 데이터의 수정이 상기 적어도 하나의 제1 입력 셀인 "1행, C열", "2행, C열", "3행, C열" 중에서 "1행, C열"에서 발생하였기 때문에 함수 정보 데이터베이스(115)에 저장되어 있는 함수인 "SUM(C1, C2, C3)"에 대한 정보를 참조하여 상기 수신된 수정 편집 정보에 따른 상기 적어도 하나의 제1 입력 셀의 변경 데이터를 기초로 함수 연산을 수행함으로써, 제1 출력 값인 "16"을 생성할 수 있다.In addition, the function operation performing unit 117 may modify the data according to the received correction edit information such that the at least one first input cell is “1 row, C column”, “2 rows, C columns”, “3 rows, Column C "in the" Column 1, Column C ", and refers to the information on the function" SUM (C1, C2, C3) "stored in the function information database 115, The first output value "16" may be generated by performing a function operation based on the change data of the at least one first input cell.
그러고 나서, 데이터 변경부(118)는 상기 제1 출력 값인 "16"을 기초로 도 2에 도시된 그림과 같은 상기 목록 상에서 상기 함수인 "SUM(C1, C2, C3)"이 삽입되어 있는 "4행, C열"에 해당되는 상기 제1 셀에 대한 정보인 "data: 14, column: C"(225)를 "data: 16, column: C"로 변경할 수 있다.Then, the data changing unit 118 has " SUM (C1, C2, C3) " inserted in the list as shown in Fig. 2 based on the first output value " 16 " "Data: 14, column: C" 225 which is information about the first cell corresponding to "row 4, column C" may be changed to "data: 16, column: C".
이때, 본 발명의 일실시예에 따르면, 스프레드시트 데이터 전송부(112)는 갱신 데이터 전송부(119)를 더 포함할 수 있다.At this time, according to an embodiment of the present invention, the spreadsheet data transmitter 112 may further include an update data transmitter 119.
갱신 데이터 전송부(119)는 상기 제1 셀에 삽입되어 있는 데이터가 상기 제1 출력 값으로 변경된 경우, 상기 제1 셀의 행 주소 및 열 주소에 대한 정보와 상기 제1 출력 값을 클라이언트 단말(130)로 전송함과 동시에 상기 제1 셀에 대한 데이터 갱신 명령을 클라이언트 단말(130)로 전송한다.When the data inserted in the first cell is changed to the first output value, the update data transmitter 119 may transmit information about the row address and the column address of the first cell and the first output value to the client terminal. At the same time, the data update command for the first cell is transmitted to the client terminal 130.
이때, 클라이언트 단말(130)은 상기 제1 셀의 행 주소 및 열 주소에 대한 정보와 상기 제1 출력 값 및 상기 제1 셀에 대한 데이터 갱신 명령이 수신되면, 상기 제1 셀에 대한 데이터 갱신 명령에 따라, 상기 제1 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 브라우저를 통해 상기 화면 상에 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중 상기 제1 셀에 삽입되어 있는 데이터를 상기 제1 출력 값으로 변경할 수 있다.In this case, when the client terminal 130 receives the information on the row address and the column address of the first cell, the first output value and the data update command for the first cell, the client terminal 130 receives a data update command for the first cell. According to the information on the row address and column address of the first cell, the data inserted in the first cell of the plurality of cells constituting the spreadsheet displayed on the screen through the browser Can be changed to the first output value.
관련해서, 앞서 설명한 예를 이용하여 갱신 데이터 전송부(119)의 동작을 보다 상세하게 설명하면, 상기 제1 셀에 대한 정보인 "data: 14, column: C"(225)가 "data: 16, column: C"로 변경되면, 갱신 데이터 전송부(119)는 상기 제1 셀의 행 주소 및 열 주소에 대한 정보인 "4행, C열"과 상기 제1 출력 값인 "16"을 클라이언트 단말(130)로 전송함과 동시에 상기 제1 셀에 대한 데이터 갱신 명령을 클라이언트 단말(130)로 전송할 수 있다.In relation to this, the operation of the update data transmitter 119 will be described in more detail by using the example described above. In this case, the information “data: 14, column: C” 225 for the first cell is “data: 16”. , column: C ", the update data transmitter 119 transmits the information about the row address and the column address of the first cell to" four rows and columns C "and the first output value" 16 "to the client terminal. The data update command for the first cell may be transmitted to the client terminal 130 at the same time.
이때, 클라이언트 단말(130)은 상기 제1 셀의 행 주소 및 열 주소에 대한 정보와 상기 제1 출력 값 및 상기 제1 셀에 대한 데이터 갱신 명령이 수신되면, 상기 제1 셀에 대한 데이터 갱신 명령에 따라, 상기 제1 셀의 행 주소 및 열 주소에 대한 정보인 "4행, C열"을 참조하여 도 4의 도면부호 410의 그림 상에서 상기 브라우저를 통해 상기 화면 상에 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중 상기 제1 셀에 삽입되어 있는 데이터인 "14"(412)를 도 4의 도면부호 420에 도시된 바와 같이 상기 제1 출력 값인 "16"(422)으로 변경할 수 있다.In this case, when the client terminal 130 receives the information on the row address and the column address of the first cell, the first output value and the data update command for the first cell, the client terminal 130 receives a data update command for the first cell. The spreadsheet is displayed on the screen through the browser on the diagram 410 of FIG. 4 with reference to "row 4, column C", which is information on the row address and column address of the first cell. Of the plurality of cells constituting the data, " 14 " 412, which is data inserted into the first cell, can be changed to the first output value " 16 " 422, as shown at 420 in FIG. .
결국, 본 발명에 따른 웹 기반의 스프레드시트 서비스 제공 장치(110)는 스프레드시트의 특정 셀에 삽입되어 있는 함수와 해당 함수가 입력 값으로 참조하는 셀의 주소에 대한 정보를 저장한 함수 정보 데이터베이스(115)를 유지함으로써, 클라이언트 단말(130)에서 소정의 셀의 데이터가 변경되는 수정 편집이 발생하는 경우, 해당 셀의 데이터 변경 사항을 셀 데이터베이스(111)에 저장되어 있는 목록에 반영함과 동시에, 상기 데이터가 변경된 셀이 함수 정보 데이터베이스(115)에 저장되어 있는 함수에서 입력 값으로 참조되는 셀인 경우, 상기 변경된 데이터를 기초로 함수 연산을 수행하여 상기 함수가 삽입되어 있는 셀의 출력 값을 생성한 후 상기 출력 값을 클라이언트 단말(130)에 전송할 수 있고, 이때, 클라이언트 단말(130)은 클라이언트 단말(130)의 브라우저를 통해 표시되고 있는 화면 상에서 상기 함수가 삽입되어 있는 셀의 데이터를 상기 출력 값으로 변경할 수 있다.As a result, the web-based spreadsheet service providing apparatus 110 according to the present invention includes a function information database that stores information about a function inserted into a specific cell of a spreadsheet and a cell address referenced by the function as an input value. By holding 115, when the editing edit occurs in which data of a predetermined cell is changed in the client terminal 130, the data change of the corresponding cell is reflected in a list stored in the cell database 111, and When the cell whose data has been changed is a cell referred to as an input value by a function stored in the function information database 115, a function operation is performed based on the changed data to generate an output value of the cell into which the function is inserted. Afterwards, the output value may be transmitted to the client terminal 130. In this case, the client terminal 130 may be connected to the client terminal 130. It can change the data of the cell in which the function is inserted on the screen that is being displayed through the distributors in the output value.
이를 통해, 본 발명은 웹 기반의 스프레드시트 서비스에서 클라이언트 단말(130) 자체의 브라우저에 설치되어 있는 스크립트를 통해 구현하기 어려웠던 복잡한 함수 연산 기능도 정상적으로 제공할 수 있다.Through this, the present invention can normally provide a complicated function calculation function that was difficult to implement through a script installed in the browser of the client terminal 130 itself in the web-based spreadsheet service.
본 발명의 일실시예에 따르면, 편집 정보 수신부(113)는 클라이언트 단말(130)에서 상기 브라우저를 통해 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중에서, 상기 적어도 하나의 셀을 제외한 나머지 셀들 중 적어도 하나의 추가 셀에 대해 데이터 삽입이 발생하면, 클라이언트 단말(130)로부터, 상기 적어도 하나의 추가 셀의 행 주소와 열 주소 및 상기 적어도 하나의 추가 셀에 삽입된 데이터가 포함된 추가 편집 정보를 수신할 수 있다.According to an embodiment of the present invention, the editing information receiving unit 113 of the plurality of cells constituting the spreadsheet displayed on the client terminal 130 through the browser, among the remaining cells except for the at least one cell When data insertion occurs in at least one additional cell, additional editing information including the row address and column address of the at least one additional cell and data inserted into the at least one additional cell is obtained from the client terminal 130. Can be received.
이때, 업데이트부(114)는 상기 추가 편집 정보에 기초하여 상기 적어도 하나의 추가 셀에 대한 정보(여기서, 상기 적어도 하나의 추가 셀에 대한 정보는 상기 적어도 하나의 추가 셀에 삽입되어 있는 데이터와 상기 적어도 하나의 추가 셀 각각에 할당되어 있는 열 주소를 포함함)를 상기 적어도 하나의 추가 셀 각각에 할당되어 있는 행 주소를 기초로 동일한 행 단위로 그룹화하여 상기 목록 상에 추가할 수 있다.In this case, the updater 114 may include information on the at least one additional cell based on the additional edit information (wherein the information on the at least one additional cell is inserted into the at least one additional cell and the data). A column address assigned to each of the at least one additional cell) may be added to the list by grouping the same row unit based on the row address assigned to each of the at least one additional cell.
예컨대, 도 3에 도시된 바와 같이, 클라이언트 단말(130)에서 상기 브라우저를 통해 상기 스프레드시트를 구성하는 복수의 셀들이 표시되고 있는 상황에서 사용자가 클라이언트 단말(130)에 연결된 키보드 등의 입력 장치를 통해 도 5의 도면부호 510에 도시된 것처럼, "2행, E열"에 해당되는 추가 셀을 생성하여 "b"(511)라고 하는 데이터를 입력한 경우, 클라이언트 단말(130)은 상기 추가 셀인 "2행, E열"의 행 주소인 "2행"과 열 주소인 "E열" 및 해당 셀에 추가된 데이터인 "b"를 포함하는 추가 편집 정보를 생성하여 웹 기반의 스프레드시트 서비스 제공 장치(110)로 전송할 수 있다.For example, as shown in FIG. 3, in a situation where a plurality of cells constituting the spreadsheet are displayed on the client terminal 130 through the browser, a user may input an input device such as a keyboard connected to the client terminal 130. As shown by reference numeral 510 of FIG. 5, when an additional cell corresponding to “row 2, column E” is generated and data “b” 511 is input, the client terminal 130 is the additional cell. Provides web-based spreadsheet services by generating additional edit information that includes "row 2", row address of "row 2, column E", column "e", and "b" added data to the cell. Transmit to device 110.
이때, 편집 정보 수신부(113)는 클라이언트 단말(130)로부터 상기 추가 편집 정보를 수신할 수 있고, 업데이트부(114)는 상기 추가 편집 정보에 기초하여 도 6에 도시된 바와 같이, "data: b, column: E"(611)라고 하는 추가 셀에 대한 정보를 해당 추가 셀에 할당되어 있는 행 주소인 "2행"에 그룹화시켜 상기 목록 상에 추가할 수 있다.In this case, the edit information receiver 113 may receive the additional edit information from the client terminal 130, and the update unit 114 may display “data: b as shown in FIG. 6 based on the additional edit information. , column: E " 611 can be added to the list by grouping information on an additional cell, " row 2, " which is a row address assigned to the additional cell.
즉, 업데이트부(114)는 도 6에 도시된 바와 같이 상기 목록 상에서 2행에 그룹화되어 있는 "row: 2"에 대해 E열에 해당하는 셀의 정보인 "data: b, column: E"(611)를 추가할 수 있다.That is, as shown in FIG. 6, the updater 114 displays the data of the cell corresponding to the column E for "row: 2" grouped in two rows on the list as "data: b, column: E" 611. ) Can be added.
이때, 본 발명의 일실시예에 따르면, 상기 추가 편집 정보에는 상기 적어도 하나의 추가 셀 중 제1 추가 셀에 대해 삽입된 데이터가 함수인 경우, 상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 제1 추가 셀에 삽입된 함수에서 입력 값으로 참조되는 적어도 하나의 제2 입력 셀(여기서, 상기 적어도 하나의 제2 입력 셀은 상기 적어도 하나의 셀과 상기 적어도 하나의 추가 셀에 포함되는 셀임)의 행 주소 및 열 주소에 대한 정보가 포함되어 있을 수 있다.In this case, according to an embodiment of the present invention, when the data inserted into the first additional cell of the at least one additional cell is a function, the additional edit information includes information on the function inserted in the first additional cell; At least one second input cell referred to as an input value in the function inserted into the first additional cell, wherein the at least one second input cell is a cell included in the at least one cell and the at least one additional cell ) May contain information about row and column addresses.
이때, 업데이트부(114)는 상기 추가 편집 정보 상에 상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 적어도 하나의 제2 입력 셀의 행 주소 및 열 주소에 대한 정보가 포함되어 있는 것으로 확인되면, 상기 추가 편집 정보를 참조하여 함수 정보 데이터베이스(115)에 상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 적어도 하나의 제2 입력 셀의 행 주소 및 열 주소에 대한 정보를 서로 대응시켜 저장하는 함수 정보 업데이트부(120)를 더 포함할 수 있다.In this case, the updater 114 confirms that the information on the function inserted into the first additional cell and the row address and column address of the at least one second input cell are included in the additional edit information. If the information on the function inserted into the first additional cell and the row address and column address of the at least one second input cell are corresponded to each other in the function information database 115 with reference to the additional edit information, It may further include a function information update unit 120 to store.
그리고, 함수 연산 수행부(117)는 상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 적어도 하나의 제2 입력 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 적어도 하나의 제2 입력 셀에 삽입되어 있는 데이터를 기초로 함수 연산을 수행함으로써, 제2 출력 값을 생성할 수 있고, 데이터 변경부(118)는 상기 제2 출력 값을 기초로 상기 목록 상에, 상기 제1 추가 셀에 삽입되어야 하는 데이터를 상기 제2 출력 값으로 포함시킬 수 있다.The function operation performing unit 117 may refer to the at least one second input by referring to the information about the function inserted into the first additional cell and the information about the row address and the column address of the at least one second input cell. By performing a function operation based on the data inserted in the cell, a second output value may be generated, and the data changer 118 may be configured to display the first additional cell on the list based on the second output value. Data to be inserted into may be included as the second output value.
이때, 본 발명의 일실시예에 따르면, 갱신 데이터 전송부(119)는 상기 제2 출력 값의 생성이 완료되면, 상기 제1 추가 셀의 행 주소 및 열 주소에 대한 정보와 상기 제2 출력 값을 클라이언트 단말(130)로 전송함과 동시에 상기 제1 추가 셀에 대한 데이터 갱신 명령을 클라이언트 단말(130)로 전송할 수 있다.In this case, according to an embodiment of the present invention, when the generation of the second output value is completed, the update data transmitter 119 completes information on the row address and column address of the first additional cell and the second output value. And a data update command for the first additional cell may be transmitted to the client terminal 130 at the same time.
이때, 클라이언트 단말(130)은 상기 제1 추가 셀의 행 주소 및 열 주소에 대한 정보와 상기 제2 출력 값 및 상기 제1 추가 셀에 대한 데이터 갱신 명령이 수신되면, 상기 제1 추가 셀에 대한 데이터 갱신 명령에 따라, 상기 제1 추가 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 브라우저를 통해 상기 화면 상에 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중 상기 제1 추가 셀에 상기 제2 출력 값을 삽입할 수 있다.In this case, when the client terminal 130 receives the information about the row address and the column address of the first additional cell, the second output value, and the data update command for the first additional cell, the client terminal 130 may receive information about the first additional cell. According to a data update command, the first additional cell of the plurality of cells constituting the spreadsheet displayed on the screen through the browser by referring to the information on the row address and the column address of the first additional cell. The second output value may be inserted.
이하에서는 도 5를 참조하여, 업데이트부(114)와 갱신 데이터 전송부(119)에 대한 동작을 예를 들어 보다 상세히 설명하기로 한다.Hereinafter, operations of the updater 114 and the update data transmitter 119 will be described in more detail with reference to FIG. 5.
도 3에 도시된 그림과 같이, 클라이언트 단말(130)에서 상기 브라우저를 통해 상기 스프레드시트를 구성하는 복수의 셀들이 표시되고 있는 상황에서 사용자가 클라이언트 단말(130)에 연결된 키보드 등의 입력 장치를 통해 도 5의 도면부호 510에 도시된 것처럼, "2행, E열"에 해당되는 "추가 셀 1"을 생성하여 "b"(511)라고 하는 데이터를 입력하였고, 이와 동시에 "1행, E열"에 해당되는 "추가 셀 2"에 "=SUM(B1, C1, D1)"(512)이라고 하는 "1행 B열", "1행, C열", "1행, D열"에 삽입되어 있는 데이터의 합계를 연산하도록 하는 함수를 입력한 경우, 클라이언트 단말(130)은 상기 "추가 셀 1"의 행 주소인 "2행", 열 주소인 "E열" 및 해당 셀에 추가된 데이터인 "b"와, 상기 "추가 셀 2"의 행 주소인 "1행", 열 주소인 "E열", 해당 셀에 삽입된 함수인 "=SUM(B1, C1, D1)"에 대한 정보 및 상기 함수인 "=SUM(B1, C1, D1)"가 입력 값으로 참조하는 입력 셀인 "1행 B열", "1행, C열", "1행, D열"의 행 주소와 열 주소를 포함하는 추가 편집 정보를 생성하여 웹 기반의 스프레드시트 서비스 제공 장치(110)로 전송할 수 있다.As shown in FIG. 3, in a situation where a plurality of cells constituting the spreadsheet are displayed on the client terminal 130 through the browser, the user may access the client terminal through an input device such as a keyboard connected to the client terminal 130. As shown at 510 in FIG. 5, "Additional Cell 1" corresponding to "Line 2, Column E" is generated, and data called "b" 511 is input, and at the same time, "Line 1, Column E" Insert into "Additional Cell 2" corresponding to "Column 1, Row B, Column 1, Column C, Column 1, Column D" called "= SUM (B1, C1, D1)" (512) When inputting a function to calculate the sum of the data, the client terminal 130 adds the row address "row 2" of the "additional cell 1", the column address "column E" and the data added to the corresponding cell. For "b", the row address "row 1" of the "additional cell 2", the column address "column E", and the information inserted into the corresponding cell "= SUM (B1, C1, D1)" And the function Contains the row addresses and column addresses of the "1 row B column", "1 row C column", "1 row D column" which are input cells that "= SUM (B1, C1, D1)" refers to as input values The additional edit information may be generated and transmitted to the web-based spreadsheet service providing apparatus 110.
이때, 편집 정보 수신부(113)는 클라이언트 단말(130)로부터 상기 추가 편집 정보를 수신할 수 있고, 업데이트부(114)는 상기 추가 편집 정보에 기초하여 도 6에 도시된 바와 같이, "data: b, column: E"(611)라고 하는 상기 "추가 셀 1"에 대한 정보를 상기 "추가 셀 1"에 할당되어 있는 행 주소인 "2행"에 그룹화시켜 상기 목록 상에 추가할 수 있고, "data 6, colunm: E"(612)라고 하는 상기 "추가 셀 2"에 대한 정보를 상기 "추가 셀 2"에 할당되어 있는 행 주소인 "1행"에 그룹화시켜 상기 목록 상에 추가할 수 있다. 이때, 상기 "추가 셀 2"에서 데이터 값은 "추가 셀 2"에 삽입되어 있는 함수에 기초하여 연산되어야 하기 때문에 상기 목록 상에 "추가 셀 2"에 대한 데이터인 "6"을 연산해서 포함시키기 위해, 업데이트부(114)는 데이터 "6"을 연산하기 위한 과정을 추가로 수행할 수 있다.In this case, the edit information receiver 113 may receive the additional edit information from the client terminal 130, and the update unit 114 may display “data: b as shown in FIG. 6 based on the additional edit information. column: E: 611 can be added to the list by grouping information about the " additional cell 1 " into " 2 rows " which is a row address assigned to the " additional cell 1 " data 6, colunm: E " 612 " can be added to the list by grouping information on the " additional cell 2 " to " row 1 " which is a row address assigned to the " additional cell 2 ". . In this case, since the data value in the "additional cell 2" needs to be calculated based on a function inserted in the "additional cell 2", the data for "additional cell 2" is calculated and included in the list. To this end, the update unit 114 may further perform a process for calculating the data "6".
관련해서, 함수 정보 업데이트부(120)는 상기 추가 편집 정보 상에 상기 "추가 셀 2"에 삽입된 함수인 "=SUM(B1, C1, D1)"에 대한 정보 및 상기 함수인 "=SUM(B1, C1, D1)"가 입력 값으로 참조하는 입력 셀인 "1행 B열", "1행, C열", "1행, D열"의 행 주소와 열 주소에 대한 정보가 포함되어 있으므로, 상기 추가 편집 정보를 참조하여 함수 정보 데이터베이스(115)에 상기 "추가 셀 2"에 삽입된 함수에 대한 정보와 "1행 B열", "1행, C열", "1행, D열"에 해당하는 셀의 행 주소 및 열 주소에 대한 정보를 서로 대응시켜 저장할 수 있다.In relation to this, the function information updating unit 120 provides information on "= SUM (B1, C1, D1)" which is a function inserted into the "additional cell 2" on the additional editing information and "= SUM (" B1, C1, D1) "contains the information about the row address and column address of the input cells" row 1 column B "," row 1 column C "," row 1 column, D "that are referred to as input values. Information about a function inserted into the "additional cell 2" into the function information database 115 with reference to the additional edit information, and " 1 row B column ", " 1 row B column C, " Information about the row address and column address of the cell corresponding to "may be stored in correspondence with each other.
그리고, 함수 연산 수행부(117)는 상기 "추가 셀 2"에 삽입된 함수에 대한 정보와 "1행 B열", "1행, C열", "1행, D열"에 해당하는 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 "1행 B열", "1행, C열", "1행, D열"에 해당하는 셀에 삽입되어 있는 데이터를 기초로 함수 연산을 수행함으로써, "6"이라는 출력 값을 생성할 수 있다.In addition, the function operation execution unit 117 is a cell corresponding to the information on the function inserted in the "additional cell 2" and "1 row B column", "1 row, C column", "1 row, D column". Performs a function operation based on the data inserted in the cell corresponding to "1 row B column", "1 row B column, C row", "1 row row D" by referring to the row address and column address of the By doing this, an output value of "6" can be generated.
이때, 데이터 변경부(118)는 상기 "6"이라는 출력 값을 기초로 상기 목록 상에서 상기 "추가 셀 2"에 삽입되어야 하는 데이터를 "6"으로 포함시킴으로써, 도 6에 도시된 바와 같이 최종적으로 "data: 6, column: E"(612)이라는 "추가 셀 2"에 대한 정보를 상기 "추가 셀 2"에 할당되어 있는 행 주소인 "1행"에 그룹화시켜 상기 목록 상에 추가할 수 있다.In this case, the data changing unit 118 includes data to be inserted into the "additional cell 2" on the list as "6" based on the output value of "6", thereby finally displaying as shown in FIG. Information about "additional cell 2" called "data: 6, column: E" 612 may be added to the list by grouping the information in "row 1" which is a row address assigned to the "additional cell 2". .
이때, 갱신 데이터 전송부(119)는 상기 "추가 셀 2"에 삽입되어야 하는 데이터 "6"의 연산이 완료되면, 상기 "추가 셀 2"의 행 주소 및 열 주소에 대한 정보와 "6"이라고 하는 출력 값을 클라이언트 단말(130)로 전송함과 동시에 상기 "추가 셀 2"에 대한 데이터 갱신 명령을 클라이언트 단말(130)로 전송할 수 있다.At this time, when the operation of the data "6" to be inserted into the "additional cell 2" is completed, the update data transmission unit 119 is called "6" and information about the row address and the column address of the "additional cell 2". A data update command for the "additional cell 2" may be transmitted to the client terminal 130 at the same time as the output value is transmitted to the client terminal 130.
이때, 클라이언트 단말(130)은 상기 "추가 셀 2"의 행 주소 및 열 주소에 대한 정보와 상기 출력 값 "6" 및 상기 "추가 셀 2"에 대한 데이터 갱신 명령이 수신되면, 상기 "추가 셀 2"에 대한 데이터 갱신 명령에 따라, 상기 "추가 셀 2"의 행 주소 및 열 주소에 대한 정보를 참조하여 도 5의 도면부호 520에 도시된 바와 같이 상기 브라우저를 통해 상기 화면 상에 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중 "추가 셀 2"에 "6"(521)이라는 출력 값을 삽입할 수 있다.At this time, the client terminal 130 receives the information on the row address and column address of the "additional cell 2" and the data update command for the output value "6" and the "additional cell 2", the "additional cell" According to the data update command for "2", the information on the row address and the column address of the "additional cell 2" is displayed on the screen through the browser as shown by reference numeral 520 of FIG. An output value of “6” 521 may be inserted into “additional cell 2” among a plurality of cells constituting the spreadsheet.
결국, 본 발명에 따른 웹 기반의 스프레드시트 서비스 제공 장치(110)는 클라이언트 단말(130)의 사용자가 스프레드시트 상에 새로운 셀을 생성하여 데이터를 추가한 경우, 클라이언트 단말(130)로부터 데이터 추가와 연관된 추가 편집 정보를 수신하여 셀 데이터베이스(111)에 저장되어 있는 목록 상에 반영하고, 사용자가 추가한 데이터가 소정의 함수인 경우, 함수 연산을 수행하여 연산된 결과 값을 상기 목록 상에 반영함과 동시에 클라이언트 단말(130)에 대해 상기 결과 값을 전송함으로써, 클라이언트 단말(130)에서도 사용자가 추가한 함수에 대응하는 출력 값이 표시되도록 지원할 수 있다.As a result, the web-based spreadsheet service providing apparatus 110 according to the present invention adds data from the client terminal 130 when the user of the client terminal 130 adds data by creating a new cell on the spreadsheet. Receives the additional edit information associated with it and reflects it on the list stored in the cell database 111, and when the data added by the user is a predetermined function, a function operation is performed to reflect the calculated result value on the list. At the same time, by transmitting the result value to the client terminal 130, the client terminal 130 can support to display the output value corresponding to the function added by the user.
도 7은 본 발명의 일실시예에 따른 웹 기반의 스프레드시트 서비스 제공 방법을 도시한 순서도이다.7 is a flowchart illustrating a web-based spreadsheet service providing method according to an embodiment of the present invention.
단계(S710)에서는 스프레드시트를 구성하는 복수의 셀들 중 데이터가 삽입되어 있는 적어도 하나의 셀에 대한 정보(여기서, 상기 적어도 하나의 셀에 대한 정보는 상기 적어도 하나의 셀에 삽입되어 있는 데이터와 상기 적어도 하나의 셀 각각에 할당되어 있는 열 주소를 포함함)를 상기 적어도 하나의 셀 각각에 할당되어 있는 행 주소를 기초로 동일한 행 단위로 그룹화하여 목록(여기서, 상기 목록은 상기 적어도 하나의 셀에 대한 정보가 그룹화되어 있는 각 행 주소에 대한 정보를 포함함)으로 저장하고 있는 셀 데이터베이스를 유지한다.In operation S710, information on at least one cell in which data is inserted among the plurality of cells constituting the spreadsheet (wherein the information on the at least one cell includes data inserted in the at least one cell and the A list (including the column address assigned to each of the at least one cell) in the same row unit based on the row address assigned to each of the at least one cell, wherein the list is assigned to the at least one cell. Maintain a cell database that contains information about each row address grouped together).
단계(S720)에서는 클라이언트 단말로부터 상기 스프레드시트에 대한 오픈 명령이 수신되면, 상기 셀 데이터베이스로부터 상기 목록에 대한 데이터를 추출하여 상기 클라이언트 단말에 대해 상기 목록에 대한 데이터를 전송한다.In operation S720, when an open command for the spreadsheet is received from a client terminal, data about the list is extracted from the cell database, and data about the list is transmitted to the client terminal.
이때, 상기 클라이언트 단말은 상기 목록에 대한 데이터가 수신되면, 상기 클라이언트 단말의 브라우저를 통해 상기 목록 상에서 그룹화되어 있는 상기 적어도 하나의 셀에 대한 행 주소를 확인하고, 상기 목록 상에 포함되어 있는 상기 적어도 하나의 셀에 대한 정보로부터 상기 적어도 하나의 셀 각각에 할당되어 있는 열 주소와 상기 적어도 하나의 셀 각각에 삽입되어 있는 데이터를 추출한 후 상기 확인된 행 주소와 상기 추출된 열 주소 및 상기 추출된 데이터를 기초로 상기 스프레드시트를 구성하는 복수의 셀들을 렌더링하여 화면 상에 표시한다.In this case, when the data about the list is received, the client terminal confirms a row address of the at least one cell grouped on the list through a browser of the client terminal, and the at least one included in the list. Extracts the column address assigned to each of the at least one cell and the data inserted into each of the at least one cell from information about one cell, and then the identified row address, the extracted column address, and the extracted data. Based on the plurality of cells constituting the spreadsheet is rendered and displayed on the screen.
이때, 본 발명의 일실시예에 따르면, 상기 웹 기반의 스프레드시트 서비스 제공 방법은 상기 클라이언트 단말에서 상기 브라우저를 통해 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중 상기 적어도 하나의 셀에 삽입되어 있는 데이터에 대한 수정이 발생하면, 상기 클라이언트 단말로부터, 데이터 수정이 발생한 셀의 행 주소와 열 주소 및 데이터 수정이 발생한 셀에서의 변경된 데이터가 포함된 수정 편집 정보를 수신하는 단계 및 상기 수신된 수정 편집 정보에 기초하여 상기 셀 데이터베이스에 저장되어 있는 상기 목록 상에 포함되어 있는 상기 적어도 하나의 셀에 대한 정보를 업데이트하는 단계를 더 포함할 수 있다.In this case, according to an embodiment of the present invention, the web-based spreadsheet service providing method is inserted into the at least one cell of the plurality of cells constituting the spreadsheet displayed on the client terminal through the browser Receiving modification data including the row address and column address of the cell in which the data modification has occurred and the changed data in the cell in which the data modification has occurred, when the modification to the existing data occurs, and the received correction. The method may further include updating information on the at least one cell included in the list stored in the cell database based on the edit information.
이때, 본 발명의 일실시예에 따르면, 상기 웹 기반의 스프레드시트 서비스 제공 방법은 상기 적어도 하나의 셀 중 제1 셀에 함수가 삽입되어 있는 경우, 상기 함수에 대한 정보와 상기 함수에서 입력 값으로 참조되는 적어도 하나의 제1 입력 셀(여기서, 상기 적어도 하나의 제1 입력 셀은 상기 적어도 하나의 셀에 포함되는 셀임)의 행 주소 및 열 주소에 대한 정보가 서로 대응되어 저장되어 있는 함수 정보 데이터베이스를 유지하는 단계를 더 포함할 수 있다.In this case, according to an embodiment of the present invention, in the web-based spreadsheet service providing method, when a function is inserted into a first cell of the at least one cell, information about the function and an input value from the function may be used. A function information database in which information about a row address and a column address of at least one first input cell referred to here, wherein the at least one first input cell is a cell included in the at least one cell, is stored in correspondence with each other It may further comprise the step of maintaining.
이때, 상기 업데이트하는 단계는 상기 클라이언트 단말로부터 상기 수정 편집 정보가 수신되면, 상기 함수 정보 데이터베이스에 저장되어 있는 상기 적어도 하나의 제1 입력 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 수신된 수정 편집 정보에 따른 데이터의 수정이 상기 적어도 하나의 제1 입력 셀에서 발생하였는지 여부를 판단하는 단계, 상기 수신된 수정 편집 정보에 따른 데이터의 수정이 상기 적어도 하나의 제1 입력 셀에서 발생한 것으로 판단되면, 상기 함수 정보 데이터베이스에 저장되어 있는 상기 함수에 대한 정보를 참조하여 상기 수신된 수정 편집 정보에 따른 상기 적어도 하나의 제1 입력 셀의 변경 데이터를 기초로 함수 연산을 수행함으로써, 제1 출력 값을 생성하는 단계 및 상기 제1 출력 값을 기초로 상기 목록 상에서 상기 제1 셀에 삽입되어 있는 데이터를 상기 제1 출력 값으로 변경하는 단계를 포함할 수 있다.In this case, in the updating step, when the modified edit information is received from the client terminal, the received edited information is referred to by referring to the information about the row address and the column address of the at least one first input cell stored in the function information database. Determining whether modification of data according to correction editing information occurred in the at least one first input cell, determining that modification of data according to the received correction editing information occurs in the at least one first input cell And a first output value by performing a function operation based on the change data of the at least one first input cell according to the received modified edit information by referring to the information on the function stored in the function information database. Generating an on the list based on the first output value; And changing the data inserted into the first cell to the first output value.
이때, 본 발명의 일실시예에 따르면, 상기 웹 기반의 스프레드시트 서비스 제공 방법은 상기 제1 셀에 삽입되어 있는 데이터가 상기 제1 출력 값으로 변경된 경우, 상기 제1 셀의 행 주소 및 열 주소에 대한 정보와 상기 제1 출력 값을 상기 클라이언트 단말로 전송함과 동시에 상기 제1 셀에 대한 데이터 갱신 명령을 상기 클라이언트 단말로 전송하는 단계를 더 포함할 수 있다.In this case, according to an embodiment of the present invention, in the web-based spreadsheet service providing method, when the data inserted into the first cell is changed to the first output value, the row address and the column address of the first cell. The method may further include transmitting a data update command for the first cell to the client terminal while transmitting information about the first output value and the first output value to the client terminal.
이때, 상기 클라이언트 단말은 상기 제1 셀의 행 주소 및 열 주소에 대한 정보와 상기 제1 출력 값 및 상기 제1 셀에 대한 데이터 갱신 명령이 수신되면, 상기 제1 셀에 대한 데이터 갱신 명령에 따라, 상기 제1 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 브라우저를 통해 상기 화면 상에 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중 상기 제1 셀에 삽입되어 있는 데이터를 상기 제1 출력 값으로 변경할 수 있다.In this case, when the client terminal receives the information about the row address and the column address of the first cell, the first output value and the data update command for the first cell, the client terminal according to the data update command for the first cell. The data inserted into the first cell among a plurality of cells constituting the spreadsheet displayed on the screen through the browser by referring to the information about the row address and the column address of the first cell. Can be changed to 1 output value.
또한, 본 발명의 일실시예에 따르면, 상기 웹 기반의 스프레드시트 서비스 제공 방법은 상기 클라이언트 단말에서 상기 브라우저를 통해 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중에서, 상기 적어도 하나의 셀을 제외한 나머지 셀들 중 적어도 하나의 추가 셀에 대해 데이터 삽입이 발생하면, 상기 클라이언트 단말로부터, 상기 적어도 하나의 추가 셀의 행 주소와 열 주소 및 상기 적어도 하나의 추가 셀에 삽입된 데이터가 포함된 추가 편집 정보를 수신하는 단계 및 상기 추가 편집 정보에 기초하여 상기 적어도 하나의 추가 셀에 대한 정보(여기서, 상기 적어도 하나의 추가 셀에 대한 정보는 상기 적어도 하나의 추가 셀에 삽입되어 있는 데이터와 상기 적어도 하나의 추가 셀 각각에 할당되어 있는 열 주소를 포함함)를 상기 적어도 하나의 추가 셀 각각에 할당되어 있는 행 주소를 기초로 동일한 행 단위로 그룹화하여 상기 목록 상에 추가하는 단계를 더 포함할 수 있다.In addition, according to an embodiment of the present invention, the web-based spreadsheet service providing method, except for the at least one cell of the plurality of cells constituting the spreadsheet that is displayed through the browser in the client terminal When data insertion occurs in at least one additional cell among the remaining cells, additional editing information including row and column addresses of the at least one additional cell and data inserted in the at least one additional cell, from the client terminal. Receiving information and information on the at least one additional cell based on the additional edit information, wherein the information on the at least one additional cell includes data inserted into the at least one additional cell and the at least one At least one column address assigned to each additional cell) By grouping the row address assigned to my additional cells, each of the same line by line on the basis of it may further comprise the step of adding to the said list.
이때, 본 발명의 일실시예에 따르면, 상기 추가 편집 정보에는 상기 적어도 하나의 추가 셀 중 제1 추가 셀에 대해 삽입된 데이터가 함수인 경우, 상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 제1 추가 셀에 삽입된 함수에서 입력 값으로 참조되는 적어도 하나의 제2 입력 셀(여기서, 상기 적어도 하나의 제2 입력 셀은 상기 적어도 하나의 셀과 상기 적어도 하나의 추가 셀에 포함되는 셀임)의 행 주소 및 열 주소에 대한 정보가 더 포함되어 있을 수 있다.In this case, according to an embodiment of the present invention, when the data inserted into the first additional cell of the at least one additional cell is a function, the additional edit information includes information on the function inserted in the first additional cell; At least one second input cell referred to as an input value in the function inserted into the first additional cell, wherein the at least one second input cell is a cell included in the at least one cell and the at least one additional cell ) May further include information about row and column addresses.
이때, 상기 목록 상에 추가하는 단계는 상기 추가 편집 정보 상에 상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 적어도 하나의 제2 입력 셀의 행 주소 및 열 주소에 대한 정보가 포함되어 있는 것으로 확인되면, 상기 추가 편집 정보를 참조하여 상기 함수 정보 데이터베이스에 상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 적어도 하나의 제2 입력 셀의 행 주소 및 열 주소에 대한 정보를 서로 대응시켜 저장하는 단계, 상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 적어도 하나의 제2 입력 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 적어도 하나의 제2 입력 셀에 삽입되어 있는 데이터를 기초로 함수 연산을 수행함으로써, 제2 출력 값을 생성하는 단계 및 상기 제2 출력 값을 기초로 상기 목록 상에, 상기 제1 추가 셀에 삽입되어야 하는 데이터를 상기 제2 출력 값으로 포함시키는 단계를 포함할 수 있다.In this case, the adding on the list may include information on a function inserted into the first additional cell and information on row and column addresses of the at least one second input cell on the additional edit information. If it is determined that the information on the function inserted into the first additional cell and the row address and column address of the at least one second input cell are matched with each other in the function information database with reference to the additional edit information. Storing the data inserted into the at least one second input cell by referring to information about a function inserted into the first additional cell and information about a row address and a column address of the at least one second input cell. Generating a second output value and inserting the second output value into the first additional cell on the list based on the second output value. The data to be is possible to include the step of including a second output value.
이때, 본 발명의 일실시예에 따르면, 상기 웹 기반의 스프레드시트 서비스 제공 방법은 상기 제2 출력 값의 생성이 완료되면, 상기 제1 추가 셀의 행 주소 및 열 주소에 대한 정보와 상기 제2 출력 값을 상기 클라이언트 단말로 전송함과 동시에 상기 제1 추가 셀에 대한 데이터 갱신 명령을 상기 클라이언트 단말로 전송하는 단계를 더 포함할 수 있다.In this case, according to an embodiment of the present invention, in the web-based spreadsheet service providing method, when generation of the second output value is completed, information about the row address and the column address of the first additional cell and the second The method may further include transmitting a data update command for the first additional cell to the client terminal while transmitting an output value to the client terminal.
이때, 상기 클라이언트 단말은 상기 제1 추가 셀의 행 주소 및 열 주소에 대한 정보와 상기 제2 출력 값 및 상기 제1 추가 셀에 대한 데이터 갱신 명령이 수신되면, 상기 제1 추가 셀에 대한 데이터 갱신 명령에 따라, 상기 제1 추가 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 브라우저를 통해 상기 화면 상에 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중 상기 제1 추가 셀에 상기 제2 출력 값을 삽입할 수 있다.In this case, when the client terminal receives information on a row address and a column address of the first additional cell, the second output value, and a data update command for the first additional cell, the client terminal updates data for the first additional cell. According to the command, the first additional cell of the plurality of cells constituting the spreadsheet displayed on the screen through the browser with reference to the information on the row address and column address of the first additional cell to the first additional cell; 2 Output values can be inserted.
이상, 도 7을 참조하여 본 발명의 일실시예에 따른 웹 기반의 스프레드시트 서비스 제공 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 웹 기반의 스프레드시트 서비스 제공 방법은 도 1 내지 도 6을 이용하여 설명한 웹 기반의 스프레드시트 서비스 제공 장치(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.In the above, the method for providing a web-based spreadsheet service according to an embodiment of the present invention has been described with reference to FIG. 7. Here, since the web-based spreadsheet service providing method according to an embodiment of the present invention may correspond to the configuration of the operation of the web-based spreadsheet service providing apparatus 110 described with reference to FIGS. 1 to 6, Detailed description thereof will be omitted.
본 발명의 일실시예에 따른 웹 기반의 스프레드시트 서비스 제공 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.Web-based spreadsheet service providing method according to an embodiment of the present invention may be implemented as a computer program stored in a storage medium for execution in combination with a computer.
또한, 본 발명의 일실시예에 따른 웹 기반의 스프레드시트 서비스 제공 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.In addition, the web-based spreadsheet service providing method according to an embodiment of the present invention can be implemented in the form of program instructions that can be executed by various computer means may be recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. In the present invention as described above has been described by the specific embodiments, such as specific components and limited embodiments and drawings, but this is provided to help a more general understanding of the present invention, the present invention is not limited to the above embodiments. For those skilled in the art, various modifications and variations are possible from these descriptions.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the described embodiments, and all the things that are equivalent to or equivalent to the claims as well as the following claims will belong to the scope of the present invention. .

Claims (16)

  1. 스프레드시트를 구성하는 복수의 셀들 중 데이터가 삽입되어 있는 적어도 하나의 셀에 대한 정보 - 상기 적어도 하나의 셀에 대한 정보는 상기 적어도 하나의 셀에 삽입되어 있는 데이터와 상기 적어도 하나의 셀 각각에 할당되어 있는 열 주소를 포함함 - 를 상기 적어도 하나의 셀 각각에 할당되어 있는 행 주소를 기초로 동일한 행 단위로 그룹화하여 목록 - 상기 목록은 상기 적어도 하나의 셀에 대한 정보가 그룹화되어 있는 각 행 주소에 대한 정보를 포함함 - 으로 저장하고 있는 셀 데이터베이스; 및Information on at least one cell in which data is inserted among a plurality of cells constituting the spreadsheet-The information on the at least one cell is assigned to each of the data inserted in the at least one cell and the at least one cell. Includes a column address, which is grouped in the same row unit based on a row address assigned to each of the at least one cell, and the list is a row address in which information about the at least one cell is grouped. Contains information about the cell database being stored; And
    클라이언트 단말로부터 상기 스프레드시트에 대한 오픈 명령이 수신되면, 상기 셀 데이터베이스로부터 상기 목록에 대한 데이터를 추출하여 상기 클라이언트 단말에 대해 상기 목록에 대한 데이터를 전송하는 스프레드시트 데이터 전송부When the open command for the spreadsheet is received from the client terminal, the spreadsheet data transmission unit for extracting the data for the list from the cell database and transmits the data for the list to the client terminal
    를 포함하고,Including,
    상기 클라이언트 단말은The client terminal
    상기 목록에 대한 데이터가 수신되면, 상기 클라이언트 단말의 브라우저를 통해 상기 목록 상에서 그룹화되어 있는 상기 적어도 하나의 셀에 대한 행 주소를 확인하고, 상기 목록 상에 포함되어 있는 상기 적어도 하나의 셀에 대한 정보로부터 상기 적어도 하나의 셀 각각에 할당되어 있는 열 주소와 상기 적어도 하나의 셀 각각에 삽입되어 있는 데이터를 추출한 후 상기 확인된 행 주소와 상기 추출된 열 주소 및 상기 추출된 데이터를 기초로 상기 스프레드시트를 구성하는 복수의 셀들을 렌더링하여 화면 상에 표시하는 웹 기반의 스프레드시트 서비스 제공 장치.When the data for the list is received, the row address of the at least one cell grouped on the list is checked through a browser of the client terminal, and the information on the at least one cell included in the list. Extract a column address assigned to each of the at least one cell and data inserted into each of the at least one cell from the spreadsheet based on the identified row address, the extracted column address, and the extracted data Web-based spreadsheet service providing device for rendering a plurality of cells constituting the display on the screen.
  2. 제1항에 있어서,The method of claim 1,
    상기 클라이언트 단말에서 상기 브라우저를 통해 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중 상기 적어도 하나의 셀에 삽입되어 있는 데이터에 대한 수정이 발생하면, 상기 클라이언트 단말로부터, 데이터 수정이 발생한 셀의 행 주소와 열 주소 및 데이터 수정이 발생한 셀에서의 변경된 데이터가 포함된 수정 편집 정보를 수신하는 편집 정보 수신부; 및A row of cells in which data modification has occurred, from the client terminal, when modification occurs on the data inserted in the at least one cell among a plurality of cells constituting the spreadsheet displayed through the browser at the client terminal; An edit information receiver configured to receive correction edit information including changed data in an address, a column address, and a cell in which data has been modified; And
    상기 수신된 수정 편집 정보에 기초하여 상기 셀 데이터베이스에 저장되어 있는 상기 목록 상에 포함되어 있는 상기 적어도 하나의 셀에 대한 정보를 업데이트하는 업데이트부An update unit for updating information on the at least one cell included in the list stored in the cell database based on the received modified edit information
    를 더 포함하는 웹 기반의 스프레드시트 서비스 제공 장치.Web-based spreadsheet service providing device further comprising.
  3. 제2항에 있어서,The method of claim 2,
    상기 적어도 하나의 셀 중 제1 셀에 함수가 삽입되어 있는 경우, 상기 함수에 대한 정보와 상기 함수에서 입력 값으로 참조되는 적어도 하나의 제1 입력 셀 - 상기 적어도 하나의 제1 입력 셀은 상기 적어도 하나의 셀에 포함되는 셀임 - 의 행 주소 및 열 주소에 대한 정보가 서로 대응되어 저장되어 있는 함수 정보 데이터베이스When a function is inserted in a first cell of the at least one cell, at least one first input cell referred to as information about the function and an input value in the function, wherein the at least one first input cell is the at least Cell included in one cell-Function information database that stores information about row and column addresses of
    를 더 포함하고,More,
    상기 업데이트부는The update unit
    상기 클라이언트 단말로부터 상기 수정 편집 정보가 수신되면, 상기 함수 정보 데이터베이스에 저장되어 있는 상기 적어도 하나의 제1 입력 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 수신된 수정 편집 정보에 따른 데이터의 수정이 상기 적어도 하나의 제1 입력 셀에서 발생하였는지 여부를 판단하는 편집 판단부;When the correction edit information is received from the client terminal, the data according to the received correction edit information is referred to by referring to the information about the row address and the column address of the at least one first input cell stored in the function information database. An editing determination unit that determines whether a modification occurred in the at least one first input cell;
    상기 수신된 수정 편집 정보에 따른 데이터의 수정이 상기 적어도 하나의 제1 입력 셀에서 발생한 것으로 판단되면, 상기 함수 정보 데이터베이스에 저장되어 있는 상기 함수에 대한 정보를 참조하여 상기 수신된 수정 편집 정보에 따른 상기 적어도 하나의 제1 입력 셀의 변경 데이터를 기초로 함수 연산을 수행함으로써, 제1 출력 값을 생성하는 함수 연산 수행부; 및If it is determined that the modification of the data according to the received correction edit information occurred in the at least one first input cell, the information according to the received correction edit information is referred to by referring to the information on the function stored in the function information database. A function operation performing unit configured to generate a first output value by performing a function operation based on the change data of the at least one first input cell; And
    상기 제1 출력 값을 기초로 상기 목록 상에서 상기 제1 셀에 삽입되어 있는 데이터를 상기 제1 출력 값으로 변경하는 데이터 변경부A data changer configured to change data inserted into the first cell on the list to the first output value based on the first output value
    를 포함하는 웹 기반의 스프레드시트 서비스 제공 장치.Web-based spreadsheet service providing device comprising a.
  4. 제3항에 있어서,The method of claim 3,
    상기 스프레드시트 데이터 전송부는The spreadsheet data transmission unit
    상기 제1 셀에 삽입되어 있는 데이터가 상기 제1 출력 값으로 변경된 경우, 상기 제1 셀의 행 주소 및 열 주소에 대한 정보와 상기 제1 출력 값을 상기 클라이언트 단말로 전송함과 동시에 상기 제1 셀에 대한 데이터 갱신 명령을 상기 클라이언트 단말로 전송하는 갱신 데이터 전송부When the data inserted into the first cell is changed to the first output value, the first and second output values and information about the row address and column address of the first cell are transmitted to the client terminal. Update data transmission unit for transmitting a data update command for the cell to the client terminal
    를 포함하고,Including,
    상기 클라이언트 단말은The client terminal
    상기 제1 셀의 행 주소 및 열 주소에 대한 정보와 상기 제1 출력 값 및 상기 제1 셀에 대한 데이터 갱신 명령이 수신되면, 상기 제1 셀에 대한 데이터 갱신 명령에 따라, 상기 제1 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 브라우저를 통해 상기 화면 상에 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중 상기 제1 셀에 삽입되어 있는 데이터를 상기 제1 출력 값으로 변경하는 웹 기반의 스프레드시트 서비스 제공 장치.When information about a row address and a column address of the first cell, the first output value, and a data update command for the first cell are received, according to a data update command for the first cell, The data inserted in the first cell of the plurality of cells constituting the spreadsheet displayed on the screen through the browser by referring to the information about the row address and the column address is changed to the first output value. Web-based spreadsheet service provider.
  5. 제3항에 있어서,The method of claim 3,
    상기 편집 정보 수신부는The edit information receiving unit
    상기 클라이언트 단말에서 상기 브라우저를 통해 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중에서, 상기 적어도 하나의 셀을 제외한 나머지 셀들 중 적어도 하나의 추가 셀에 대해 데이터 삽입이 발생하면, 상기 클라이언트 단말로부터, 상기 적어도 하나의 추가 셀의 행 주소와 열 주소 및 상기 적어도 하나의 추가 셀에 삽입된 데이터가 포함된 추가 편집 정보를 수신하고,When data insertion occurs in at least one additional cell among the cells excluding the at least one cell among the plurality of cells constituting the spreadsheet displayed in the client terminal through the browser, from the client terminal, Receive additional edit information including row and column addresses of the at least one additional cell and data inserted into the at least one additional cell,
    상기 업데이트부는The update unit
    상기 추가 편집 정보에 기초하여 상기 적어도 하나의 추가 셀에 대한 정보 - 상기 적어도 하나의 추가 셀에 대한 정보는 상기 적어도 하나의 추가 셀에 삽입되어 있는 데이터와 상기 적어도 하나의 추가 셀 각각에 할당되어 있는 열 주소를 포함함 - 를 상기 적어도 하나의 추가 셀 각각에 할당되어 있는 행 주소를 기초로 동일한 행 단위로 그룹화하여 상기 목록 상에 추가하는 웹 기반의 스프레드시트 서비스 제공 장치.Information on the at least one additional cell based on the additional edit information, wherein the information on the at least one additional cell is assigned to each of the data inserted in the at least one additional cell and the at least one additional cell. And a column address-to add on the list by grouping the same row units based on a row address assigned to each of the at least one additional cell.
  6. 제5항에 있어서,The method of claim 5,
    상기 추가 편집 정보에는The additional edit information
    상기 적어도 하나의 추가 셀 중 제1 추가 셀에 대해 삽입된 데이터가 함수인 경우, 상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 제1 추가 셀에 삽입된 함수에서 입력 값으로 참조되는 적어도 하나의 제2 입력 셀 - 상기 적어도 하나의 제2 입력 셀은 상기 적어도 하나의 셀과 상기 적어도 하나의 추가 셀에 포함되는 셀임 - 의 행 주소 및 열 주소에 대한 정보가 더 포함되어 있고,When data inserted into a first additional cell of the at least one additional cell is a function, at least information referred to as an input value in a function inserted in the first additional cell and a function inserted in the first additional cell Further includes information about a row address and a column address of one second input cell, wherein the at least one second input cell is a cell included in the at least one cell and the at least one additional cell,
    상기 업데이트부는The update unit
    상기 추가 편집 정보 상에 상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 적어도 하나의 제2 입력 셀의 행 주소 및 열 주소에 대한 정보가 포함되어 있는 것으로 확인되면, 상기 추가 편집 정보를 참조하여 상기 함수 정보 데이터베이스에 상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 적어도 하나의 제2 입력 셀의 행 주소 및 열 주소에 대한 정보를 서로 대응시켜 저장하는 함수 정보 업데이트부If it is determined that the additional edit information includes information on a function inserted into the first additional cell and information on row and column addresses of the at least one second input cell, the additional edit information is referred to. A function information updater for storing information about a function inserted in the first additional cell and information on row and column addresses of the at least one second input cell in the function information database
    를 더 포함하며,More,
    상기 함수 연산 수행부는The function operation execution unit
    상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 적어도 하나의 제2 입력 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 적어도 하나의 제2 입력 셀에 삽입되어 있는 데이터를 기초로 함수 연산을 수행함으로써, 제2 출력 값을 생성하고,A function based on data inserted into the at least one second input cell with reference to information about the function inserted into the first additional cell and information about the row address and column address of the at least one second input cell. By performing the operation, generating a second output value,
    상기 데이터 변경부는The data change unit
    상기 제2 출력 값을 기초로 상기 목록 상에, 상기 제1 추가 셀에 삽입되어야 하는 데이터를 상기 제2 출력 값으로 포함시키는 웹 기반의 스프레드시트 서비스 제공 장치.And a data to be inserted into the first additional cell on the list based on the second output value as the second output value.
  7. 제6항에 있어서,The method of claim 6,
    상기 갱신 데이터 전송부는The update data transmission unit
    상기 제2 출력 값의 생성이 완료되면, 상기 제1 추가 셀의 행 주소 및 열 주소에 대한 정보와 상기 제2 출력 값을 상기 클라이언트 단말로 전송함과 동시에 상기 제1 추가 셀에 대한 데이터 갱신 명령을 상기 클라이언트 단말로 전송하고,When the generation of the second output value is completed, the data update command for the first additional cell is transmitted while the information on the row address and the column address of the first additional cell and the second output value are transmitted to the client terminal. Transmits to the client terminal,
    상기 클라이언트 단말은The client terminal
    상기 제1 추가 셀의 행 주소 및 열 주소에 대한 정보와 상기 제2 출력 값 및 상기 제1 추가 셀에 대한 데이터 갱신 명령이 수신되면, 상기 제1 추가 셀에 대한 데이터 갱신 명령에 따라, 상기 제1 추가 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 브라우저를 통해 상기 화면 상에 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중 상기 제1 추가 셀에 상기 제2 출력 값을 삽입하는 웹 기반의 스프레드시트 서비스 제공 장치.When the data update command for the first additional cell and the information about the row address and the column address of the first additional cell are received, the first update is performed according to the data update command for the first additional cell. 1. The second output value is inserted into the first additional cell among a plurality of cells constituting the spreadsheet displayed on the screen through the browser by referring to the information about the row address and the column address of the additional cell. Web-based spreadsheet service provider.
  8. 스프레드시트를 구성하는 복수의 셀들 중 데이터가 삽입되어 있는 적어도 하나의 셀에 대한 정보 - 상기 적어도 하나의 셀에 대한 정보는 상기 적어도 하나의 셀에 삽입되어 있는 데이터와 상기 적어도 하나의 셀 각각에 할당되어 있는 열 주소를 포함함 - 를 상기 적어도 하나의 셀 각각에 할당되어 있는 행 주소를 기초로 동일한 행 단위로 그룹화하여 목록 - 상기 목록은 상기 적어도 하나의 셀에 대한 정보가 그룹화되어 있는 각 행 주소에 대한 정보를 포함함 - 으로 저장하고 있는 셀 데이터베이스를 유지하는 단계; 및Information on at least one cell in which data is inserted among a plurality of cells constituting the spreadsheet-The information on the at least one cell is assigned to each of the data inserted in the at least one cell and the at least one cell. Includes a column address, which is grouped in the same row unit based on the row address assigned to each of the at least one cell, and the list includes each row address where information about the at least one cell is grouped Maintain information about the cell database; And
    클라이언트 단말로부터 상기 스프레드시트에 대한 오픈 명령이 수신되면, 상기 셀 데이터베이스로부터 상기 목록에 대한 데이터를 추출하여 상기 클라이언트 단말에 대해 상기 목록에 대한 데이터를 전송하는 단계If an open command for the spreadsheet is received from a client terminal, extracting data about the list from the cell database and transmitting data about the list to the client terminal.
    를 포함하고,Including,
    상기 클라이언트 단말은The client terminal
    상기 목록에 대한 데이터가 수신되면, 상기 클라이언트 단말의 브라우저를 통해 상기 목록 상에서 그룹화되어 있는 상기 적어도 하나의 셀에 대한 행 주소를 확인하고, 상기 목록 상에 포함되어 있는 상기 적어도 하나의 셀에 대한 정보로부터 상기 적어도 하나의 셀 각각에 할당되어 있는 열 주소와 상기 적어도 하나의 셀 각각에 삽입되어 있는 데이터를 추출한 후 상기 확인된 행 주소와 상기 추출된 열 주소 및 상기 추출된 데이터를 기초로 상기 스프레드시트를 구성하는 복수의 셀들을 렌더링하여 화면 상에 표시하는 웹 기반의 스프레드시트 서비스 제공 방법.When the data for the list is received, the row address of the at least one cell grouped on the list is checked through a browser of the client terminal, and the information on the at least one cell included in the list. Extract a column address assigned to each of the at least one cell and data inserted into each of the at least one cell from the spreadsheet based on the identified row address, the extracted column address, and the extracted data Web-based spreadsheet service providing method for rendering a plurality of cells constituting the display on the screen.
  9. 제8항에 있어서,The method of claim 8,
    상기 클라이언트 단말에서 상기 브라우저를 통해 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중 상기 적어도 하나의 셀에 삽입되어 있는 데이터에 대한 수정이 발생하면, 상기 클라이언트 단말로부터, 데이터 수정이 발생한 셀의 행 주소와 열 주소 및 데이터 수정이 발생한 셀에서의 변경된 데이터가 포함된 수정 편집 정보를 수신하는 단계; 및A row of cells in which data modification has occurred, from the client terminal, when modification occurs on the data inserted in the at least one cell among a plurality of cells constituting the spreadsheet displayed through the browser at the client terminal; Receiving modification edit information including changed data in an address, a column address, and a cell in which data modification has occurred; And
    상기 수신된 수정 편집 정보에 기초하여 상기 셀 데이터베이스에 저장되어 있는 상기 목록 상에 포함되어 있는 상기 적어도 하나의 셀에 대한 정보를 업데이트하는 단계Updating information on the at least one cell included in the list stored in the cell database based on the received modified edit information
    를 더 포함하는 웹 기반의 스프레드시트 서비스 제공 방법.Web-based spreadsheet service providing method comprising more.
  10. 제9항에 있어서,The method of claim 9,
    상기 적어도 하나의 셀 중 제1 셀에 함수가 삽입되어 있는 경우, 상기 함수에 대한 정보와 상기 함수에서 입력 값으로 참조되는 적어도 하나의 제1 입력 셀 - 상기 적어도 하나의 제1 입력 셀은 상기 적어도 하나의 셀에 포함되는 셀임 - 의 행 주소 및 열 주소에 대한 정보가 서로 대응되어 저장되어 있는 함수 정보 데이터베이스를 유지하는 단계When a function is inserted in a first cell of the at least one cell, at least one first input cell referred to as information about the function and an input value in the function, wherein the at least one first input cell is the at least Maintaining a function information database in which information about row addresses and column addresses of a cell included in one cell are stored in correspondence with each other.
    를 더 포함하고,More,
    상기 업데이트하는 단계는The updating step
    상기 클라이언트 단말로부터 상기 수정 편집 정보가 수신되면, 상기 함수 정보 데이터베이스에 저장되어 있는 상기 적어도 하나의 제1 입력 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 수신된 수정 편집 정보에 따른 데이터의 수정이 상기 적어도 하나의 제1 입력 셀에서 발생하였는지 여부를 판단하는 단계;When the correction edit information is received from the client terminal, the data according to the received correction edit information is referred to by referring to the information about the row address and the column address of the at least one first input cell stored in the function information database. Determining whether a modification occurred in the at least one first input cell;
    상기 수신된 수정 편집 정보에 따른 데이터의 수정이 상기 적어도 하나의 제1 입력 셀에서 발생한 것으로 판단되면, 상기 함수 정보 데이터베이스에 저장되어 있는 상기 함수에 대한 정보를 참조하여 상기 수신된 수정 편집 정보에 따른 상기 적어도 하나의 제1 입력 셀의 변경 데이터를 기초로 함수 연산을 수행함으로써, 제1 출력 값을 생성하는 단계; 및If it is determined that the modification of the data according to the received correction edit information occurred in the at least one first input cell, the information according to the received correction edit information is referred to by referring to the information on the function stored in the function information database. Generating a first output value by performing a function operation based on change data of the at least one first input cell; And
    상기 제1 출력 값을 기초로 상기 목록 상에서 상기 제1 셀에 삽입되어 있는 데이터를 상기 제1 출력 값으로 변경하는 단계Changing the data inserted into the first cell on the list to the first output value based on the first output value
    를 포함하는 웹 기반의 스프레드시트 서비스 제공 방법.Web-based spreadsheet service providing method comprising a.
  11. 제10항에 있어서,The method of claim 10,
    상기 제1 셀에 삽입되어 있는 데이터가 상기 제1 출력 값으로 변경된 경우, 상기 제1 셀의 행 주소 및 열 주소에 대한 정보와 상기 제1 출력 값을 상기 클라이언트 단말로 전송함과 동시에 상기 제1 셀에 대한 데이터 갱신 명령을 상기 클라이언트 단말로 전송하는 단계When the data inserted into the first cell is changed to the first output value, the first and second output values and information about the row address and column address of the first cell are transmitted to the client terminal. Transmitting a data update command for a cell to the client terminal
    를 더 포함하고,More,
    상기 클라이언트 단말은The client terminal
    상기 제1 셀의 행 주소 및 열 주소에 대한 정보와 상기 제1 출력 값 및 상기 제1 셀에 대한 데이터 갱신 명령이 수신되면, 상기 제1 셀에 대한 데이터 갱신 명령에 따라, 상기 제1 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 브라우저를 통해 상기 화면 상에 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중 상기 제1 셀에 삽입되어 있는 데이터를 상기 제1 출력 값으로 변경하는 웹 기반의 스프레드시트 서비스 제공 방법.When information about a row address and a column address of the first cell, the first output value, and a data update command for the first cell are received, according to a data update command for the first cell, The data inserted in the first cell of the plurality of cells constituting the spreadsheet displayed on the screen through the browser by referring to the information about the row address and the column address is changed to the first output value. How to provide a web-based spreadsheet service.
  12. 제10항에 있어서,The method of claim 10,
    상기 클라이언트 단말에서 상기 브라우저를 통해 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중에서, 상기 적어도 하나의 셀을 제외한 나머지 셀들 중 적어도 하나의 추가 셀에 대해 데이터 삽입이 발생하면, 상기 클라이언트 단말로부터, 상기 적어도 하나의 추가 셀의 행 주소와 열 주소 및 상기 적어도 하나의 추가 셀에 삽입된 데이터가 포함된 추가 편집 정보를 수신하는 단계; 및When data insertion occurs in at least one additional cell among the cells excluding the at least one cell among the plurality of cells constituting the spreadsheet displayed in the client terminal through the browser, from the client terminal, Receiving additional edit information including row and column addresses of the at least one additional cell and data inserted into the at least one additional cell; And
    상기 추가 편집 정보에 기초하여 상기 적어도 하나의 추가 셀에 대한 정보 - 상기 적어도 하나의 추가 셀에 대한 정보는 상기 적어도 하나의 추가 셀에 삽입되어 있는 데이터와 상기 적어도 하나의 추가 셀 각각에 할당되어 있는 열 주소를 포함함 - 를 상기 적어도 하나의 추가 셀 각각에 할당되어 있는 행 주소를 기초로 동일한 행 단위로 그룹화하여 상기 목록 상에 추가하는 단계Information on the at least one additional cell based on the additional edit information, wherein the information on the at least one additional cell is assigned to each of the data inserted in the at least one additional cell and the at least one additional cell. Including column addresses-adding on the list by grouping them in the same row unit based on the row addresses assigned to each of the at least one additional cell
    를 더 포함하는 웹 기반의 스프레드시트 서비스 제공 방법.Web-based spreadsheet service providing method comprising more.
  13. 제12항에 있어서,The method of claim 12,
    상기 추가 편집 정보에는The additional edit information
    상기 적어도 하나의 추가 셀 중 제1 추가 셀에 대해 삽입된 데이터가 함수인 경우, 상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 제1 추가 셀에 삽입된 함수에서 입력 값으로 참조되는 적어도 하나의 제2 입력 셀 - 상기 적어도 하나의 제2 입력 셀은 상기 적어도 하나의 셀과 상기 적어도 하나의 추가 셀에 포함되는 셀임 - 의 행 주소 및 열 주소에 대한 정보가 더 포함되어 있고,When data inserted into a first additional cell of the at least one additional cell is a function, at least information referred to as an input value in a function inserted in the first additional cell and a function inserted in the first additional cell Further includes information about a row address and a column address of one second input cell, wherein the at least one second input cell is a cell included in the at least one cell and the at least one additional cell,
    상기 목록 상에 추가하는 단계는Adding on the list
    상기 추가 편집 정보 상에 상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 적어도 하나의 제2 입력 셀의 행 주소 및 열 주소에 대한 정보가 포함되어 있는 것으로 확인되면, 상기 추가 편집 정보를 참조하여 상기 함수 정보 데이터베이스에 상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 적어도 하나의 제2 입력 셀의 행 주소 및 열 주소에 대한 정보를 서로 대응시켜 저장하는 단계;If it is determined that the additional edit information includes information on a function inserted into the first additional cell and information on row and column addresses of the at least one second input cell, the additional edit information is referred to. Storing information about a function inserted into the first additional cell and information about row addresses and column addresses of the at least one second input cell in the function information database;
    상기 제1 추가 셀에 삽입된 함수에 대한 정보와 상기 적어도 하나의 제2 입력 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 적어도 하나의 제2 입력 셀에 삽입되어 있는 데이터를 기초로 함수 연산을 수행함으로써, 제2 출력 값을 생성하는 단계; 및A function based on data inserted into the at least one second input cell with reference to information about the function inserted into the first additional cell and information about the row address and column address of the at least one second input cell. Generating a second output value by performing an operation; And
    상기 제2 출력 값을 기초로 상기 목록 상에, 상기 제1 추가 셀에 삽입되어야 하는 데이터를 상기 제2 출력 값으로 포함시키는 단계Including data to be inserted into the first additional cell as the second output value on the list based on the second output value
    를 포함하는 웹 기반의 스프레드시트 서비스 제공 방법.Web-based spreadsheet service providing method comprising a.
  14. 제13항에 있어서,The method of claim 13,
    상기 제2 출력 값의 생성이 완료되면, 상기 제1 추가 셀의 행 주소 및 열 주소에 대한 정보와 상기 제2 출력 값을 상기 클라이언트 단말로 전송함과 동시에 상기 제1 추가 셀에 대한 데이터 갱신 명령을 상기 클라이언트 단말로 전송하는 단계When the generation of the second output value is completed, the data update command for the first additional cell is transmitted while the information on the row address and the column address of the first additional cell and the second output value are transmitted to the client terminal. Transmitting to the client terminal
    를 더 포함하고,More,
    상기 클라이언트 단말은The client terminal
    상기 제1 추가 셀의 행 주소 및 열 주소에 대한 정보와 상기 제2 출력 값 및 상기 제1 추가 셀에 대한 데이터 갱신 명령이 수신되면, 상기 제1 추가 셀에 대한 데이터 갱신 명령에 따라, 상기 제1 추가 셀의 행 주소 및 열 주소에 대한 정보를 참조하여 상기 브라우저를 통해 상기 화면 상에 표시되고 있는 상기 스프레드시트를 구성하는 복수의 셀들 중 상기 제1 추가 셀에 상기 제2 출력 값을 삽입하는 웹 기반의 스프레드시트 서비스 제공 방법.When the data update command for the first additional cell and the information about the row address and the column address of the first additional cell are received, the first update is performed according to the data update command for the first additional cell. 1. The second output value is inserted into the first additional cell among a plurality of cells constituting the spreadsheet displayed on the screen through the browser by referring to the information about the row address and the column address of the additional cell. How to provide a web-based spreadsheet service.
  15. 제8항 내지 제14항 중 어느 한 항의 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.A computer-readable recording medium having recorded thereon a program for performing the method of any one of claims 8-14.
  16. 제8항 내지 제14항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.A computer program stored in a storage medium for executing the method of any one of claims 8 to 14 in combination with a computer.
PCT/KR2016/005419 2016-05-23 2016-05-23 Web-based spreadsheet service providing device and method WO2017204368A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/KR2016/005419 WO2017204368A1 (en) 2016-05-23 2016-05-23 Web-based spreadsheet service providing device and method
KR1020167017256A KR101797573B1 (en) 2016-05-23 2016-05-23 Web based spreadsheets service providing apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2016/005419 WO2017204368A1 (en) 2016-05-23 2016-05-23 Web-based spreadsheet service providing device and method

Publications (1)

Publication Number Publication Date
WO2017204368A1 true WO2017204368A1 (en) 2017-11-30

Family

ID=60387644

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2016/005419 WO2017204368A1 (en) 2016-05-23 2016-05-23 Web-based spreadsheet service providing device and method

Country Status (2)

Country Link
KR (1) KR101797573B1 (en)
WO (1) WO2017204368A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102014215B1 (en) * 2017-12-13 2019-08-26 주식회사 한글과컴퓨터 Method and apparatus for converting unit
KR102300467B1 (en) * 2019-10-28 2021-09-09 주식회사 한글과컴퓨터 Knowledge database management device for building a knowledge database using tables included in spreadsheet documents and enabling user access to the knowledge database, and operating method thereof
KR102328034B1 (en) * 2019-12-17 2021-11-17 주식회사 한글과컴퓨터 Database building device that can build a knowledge database from a table-inserted image and operating method thereof
KR102531310B1 (en) 2022-12-22 2023-05-10 류장근 Web based spreadsheets service providing apparatus and method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020065846A1 (en) * 2000-11-30 2002-05-30 Atsuro Ogawa Spreadsheet Web server system and spreadsheet Web system
US20080172597A1 (en) * 2007-01-16 2008-07-17 Siemens Medical Solutions Usa, Inc. Data Field Referencing Text Processing System
KR101159317B1 (en) * 2004-06-01 2012-07-03 마이크로소프트 코포레이션 Method and apparatus for viewing and interacting with a spreadsheet from within a web browser
KR20130021482A (en) * 2011-08-23 2013-03-06 주식회사 인프라웨어 Method of editing html tables by cell unit
US20130061123A1 (en) * 2007-05-16 2013-03-07 Jonathan Rochelle Data From Web Documents In A Spreadsheet

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020065846A1 (en) * 2000-11-30 2002-05-30 Atsuro Ogawa Spreadsheet Web server system and spreadsheet Web system
KR101159317B1 (en) * 2004-06-01 2012-07-03 마이크로소프트 코포레이션 Method and apparatus for viewing and interacting with a spreadsheet from within a web browser
US20080172597A1 (en) * 2007-01-16 2008-07-17 Siemens Medical Solutions Usa, Inc. Data Field Referencing Text Processing System
US20130061123A1 (en) * 2007-05-16 2013-03-07 Jonathan Rochelle Data From Web Documents In A Spreadsheet
KR20130021482A (en) * 2011-08-23 2013-03-06 주식회사 인프라웨어 Method of editing html tables by cell unit

Also Published As

Publication number Publication date
KR101797573B1 (en) 2017-11-14

Similar Documents

Publication Publication Date Title
WO2018212484A1 (en) Document editing device for maintaining format of object, and operation method therefor
WO2017204368A1 (en) Web-based spreadsheet service providing device and method
US9703777B2 (en) Translating textual information of an application
WO2018004025A1 (en) Document collaboration device supporting simultaneous style editing of entity, and method for operating same
WO2018026033A1 (en) Document collaboration support apparatus for supporting simultaneous editing of document and operating method thereof
WO2011053046A2 (en) System and method for preparing excel-based analysis reports
US7240279B1 (en) XML patterns language
US8903710B2 (en) Synchro translation verification test for software applications
CN103608802B (en) The method and system of Choose for user between the file and source file fetched
WO2017030306A1 (en) Method and system for bookmarking a webpage
CN103280130A (en) Electric examination achieving method and system used for interaction teaching
WO2022127449A1 (en) Web page synchronization method and apparatus, device, and storage medium
WO2018004020A1 (en) Device and method for verifying matching of simultaneous edits for markup language-based document
CN110795910B (en) Text information processing method, device, server and storage medium
WO2014058146A1 (en) User terminal apparatus supporting fast web scroll of web documents and method therefor
WO2017074066A1 (en) Internet content providing server and computer readable recording medium embodying same method
US20150161160A1 (en) Application Localization
CN115391322A (en) Data checking method, device, equipment, storage medium and program product
WO2018212486A1 (en) Device for synchronizing combination character of markup language-based document, and operating method thereof
WO2016186326A1 (en) Search word list providing device and method using same
WO2019045185A1 (en) Mobile device and method for correcting character string entered through virtual keyboard
WO2018034509A1 (en) Website creating method and system implemented in web browser
WO2018004027A1 (en) Web-based electronic document service device capable of authenticating for document editing, and method for operating same
CN111539200B (en) Method, device, medium and electronic equipment for generating rich text
CN114676369A (en) Webpage embedding method, device, equipment and computer readable storage medium

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16903216

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16903216

Country of ref document: EP

Kind code of ref document: A1