KR100972282B1 - 인쇄 제어 장치 및 인쇄 제어 방법 - Google Patents

인쇄 제어 장치 및 인쇄 제어 방법 Download PDF

Info

Publication number
KR100972282B1
KR100972282B1 KR1020080029301A KR20080029301A KR100972282B1 KR 100972282 B1 KR100972282 B1 KR 100972282B1 KR 1020080029301 A KR1020080029301 A KR 1020080029301A KR 20080029301 A KR20080029301 A KR 20080029301A KR 100972282 B1 KR100972282 B1 KR 100972282B1
Authority
KR
South Korea
Prior art keywords
print
job
print data
stored
code
Prior art date
Application number
KR1020080029301A
Other languages
English (en)
Other versions
KR20090004442A (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 캐논 가부시끼가이샤
Publication of KR20090004442A publication Critical patent/KR20090004442A/ko
Application granted granted Critical
Publication of KR100972282B1 publication Critical patent/KR100972282B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/126Job scheduling, e.g. queuing, determine appropriate device
    • G06F3/1263Job scheduling, e.g. queuing, determine appropriate device based on job priority, e.g. re-arranging the order of jobs, e.g. the printing sequence
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03GELECTROGRAPHY; ELECTROPHOTOGRAPHY; MAGNETOGRAPHY
    • G03G15/00Apparatus for electrographic processes using a charge pattern
    • G03G15/50Machine control of apparatus for electrographic processes using a charge pattern, e.g. regulating differents parts of the machine, multimode copiers, microprocessor control
    • G03G15/5075Remote control machines, e.g. by a host
    • G03G15/5083Remote control machines, e.g. by a host for scheduling
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03GELECTROGRAPHY; ELECTROPHOTOGRAPHY; MAGNETOGRAPHY
    • G03G15/00Apparatus for electrographic processes using a charge pattern
    • G03G15/50Machine control of apparatus for electrographic processes using a charge pattern, e.g. regulating differents parts of the machine, multimode copiers, microprocessor control
    • G03G15/5075Remote control machines, e.g. by a host
    • G03G15/5087Remote control machines, e.g. by a host for receiving image data
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03GELECTROGRAPHY; ELECTROPHOTOGRAPHY; MAGNETOGRAPHY
    • G03G21/00Arrangements not provided for by groups G03G13/00 - G03G19/00, e.g. cleaning, elimination of residual charge
    • G03G21/02Counting the number of copies; Billing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1211Improving printing performance
    • G06F3/1212Improving printing performance achieving reduced delay between job submission and print start
    • G06F3/1213Improving printing performance achieving reduced delay between job submission and print start at an intermediate node or at the final node
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

인쇄 데이터를 인쇄 애플리케이션으로부터 저장 영역에 저장하고, 인쇄 데이터를 인쇄 장치에 송신하기 위한 인쇄 제어 장치가 개시된다. 인쇄 제어 장치는, 제1 수신 인쇄 데이터에 과금 코드가 설정된 경우, 인쇄 장치에 인쇄 데이터를 송신하고, 제1 수신 인쇄 데이터에 과금 코드가 설정되지 않은 경우, 제1 수신 인쇄 데이터 전에(또는 그 대신에) 후속하는 데이터가 송신되도록 인쇄 데이터의 순서를 제어하는 제어 수단, 인쇄 애플리케이션으로부터 수신된 인쇄 데이터의 리스트를 표시하는 표시 제어 수단, 및 사용자에 의한 입력에 따라서 과금 코드를 설정하기 위하여 표시 제어 수단에 의해 표시되는 인쇄 데이터의 리스트로부터 하나 이상의 인쇄 데이터를 선택하는 설정 수단을 포함한다. 관련 방법 또한 개시된다.
스풀러, 큐, 과금 코드, 프린터 서버, Win32 함수

Description

인쇄 제어 장치 및 인쇄 제어 방법{PRINTING CONTROL APPARATUS AND PRINTING CONTROL METHOD}
본 발명은 인쇄 시스템에서 인쇄 잡에 대하여 과금 코드(billing code) 등의 추가 정보를 부가하여, 추가 정보의 로그를 수집함으로써, 인쇄 잡의 비용을 관리하는 기술에 관한 것이다.
최근, 각각의 사용자에 대응하는 인쇄 문서명, 인쇄 일시, 용지 종류, 크기 및 방향, 인쇄 부수, 및 인쇄 문서의 컬러 형태(예를 들어, 컬러 또는 흑백 문서) 등의 정보를 집계하는 인쇄 이력 관리 시스템이 실현되어 있다. 인쇄 이력 관리 시스템은, 인쇄 애플리케이션 및 프린터 드라이버에 의해 부가되지 않은 정보, 예컨대, 고객 정보 및 인쇄 단가를 인쇄 잡과 연관시켜, 인쇄 로그(인쇄 이력)의 일부로서 이러한 정보를 집계한다. 인쇄 이력 관리 시스템은 집계 결과로부터 인쇄 경향을 조사하는 등, 과금을 위해 집계 정보를 활용한다. 한편, 낭비 인쇄출력이 발생되는 것을 방지하기 위해, 각각의 사용자에 의해 발생될 수 있는 인쇄출력 수의 상한을 결정하고 제한하도록 각 사용자에 대하여 활용가능한 인쇄물의 수를 미리 설정하는 시스템이 제공되어 있다.
인쇄 잡에 추가 정보를 연관시키는 한가지 방법으로서, 잡 생성시에 인쇄 설정 다이얼로그 박스로부터 정보를 입력하고, 프린터 드라이버에 의해 인쇄 정보가 저장되는 영역과는 다른 영역(예컨대, 헤더)에 입력 정보를 기입함으로써, 인쇄 잡을 생성하는 방법이 제시되어 있다. 그러나, 잡을 생성하는 드라이버를 변경할 필요가 있다. 따라서, 이 방법은 기존 시스템에 적용될 수 없다. 그러므로, 클라이언트 PC에 의해 잡이 생성된 다음 스풀러에 저장된 후, 화상 처리 장치에 잡이 송신되는 때에 정보 입력 다이얼로그를 표시하는 방법이 제공되었다. 그러나, 통상, 잡은 스풀링 순서대로 한번에 하나씩 순차적으로 송신된다. 따라서, 송신될 잡이 첫번째 잡과 다른 경우, 그 잡이 자신의 순서에 송신될 때까지는 오랜 시간이 걸린다. 그러므로, 어떤 경우에는 정보 입력 다이얼로그 박스가 표시되기 전에 사용자가 컴퓨터를 로그오프 하기도 한다. 결과적으로, 사용자는 정보를 입력할 수 없다. 따라서, 어떤 경우, 선두 잡이 정보의 입력을 대기하기 때문에, 후속 잡의 처리가 수행되지 않는다. 이러한 상황의 발생을 방지하기 위하여, 소정의 시간동안 정보 입력 다이얼로그 박스로부터 잡에 대하여 아무런 정보가 입력되지 않는 경우, 잡이 타임아웃으로 취소된다. 결과적으로, 이 방법은 프린터에 인쇄 요청을 발행한 사용자가 인쇄 문서를 받지 못하는 점에서 결점이 있다.
일본특허공개공보 제2003-131831호에서는, 선두 잡이 리소스의 큐에 저장되는 경우(예컨대, 프린터가 지정 용지를 소진한 경우), 화상 형성 장치가 선두 잡을 정지시키고, 큐의 다음 잡을 수행하는 기술을 개시하고 있다.
일본특허공개공보 제2003-131831호의 종래 기술에서, 일반적으로, 화상 처리 장치의 기억부는 그 기술을 구현하지 않는 화상 처리 장치보다 더 작은 용량을 갖는다. 따라서, 대량의 잡 또는 큰 잡이 정지될 수 없다. 이러한 잡의 대기는 시스템 정지를 가져올 수 있다. 대용량의 기억부를 갖는 화상 처리 장치에서도, 당장 수행될 수 없는 인쇄 잡을 네트워크를 경유하여 정보 처리 장치로부터 송신하는 것은 비효율적이다. 또한, 인쇄 요청을 발행한 사용자가 그대로 있거나 화상 처리 장치로 되돌아가는 경우, 사용자는 특정 조건, 예컨대, 리소스의 대기를 취소할 수 없다.
본 발명은 사용자로부터 발행되는 명령에 따라서 생성되는 인쇄 잡에 사용자가 추가 정보를 설정하도록 촉구할 수 있는 인쇄 제어 장치에 관한 것이다. 추가 정보는 후에 인쇄 로그의 일부로서 유효하다.
본 발명의 일 양태에 따르면, 인쇄 애플리케이션으로부터 수신되는 순서로 인쇄 잡을 저장 영역에 저장하고, 저장된 인쇄 잡들을 인쇄 장치에 송신하도록 구성되는 인쇄 제어 장치는, 제1 인쇄 잡에서 과금 코드가 설정되지 않은 경우, 인쇄 장치에 제1 인쇄 잡에 후속하여 수신되는 제2 인쇄 잡이 송신되는 한편, 제1 인쇄 잡은 인쇄 제어 장치에 유지되도록, 작업 영역에 저장된 인쇄 잡들을 인쇄 장치에 송신하는 순서를 제어하도록 구성되는 제어 수단; 인쇄 애플리케이션으로부터 수신되는 인쇄 잡들의 리스트를 표시하도록 구성되는 표시 수단; 및 사용자에 의한 입력에 따라서 리스트로부터 적어도 하나의 인쇄 잡을 선택하고, 선택된 적어도 하나의 인쇄 잡에 과금 코드를 설정하도록 구성되는 설정 수단을 포함한다.
본 발명의 다른 특징 및 양태들은 첨부 도면을 참조하여 이하의 실시예들의 상세한 설명으로부터 명확하게 될 것이다.
명세서의 일부에 포함되어 그 일부를 구성하고 있는 첨부 도면은 발명의 상세한 설명과 함께 본 발명의 실시예, 특징, 및 양태들을 예시하며, 본 발명의 원리를 설명하는 기능을 한다.
인쇄 잡에 대해 과금 코드 등의 추가 정보를 부가하여, 추가 정보의 로그를 수집함으로써, 인쇄 잡의 비용을 용이하게 관리할 수 있다.
이하, 도면을 참조하여 본 발명의 다양한 실시예, 특징, 및 양태들을 상세하게 설명한다.
<제1 실시예>
도 1은 본 발명의 일 실시예에 따른 인쇄 시스템의 예시적인 구성을 도시한 블록도이다. 도 1에 도시된 바와 같이, 정보 처리 장치(101 내지 104)는 Ethernet® 등의 네트워크 케이블을 통해 네트워크(106)에 접속된다. 정보 처리 장치(101 내지 104)는 애플리케이션 프로그램 등의 각종 프로그램들을 실행할 수 있다. 정보 처리 장치(101 내지 104)에는, 각각 인쇄 데이터를 프린터에 대응하는 프린터 언어로 변환하는 기능을 갖는 프린터 드라이버가 탑재된다. 정보 처리 장치(101 내지 104)는 네트워크(106)에 접속된 그 밖의 장치들과 양방향으로 통신할 수 있는 통신 장치들을 갖는다.
프린터 드라이버는 복수의 프린터를 지원한다. 프린터(예컨대, 입출력(I/O)부)는, 예컨대, 전자사진 방식을 채용한 레이저 빔 프린터, 잉크젯 방식을 채용한 잉크젯 프린터, 및 열전사 방식을 채용한 프린터 등의 임의의 다양한 종류일 수 있다.
본 실시예에 있어서, 퍼스널 컴퓨터 등의 정보 처리 장치(101 및 102)는 각 각 로그 수집 서버 및 프린트 서버이다. 로그 수집 서버(101) 및 프린트 서버(102)는 네트워크 케이블을 통해 네트워크(106)에 접속된다. 이 서버들은 네트워크(106)에서 사용되는 파일들을 저장하며, 네트워크(106)의 사용 상태를 감시한다. 로그 수집 서버(101) 및 프린트 서버(102)는 네크워크(106)에 접속된 그 밖의 장치들과 양방향으로 통신가능한 통신 장치들을 가지며, 복수의 프린터를 관리한다.
클라이언트 컴퓨터(103 및 104), 로그 수집 서버(101), 및 프린트 서버(102)는 범용 정보 처리 장치들이다. 로그 수집 서버(101) 및 프린트 서버(102)는 클라이언트 컴퓨터(103 및 104)의 기능을 갖는다. 클라이언트 컴퓨터(103 및 104), 로그 수집 서버(101) 및 프린트 서버(102)의 하드 디스크(HD) 및 ROM(read-only memory) 등의 저장 매체는 각종 제어를 구현하기 위한 실행가능한 제어 프로그램들을 저장한다.
프린트 서버(102)는 클라이언트 컴퓨터(103 및 104)에 의해 인쇄 요청되는 인쇄 데이터를 포함하는 인쇄 잡들을 저장한다. 프린트 서버(102)는 인쇄 잡을 화상 처리 장치에 보낸다. 대안으로, 프린트 서버(102)는 클라이언트 컴퓨터(103 및 104)로부터 아무런 인쇄 데이터를 포함하지 않는 잡 정보만을 수신하고, 클라이언트 컴퓨터(103 및 104)의 인쇄 순서를 관리할 수 있다. 프린트 서버(102)는 인쇄 차례가 다가오는 클라이언트 컴퓨터들(103 및 104) 중 하나에 대하여 인쇄 데이터를 포함하는 인쇄 잡의 송신 허가를 통지한다. 프린트 서버(102)는 네트워크 프린터(105)의 상태 및 인쇄 잡 등의 각종 정보를 취득하여, 클라이언트 컴퓨터(103 및 104)에 통지를 송신하는 기능을 갖는다.
네트워크 프린터(105)는 프린터, 복사기 및 복합기를 포함하는 화상 처리 장치로 기능한다. 네트워크 프린터(105)는 네트워크 인터페이스(도시되지 않음)를 통해 네트워크(106)에 접속된다. 따라서, 네트워크 프린터(105)는 프린트 서버(102)(이하, 클라이언트 컴퓨터라 하기도 함) 및 클라이언트 컴퓨터(103 및 104)로부터 송신된 인쇄 데이터를 포함하는 인쇄 잡들을 수신한다.
클라이언트 컴퓨터(102, 103, 104), 서버(101), 및 네트워크 프린터(105)는 네트워크(106)에 접속된다.
도 2를 참조하면, 중앙 처리 장치(CPU)(200)는 정보 처리 장치(1)(클라이언트 컴퓨터(102, 103, 104) 각각)에 대한 제어 유닛이다. CPU(200)는 하드 디스크(HD)(205)에 저장되는, 본 발명의 일 실시예에 따른 애플리케이션 프로그램, 프린터 드라이버 프로그램, OS 프로그램, 및 네트워크 프린터 제어 프로그램을 실행시킨다. 또한, CPU(200)는 RAM(202)에서 프로그램을 실행하는데 필요한 정보 및 파일의 임시 저장부를 제어한다.
ROM(201)은 기본적인 I/O 프로그램 등의 프로그램들, 및 문서 처리에 사용되는 폰트 데이터, 템플릿 데이터 등의 각종 데이터를 저장하는 저장부이다. RAM(202)은 메인 메모리 및 CPU(200)의 작업 영역로서 기능하는 임시 저장부이다.
플로피® 디스크(FD) 드라이브(203)는 저장 매체 판독 유닛이다. 후술될 도 5a 및 도 5b에 도시된 바와 같이, 저장 매체로 기능하는 FD(204)에 저장되는 프로그램들은 FD 드라이브(203)를 통해 클라이언트 컴퓨터로 기능하는 컴퓨터 시스템에 탑재될 수 있다. 저장 매체는 FD에 한하지 않는다. CD-ROM(compact disk read-only memory), CD-R(compact disk recordable), CD-RW(compact disk rewritable), PC 메모리 카드, DVD(digital versatile disk), IC 메모리 카드, 자기광학 디스크(MO), 및 메모리 스틱이 저장 매체로서 사용될 수 있다.
FD(204)는 컴퓨터에 의해 판독될 수 있는 프로그램들을 저장한다.
HD(205)는 대용량 메모리로 기능하는 외부 저장부이다. HD(205)는 애플리케이션 프로그램, 프린터 드라이버 프로그램, OS 프로그램, 제어 프로그램, 및 관련 프로그램들을 저장한다. 또한, HD(205)는 스풀러를 저장하기 위한 영역을 보증한다. 클라이언트 컴퓨터에서, 스풀러는 클라이언트 스풀러이다. 프린트 서버에서, 스풀러는 서버 스풀러이다. 프린트 서버는 클라이언트 컴퓨터들로부터 수신된 잡 정보를 저장한다. 인쇄 순서를 제어하기 위한 테이블이 생성되어, 외부 저장부에 저장된다.
키보드(KBD)(206)는 장치 제어 커맨드 등의 명령을 입력하기 위한 명령 입력부로 기능한다. 포인팅 장치(PD)(209)가 키보드(206)에 접속된다.
디스플레이(표시 유닛)(207)는, 예를 들어, 키보드(206)로부터 입력되는 커맨드, 또는 프린터의 상태와 같은, 처리 지시 및/또는 데이터의 표현을 표시한다.
시스템 버스(208)는 클라이언트 컴퓨터의 구성요소들 사이의 데이터 흐름을 제어한다.
접속 유닛(210)은 외부 장치들과 양방향 인터페이스(211)를 통해 데이터를 송수신한다.
본 실시예에 따라서 제어 프로그램들과 관련 데이터를 직접 FD(204)로부터 RAM(202)에 탑재하여 프로그램들을 실행하기 위한 예시적인 동작을 이하에서 설명한다. 대안으로서, 제어 프로그램이 FD(204)로부터 실행될 때마다, HD(205)에 이미 인스톨된 제어 프로그램이 RAM(202)에 탑재될 수도 있다.
FD 이외에도, CD-ROM, CD-R, PC 카드, DVD, 및 IC 메모리 카드가 제어 프로그램을 저장하기 위한 매체로서 사용될 수 있다. 또한, 제어 프로그램들은 ROM(201)에 저장되어, 메모리 맵의 일부를 구성하여, CPU(200)에 의해 직접 실행되도록 구성될 수 있다.
다음으로, 화상 처리 장치(2)의 구성을 이하에서 상세히 설명한다. 화상 처리 장치(2)의 주요 구성요소는, 접속부(226), 데이터 제어부(프린터 엔진)(225), 조작부(224), 외부 메모리(223), 프린터 CPU(PCPU)(220), 프린터 RAM(PRAM)(222), 및 프린터 ROM(PROM)(221)이다. 이들 화상 처리 장치(2)의 구성요소들은 시스템 버스(227)를 통해 서로 접속된다.
PCPU(220)는 전체 화상 처리 장치(2)를 제어한다. PCPU(220)는 PROM(221) 또는 외부 메모리(223)에 저장된 제어 프로그램에 기초하여 접속부(226)에 수신되는 프린터 제어 커맨드(전송 데이터)에 따라서 데이터 제어부(225)에 화상 신호를 송신한다.
PRAM(222)은 PCPU(220)에 대한 메인 메모리로서 기능하며, PCPU(220)에 의해 제어 동작이 수행되는 경우 잡 데이터 영역으로 사용되는 각종 데이터에 대한 임시 저장 영역을 갖는다. 외부 메모리(223)는 시스템 버스(227)에 선택적으로 접속되 며, 폰트 데이터, 에뮬레이션 프로그램, 및 형식 데이터를 저장한다. PROM(221)은 외부 메모리(223)와 마찬가지로 화상 처리 장치를 제어하기 위한 제어 프로그램 및 각종 데이터를 저장하는 프린터 내부 메모리이다.
데이터 제어부(225)는 프린터 엔진이며, PCPU(220)에 의해 제어된다. 데이터 제어부(225)는 PROM(221) 또는 외부 메모리(223)에 저장된 제어 프로그램에 의해 출력되는 화상 신호를 시스템 버스(227)를 통해 수신하여, 실제 인쇄 처리를 수행한다. 조작부(224)는 조작 패널과 조작 스위치를 갖는 입력부, 및 발광 다이오드(LED) 또는 액정 패널을 갖는 표시부를 포함한다. 조작부(224)는 오퍼레이터에 의한 조작을 접수하여, 그 결과를 표시한다. 오퍼레이터는 화상 처리 장치(2)의 설정을 지시하고, 조작부(224)를 통해 그 설정을 확인할 수 있다.
접속부(226)는 상술된 양방향 인터페이스(211)를 통해 정보 처리 장치(1)의 접속부(210)에 접속된다. 따라서, 접속부(226)는 인쇄 제어 커맨드(전송 데이터)를 수신하는 화상 처리 장치(2)의 상태를 정보 처리 장치(1)에 통지할 수 있다.
또한, 상술된 장치들과 동등한 기능을 구현할 수 있는 소프트웨어가 대안의 하드웨어 장치로서 구성될 수 있다.
본 발명은, 인쇄 잡을 생성하는 클라이언트 컴퓨터, 인쇄 잡을 송신하는 프린트 서버, 및 인쇄 잡을 수집 및 관리하는 로그 수집 서버가 서로 동일한 구성을 갖는 정보 처리 장치인 경우, 및 인쇄 잡을 생성하는 클라이언트 컴퓨터, 인쇄 잡을 송신하는 프린트 서버, 및 인쇄 잡을 수집 및 관리하는 로그 수집 서버가 서로 상이한 구성을 갖는 정보 처리 장치인 경우 양쪽 모두에 대하여 적용될 수 있다.
도 3은 본 발명의 일 실시예에 따른 예시적인 정보 입력 UI(화면)를 도시한다. 이 다이얼로그 박스는 후술하는 도 4에 도시된 스풀러 감시 모듈(407)에 의해 클라이언트 컴퓨터의 표시부(207)에 표시된다. 다이얼로그 박스는 키보드(206)와 같은 지시 장치로부터 사용자에 의한 입력을 수신한다. 정보 입력 UI는, 과금 코드 입력 필드(301), 입력 결정 버튼(302), 잡 조작 버튼(본 실시예에서, 정지 버튼(303), 재개(resume) 버튼(304), 및 삭제 버튼(305)), 표시 갱신 버튼(306), 및 잡 리스트 표시부(307)를 구비한다. 잡 리스트 표시부(307)는 잡 식별정보(ID), 문서명, 잡 오너, 과금 코드, 및 각 라인의 상태를 나타내는 리스트를 잡 리스트로서 표시할 수 있다. 사용자로부터의 명령에 따라서 복수의 잡이 선택될 수 있다. 선택된 잡들은 구분가능하게 반전 표시된다. 잡들이 선택되는 경우, 과금 코드 입력 필드(301)는 선택적으로 문자열을 입력할 수 있도록 유효하게 된다. 복수의 잡을 선택하는 경우, 복수의 과금 코드가 동시에 입력될 수 있다.
도 4는 본 실시예에 따른 인쇄 시스템을 구성하는 클라이언트 컴퓨터에서 동작하는 모듈, 그 모듈과 화상 처리 장치 간의 관계, 및 잡의 흐름의 일례를 도시한다. 클라이언트 컴퓨터, 예컨대, 광범위하게 사용되는 퍼스널 컴퓨터(정보 처리 장치에 대응)는 운영 체제(OS)로서 마이크로소프트사 제조의 Windows XP 또는 Windows Vista와 같은 Windows® 운영 체제(본 명세서에서는, Windows®)를 사용한다. 또한, 클라이언트 컴퓨터는 인쇄 처리 기능을 갖는 마이크로소프트사 제조의 Word® 등의 애플리케이션 프로그램(인쇄 애플리케이션 프로그램)(401)을 기동시킨다.
본 실시예에 따른 인쇄 제어 장치(인쇄 제어부)로서 기능하는 클라이언트 컴퓨터는 적어도 드라이버, 스풀러 감시 모듈, UI 제어부, 및 포트 모니터를 구비한다. 인쇄 제어 장치는 수행되는 처리에 사용되는 각종 정보를 저장하기 위한 저장 매체, 및 인쇄 애플리케이션과는 다른 도 4에 도시된 모든 모듈들을 구비할 수 있다. 또한, 후술하는 바와 같이, 화상 처리 장치(예컨대, 인쇄 장치(프린터) 및 복사기)에서 인쇄 제어 장치가 구현될 수 있다.
사용자는 키보드(206) 및 포인팅 장치(209)와 같은 지시 장치를 이용하여 문서를 생성한다. 이어서, 사용자는 애플리케이션 프로그램에 제공되는 인쇄 명령부를 이용하여 문서를 인쇄할 것을 명령한다. 애플리케이션 프로그램(401)은 인쇄 데이터를 프린터 드라이버(402)에 전달하여 인쇄 잡을 생성한다. 프린터 드라이버(402)는 생성된 인쇄 잡을 스풀러(403)에 전달한다. 스풀러(403)는 복수의 드라이버로부터 전달된 인쇄 잡들을 스풀링하여, 사용자에 의해 지정된 프린터 각각에 대응하는 잡들을 스케줄링한다. 이어서, 스풀러(403)는 잡을 프린터에 접속된 포트에 대응하는 포트 모니터(404)에 전달한다. 포트 모니터(404)는 이에 따라 포트(예컨대, USB(범용 직렬 버스) 또는 네트워크 포트)에 대응하는 장치 드라이버(405)를 호출하고, 잡을 장치 드라이버(405)에 전달한다. 장치 드라이버(405)는 전달된 데이터를 소정의 방법에 따라서 접속부(210)를 통해 화상 처리 장치(406)에 전송한다.
화상 처리 장치(406)는 클라이언트 컴퓨터로부터 전달된 인쇄 잡을 순차적으로 실행한다.
스풀러 감시 모듈(407)은 클라이언트 컴퓨터가 부팅되는 때에 자동적으로 동작을 시작한다. 스풀러 감시 모듈(407)은 OS에 사전에 제공된 스풀러 기능을 이용하여 스풀러(403)를 감시한다. 보다 구체적으로는, 스풀러 감시 모듈(407)은 프린터 드라이버의 추가, 삭제, 및 변경을 감시하고, 각각의 프린터 드라이버에 대응하는 잡의 생성 및 상태를 감시한다. 잡이 스풀링되는 경우, 상태, 사이즈, 프린터 드라이버명, 오너, 문서명, 일시를 나타내는 부록 정보와 함께 잡 리스트(408)를 위하여 사전에 마련된 저장 영역에 잡이 저장된다. 동시에, UI 처리부(표시 제어부)(409)는 도 3에 도시된 정보 입력 다이얼로그 박스(정보 입력 UI)를 클라이언트 컴퓨터의 표시부(207)에 표시한다. 정보 입력 UI를 통해 사용자로부터 입력 정보를 수신하는 때에, UI 처리부(409)는 잡 리스트(408)에서 입력 정보를 반영한다. 또한, 스풀러 감시 모듈(407)은 서버 통지 모듈(410)에 로그를 전달한다. 따라서, 로그 수집 서버(101)에 로그가 통지된다.
도 5a는 본 실시예에 따른 예시적인 로그를 도시한다. 클라이언트 컴퓨터에서 동작하는 스풀러 감시 모듈(407)에 의해, RAM(202) 또는 HD(205) 등의 저장부에 로그가 생성된다. 서버 통지 모듈(410)은 로그를 로그 수집 서버(101)에 통지한다. 도 5b는 로그의 각 항목의 설명을 도시한다. 논리값, 수치값, 또는 문자열이 로그의 각 항목에 입력된다.
도 17a는 본 실시예에 따른 예시적인 잡 리스트를 도시한다. 잡 리스트는 도 4에 도시된 잡 리스트(408) 및 후술하는 도 14에 도시된 잡 리스트(1408)로부터 확인될 수 있는 잡 정보를 나타내는 레코드이다. 도 17b는 도 17a에 도시된 잡 리 스트의 각 항목의 설명을 도시한다. 클라이언트 컴퓨터 상에서 동작하는 스풀링 감시 모듈은 RAM(202) 또는 HD(205) 등의 저장부에 레코드의 수만큼 확보된 저장 영역에 잡 리스트를 저장한다.
추가 정보로서 각 잡에 관한 정보에 과금 정보를 추가하여 얻어지는 잡 정보는 로그로서 취급된다. 과금 코드에 대응하는 과금처(billing destination)는 사전에 결정될 수 있다. 과금 코드를 이용하는 방법은, 예를 들어, 다음과 같이 설정될 수 있다. 과금처는 사전에 결정되지 않는다. 각각의 클라이언트(사용자)가 잡을 고유하게 처리하는 경우, 비용 제어를 위해 과금 코드를 이용할 수 있다. 과금 코드는 본 실시예에서 이후 후술하는 바와 같이 연관 잡이 생성된 후에 설정될 수 있다. 각각의 과금 코드는 단일 문자 "0" 이외의 임의 문자열 코드로 구성된다. 각각의 과금 코드는 3개의 독립적인 서브코드를 포함한다. 사용자는 3개의 과금 코드 모두를 지정할 수 있다. 대안으로, 사용자는 3개 과금 코드 중 하나 또는 두 개만을 지정할 수 있다. 로그 수집 서버(101)는 과금이 분배되어야 하는 목적지와 과금액을 결정하기 위하여 로그에 포함된 각각의 과금 코드를 이용한다.
본 실시예에 따르면, 하나의 클라이언트 컴퓨터가 인쇄 잡들을 생성하여, 인쇄 잡들을 화상 처리 장치에 송신한다.
도 6은 본 실시예에 따른 스풀러 감시 모듈(407)의 기본 동작의 예시적인 흐름을 도시한다.
단계 601에서, 스풀러 감시 모듈(407)은 잡 리스트를 취득한다. 예를 들어, 스풀러 감시 모듈(407)은 Windows®에 제공되는 Win32 함수 EnumJob()을 호출한다. 이어서, 스풀러 감시 모듈(407)은 클라이언트 컴퓨터의 스풀링 영역에 스풀링된 인쇄 잡 리스트를 취득한다. 스풀러 감시 모듈(407)은 RAM(202) 또는 HD(205) 등의 저장부에 사전에 확보된 작업 영역에 인쇄 잡 리스트를 저장한다.
다음으로, 단계 602에서, 스풀러 감시 모듈(407)은 단계 601에서 취득된 잡 리스트에서 새 잡이 발생하였는지 여부를 판정한다. 보다 구체적으로는, CPU(200)는 후술하는 잡 리스트(408)를 단계 601에서 취득된 잡 리스트와 비교한다. 잡 리스트에 새 잡 ID가 추가되면, CPU(200)는 새 잡이 발생한 것으로 판정한다.
단계 602에서 새 잡이 발생한 것으로 판정하면, 스풀러 감시 모듈(407)은 단계 601에서 새로 취득된 잡 및 단계 603의 잡에 관한 속성 정보를 잡 리스트(408)에 추가한다. 잡 리스트(408)는 각각의 잡에 대응하는 하나의 잡 ID와 문서명 등의 잡에 관한 속성 정보를 갖는다. 잡 리스트(408)는 또한 각각의 잡에 대응하는 인쇄 시스템에 의해 잡 리스트(408)에 추가되는 과금 코드 등의 추가 정보를 갖는다. 잡 리스트(408)는, 스풀러 감시 모듈(407)이 기동되는 때에, RAM(202) 또는 HDD(205) 등의 저장 매체에 저장된다. 각 잡에 관한 속성 정보는 Windows®에 제공되는 Win32 함수 GetJob()에 의해 또는 프린터 시스템 고유의 방법으로 취득된다.
다음으로, 단계 604에서, 스풀러 감시 모듈(407)은 단계 603에서 생성된 잡 리스트(408)가 하나 이상의 잡을 갖는지 여부를 판정한다. 보다 구체적으로는, CPU(200)는 RAM(202) 또는 HD(205) 등의 저장 매체에 저장된 잡 리스트(408)를 조사하여, 그 잡의 레코드 수를 계산한다. 잡 리스트(408)가 어떠한 잡도 갖지 않는 것으로 판정되면, CPU(200)는 단계 601에 복귀한다.
단계 604에서 잡 리스트(408)가 하나 이상의 잡을 갖는 것으로 판정되면, 스풀러 감시 모듈(407)은 단계 605에서 UI 처리부(409)가 정보 입력 UI를 표시하였는지 여부를 판정한다. 예를 들어, 스풀러 감시 모듈(407)은 Windows®에 제공되는 Win32 함수 FindWindow()를 호출한다. UI 처리부(409)에 의해 수행되는 처리에 기초한 윈도우가 표시되었다면, 스풀러 감시 모듈(407)은 UI 처리부(409)가 정보 입력 UI를 표시한 것으로 판정한다. 정보 입력 UI가 표시되었다면, CPU(200)는 단계 601 내지 605의 처리를 반복한다.
단계 605에서 정보 입력 UI가 표시되지 않은 것으로 판정되면, 스풀러 감시 모듈(407)은 단계 606의 소정의 절차에서 UI 처리부(409)를 이용하여 CRT(음극선관) 등의 표시부(207)에 정보 입력 UI를 표시한다.
단계 602에서 새 잡이 발생하지 않은 것으로 판정되면, 스풀러 감시 모듈(407)은 단계 607에서 잡이 종료되었는지 여부를 판정한다. 보다 구체적으로는, CPU(200)는 단계 601에서 취득된 잡 리스트를 RAM(202) 또는 HD(205) 등의 저장 매체에 저장된 잡 리스트(408)와 비교한다. 잡 리스트에 잡이 존재하지 않으면, CPU(200)는 잡 리스트(408)에 저장된 잡들이 종료된 것으로 판정한다.
단계 607에서 잡이 종료된 것으로 판정되면, 스풀러 감시 모듈(407)은 단계 608에서 로그 수집 서버(101)에 로그를 통지한다. 보다 구체적으로는, CPU(200)는 RAM(202) 또는 HD(205) 등의 저장 매체에 저장된 잡 리스트(408)로부터 종료된 잡의 레코드를 추출한다. 이어서, CPU(200)는 도 5a 및 도 5b에 도시된 바와 같이 로그를 생성하여, 그 로그를 서버 통지 모듈(401)에 전달한다. CPU(200)는 연관된 레코드를 잡 리스트(408)에서 삭제한다. 이어서, CPU(200)는 변경된 잡 리스트(408)를 RAM(202) 또는 HD(205) 등의 저장 매체에 저장한다. 서버 통지 모듈(410)은 네트워크를 통해 로그 수집 서버(101)에 로그를 통지한다.
도 7은 본 실시예에 따른 포트 모니터(404)의 기본 동작의 예시적인 흐름을 도시한다. 포트 모니터(404)는 스풀러 처리에 의해 잡마다 호출된다. 잡 ID와 인쇄 목적지가 지정된다. 필요시, 분할된 잡 데이터가 포트 모니터(404)에 전달된다. 이어서, 포트 모니터(404)는 분할된 잡 데이터를 화상 처리 장치(406)에 순차적으로 송신한다.
단계 701에서, 포트 모니터(404)는 스풀러(403)로부터 전달된 잡 ID를 취득한다.
다음으로, 단계 702에서, CPU(200)는 상술된 스풀러 감시 모듈(407)에 의해 생성되어, RAM(202) 또는 HD(205) 등의 저장 매체 저장된 잡 리스트(408)를 검색하여, 단계 701에서 취득된 잡 ID를 찾는다.
잡 ID에 대응하는 잡이 잡 리스트(408)에서 발견되면, CPU(200)는 단계 703에서 그 발견된 잡의 부록 정보를 검색하여, 유효한 과금 코드가 이에 설정되어 있는지 여부를 판정한다. 보다 구체적으로는, "0" 이외의 수치값이 3개의 과금 코드의 필드 중 적어도 하나에 설정되어 있다면, CPU(200)는 유효한 과금 코드가 설정된 것으로 판정한다.
단계 703에서 CPU(200)가 유효한 과금 코드가 이에 입력되어 있는 것으로 판정한 경우, 포트 모니터(404)는 단계 704에서 네트워크를 통해 화상 처리 장치(406)에 잡을 송신한다.
CPU(200)가 단계 702에서 잡 ID에 대응하는 잡이 리스트에 등록되지 않은 것으로 판정하거나, CPU(200)가 단계 703에서 어떤 유효한 과금 코드도 입력되지 않은 것으로 판정하면, 포트 모니터(404)는 단계 705에서 잡을 일시정지한다. 보다 구체적으로는, 포트 모니터(404)는 마이크로소프트사 제조의 Windows®에 제공되는 Win32 함수 SetJob()을 이용하여 잡을 지정한다. 포트 모니터(404)는 잡의 처리를 일시정지하기 위하여 함수의 파라미터를 "JOB_CONTROL_PAUSE"로 지정한다. 따라서, 단계 705에서 잡이 일시정지되어, 이 인쇄를 수행하기 위해서 스풀러의 큐에서 잡의 차례가 될 때까지 그 잡에 대응하는 인쇄가 중단된다.
다음으로, 단계 706에서, 포트 모니터(404)는 잡을 재시작한다. 예를 들어, 포트 모니터(404)는 마이크로소프트사 제조의 Windows®에 제공되는 Win32 함수 SetJob()을 이용하여 잡을 지정한다. 포트 모니터(404)는 잡의 처리를 재시작하기 위하여 함수의 파라미터를 "JOB_CONTROL_RESTART"로 지정한다. 따라서, 다음 번에는 그 시작부터 잡이 수행된다. 스풀러가 큐로부터 선두 잡을 배출하는 때에 큐 내의 선두 잡이 중지되는 경우, 스풀러는 선두 잡을 생략하고, 다음 잡을 처리하기 시작한다.
도 8은 본 실시예에 따른 UI 제어부(409)의 기본 동작의 예시적인 흐름을 도시한다.
스풀러 감시 모듈(407)에 의해 UI 제어부(409)가 기동된다. 대안으로, 사용 자는 최적 타이밍에서 UI 제어부(309)를 기동시킬 수 있으며, UI 제어부(409)가 정보 입력 UI를 표시하도록 할 수 있다. 초기 표시 상태에서, 도 3에 도시된 잡 리스트 표시부(307)는 부록 정보와 함께 잡 리스트(408)에 저장된 모든 레코드를 표시한다. 전체 잡 리스트(408)가 잡 리스트 표시부(307)의 표시 영역 내에 맞지 않는다면, 잡 리스트 표시부(307) 내에 스크롤 바가 표시될 수 있다. 잡 리스트(408)에 리스트된 모든 잡들은 미선택 상태이며, 과금 코드 입력 필드(301)는 비어 있다.
단계 801에서, UI 제어부(409)는 버튼의 클릭과 같은 이벤트가 발생하였는지 여부를 판정한다.
예를 들어, 마이크로소프트사 제조의 Microsoft Developer Network (MSDN) library®에 기재된 방법에 따르면, 마우스 버튼의 클릭 또는 키보드 입력 등의 조작, 윈도우 내의 버튼 및 리스트 박스 등의 각각의 리소스를 고유하게 판정하기 위한 식별정보(ID)는 이벤트로 판정될 수 있다. 단계 801에서의 처리는 이벤트가 발생할 때까지 반복된다.
단계 801에서 이벤트가 발생한 것으로 판정되면, UI 제어부(409)는 단계 802에서 이벤트가 잡 선택인지 여부를 판정한다. 보다 구체적으로는, 단계 801에서 취득된 이벤트가, 도 3에 도시된 잡 리스트 표시부(307)의 레코드로 나타낸 잡 ID에 대응하는 마우스 버튼을 이용한 선택 조작을 포함하는 경우, UI 제어부(409)는 이벤트가 잡 선택인 것으로 판정한다.
단계 802에서 이벤트가 잡 선택인 것으로 판정되는 경우, UI 제어부(409)는 사용자가 표시부(307) 상에서 레코드가 선택된 것을 인식할 수 있도록 단계 803에서의 잡 선택 전후에 표시 색을 반전시킨다.
단계 802에서 이벤트가 잡 선택이 아닌 것으로 판정되면, UI 제어부(409)는 단계 804에서 "입력" 버튼이 클릭되었는지 여부를 판정한다. 보다 구체적으로는, 단계 801에서 취득된 이벤트가 도 3에 도시된 "입력" 버튼을 나타내는 ID에 대응하는 마우스 버튼을 이용한 선택 조작을 포함하면, UI 제어부(409)는 "입력" 버튼(302)이 클릭된 것으로 판정한다.
단계 804에서 "입력" 버튼(302)이 클릭된 것으로 판정된 경우, UI 제어부(409)는 단계 805에서 잡 리스트(408)에 과금 코드를 설정한다. CPU(200)는 도 3에 도시된 잡 리스트(408)를 검색하여 잡 리스트 표시부(307)에서 반전 표시되는 레코드를 찾는다. 이어서, CPU(200)는 발견된 레코드로부터 잡 ID를 취득한다. 또한, CPU(200)는 RAM(202) 또는 HD(205) 등의 저장 매체에 저장된 잡 리스트(408) 내의 잡 ID에 대응하는 레코드의 과금 코드 필드에 도 3에 도시된 제1 과금 코드, 제2 과금 코드, 및 제3 과금 코드의 값을 설정한다.
단계 804에서 "입력" 버튼(302)이 클릭되지 않은 것으로 판정되면, UI 제어부(409)는 단계 806에서 "일시정지" 버튼(303)이 클릭된 것으로 판정한다. 보다 구체적으로는, 단계 801에서 취득된 이벤트가 도 3에 도시된 "일시정지" 버튼(303)을 나타내는 ID와 마우스 버튼을 이용한 선택 조작을 포함하면, UI 제어부(409)는 "일시정지" 버튼(303)이 클릭된 것으로 판정한다.
UI 제어부(409)가 단계 806에서 "일시정지" 버튼(303)이 클릭된 것으로 판정 되면, CPU(200)는 표시부(307)에 반전 표시된 레코드에 대하여 단계 807에서 도 3의 잡 리스트(408)를 검색한다. 이어서, CPU(200)는 발견된 레코드로부터 잡 ID를 취득한다. 다음으로, CPU(200)는 예컨대 Windows®에 제공되는 Win32 함수 SetJob()을 이용하여 취득된 잡 ID에 대응하는 잡을 지정한다. 또한, CPU(200)는 잡의 처리를 일시정지시키기 위하여, 함수의 파라미터를 "JOB_CONTROL_PAUSE"로 지정한다.
UI 제어부(409)가 단계 806에서 "일시정지" 버튼(303)이 클릭된 것으로 판정하지 않는다면, UI 제어부(409)는 단계 808에서 "재개" 버튼(304)이 클릭된 것으로 판정한다. 보다 구체적으로는, 단계 801에서 취득된 이벤트가 도 3에 도시된 "재개" 버튼(304)을 나타내는 ID 및 마우스 버튼을 이용한 선택 조작을 포함한다면, UI 제어부(409)는 단계 808에서 "재개" 버튼(304)이 클릭된 것으로 판정한다.
UI 제어부(409)가 단계 808에서 "재개" 버튼(304)이 클릭된 것으로 판정한다면, CPU(200)는 단계 809에서 도 3에 도시된 잡 리스트(408)를 검색하여 잡 리스트 표시부(307) 상에서 반전 표시된 레코드를 찾는다. 이어서, CPU(200)는 발견된 레코드로부터 잡 ID를 취득한다. 다음으로, CPU(200)는, 예컨대, Windows®에 제공되는 Win32 함수 SetJob()을 이용하여 취득된 잡 ID에 대응하는 잡을 지정한다. 또한, CPU(200)는 잡 처리를 재개하기 위하여 함수의 파라미터를 "JOB_CONTROL_RESUME"로 지정한다. 결과적으로, 잡이 일시정지 중이면, 그 일시정지는 취소된다. 잡 데이터의 일부가 송신된 경우, 나머지 잡이 송신된다. 잡이 일시정지 중이 아닌 경우, 잡의 상태는 변하지 않는다.
단계 808에서 "재개" 버튼(304)이 클릭된 것으로 판정하지 않으면, UI 제어부(409)는 단계 810에서 "삭제" 버튼(305)이 클릭되었는지 여부를 판정한다. 보다 구체적으로는, 단계 801에서 취득된 이벤트가 도 3에 도시된 "삭제" 버튼(305)을 나타내는 ID 및 마우스 버튼을 이용한 선택 조작을 포함한다면, UI 제어부(409)는 "삭제" 버튼(305)이 클릭된 것으로 판정한다.
UI 제어부(409)가 단계 810에서 "삭제" 버튼(305)이 클릭된 것으로 판정한다면, CPU(200)는 단계 811에서 잡 리스트 표시부(307) 상의 반전 표시된 레코드에 대하여 도 3에 도시된 잡 리스트를 검색한다. 이어서, CPU(200)는 발견된 레코드로부터 잡 ID를 취득한다. 다음으로, CPU(200)는 예컨대 Windows®에 제공되는 Win32 함수 SetJob()를 이용하여, 취득된 잡 ID에 대응하는 잡을 지정한다. 또한, CPU(200)는 잡의 처리를 삭제하기 위하여 함수의 파라미터를 "JOB_CONTROL_DELETE"로 지정한다.
단계 810에서 "삭제" 버튼(304)이 클릭되지 않은 것으로 판정한다면, UI 제어부(409)는 단계 812에서 "갱신" 버튼(306)이 클릭되었는지 여부를 판정한다. 보다 구체적으로는, 단계 801에서 취득된 이벤트가 도 3에 도시된 "갱신" 버튼(305)을 나타내는 ID 및 마우스 버튼을 이용한 선택 조작을 포함한다면, UI 제어부(409)는 "갱신" 버튼(306)이 클릭된 것으로 판정한다.
단계 812에서 "갱신" 버튼(306)이 클릭된 것으로 판정한다면, UI 제어부(409)는 단계 813에서 잡 리스트를 재취득한다. 예를 들어, UI 제어부(409)는 Windows®에 제공되는 Win32 함수 EnumJob() 또는 GetJob() 또는 인쇄 시스템 고유 의 방법으로 호출한다. 따라서, UI 제어부(409)는 인쇄 잡의 리스트 및 부록 정보를 취득한다. 이어서, UI 제어부(409)는 취득된 잡 정보에 따라서 RAM(202) 또는 HD(205) 등의 저장부에 사전에 확보된 잡 리스트(408)의 정보를 갱신한다.
다음으로, 단계 814에서, UI 제어부(409)는 단계 813에서 갱신된 잡 리스트(408)에 대한 정보에 따라서 도 3에 도시된 잡 리스트 표시부(307)의 표시를 갱신한다.
상술된 방법에 따르면, 제1 실시예의 잡 리스트를 이용하는 때에 복수의 잡에 대하여 추가 정보의 입력과 조작이 수행될 수 있다. 결과적으로, 편리성이 강화될 수 있다. 또한, 입력중인 추가 정보를 대기하기 때문에 스풀러에서 잡 처리가 중단되지 않는다. 또한, 잡에서 추가 정보가 입력되지 않는 경우라도, 그 잡을 삭제하지 않고 후속 잡들이 계속적으로 수행될 수 있다.
<제2 실시예>
본 발명의 제2 실시예에 따르면, 잡 정보가 정보 입력 UI로부터 입력되는 인쇄 잡을 우선적으로 수행하도록 구성되는, 인쇄 제어 장치 및 방법의 개선이 제공된다. 예를 들어,Windows®에 따른 스풀링 시스템에 있어서, 큐에 저장된 인쇄 잡들의 우선순위가 설정된다. 각각의 큐에 저장된 인쇄 잡이 지정될 수 있으며, Windows®에 제공되는 Win32 함수 GetJob() 및 SetJob()을 이용하여 그 우선순위를 취득 및 설정할 수 있다. 각 큐에 저장된 인쇄 잡의 우선순위는 1의 가장 낮은 레벨로부터 99의 가장 높은 레벨까지의 범위로 설정될 수 있다. 일반적으로, 각 인쇄 잡의 우선순위는 인쇄 잡들이 스풀링되는 때에 1의 가장 낮은 레벨로 판정 및 설정된다.
이하의 설명에서, 제1 실시예와는 다른 제2 실시예의 차이점만을 설명한다. 도 8에 도시된 UI 처리부의 기본 동작 흐름의 개선점, 보다 구체적으로는, 단계 805에서의 "과금 코드 설정" 처리의 기본 동작 흐름의 개선점을 도 9를 참조하여 이하에서 설명한다. 이하의 설명에서, 모든 인쇄 잡 각각의 우선순위의 초기값은 1로 설정되는 것으로 가정한다.
단계 901에서, UI 제어부(409)는 잡 리스트(408) 내에 리스트된 각각의 인쇄 잡에 과금 코드를 설정한다. 사전에 제공된 방법에 따르면, CPU(200)는 도 3에 도시된 잡 리스트 표시부(307)를 검색하여, 그에 반전 표시되는 레코드를 찾는다. 또한, CPU(200)는 발견된 레코드로부터 잡 ID를 취득한다. 다음으로, CPU(200)는 도 3에 도시된 제1 내지 제3 과금 코드 각각의 값을 RAM(202) 및 HD(205) 등의 저장 매체에 저장된 잡 리스트(408)에서 발견된 레코드의 과금 코드 필드 중 연관된 것으로 각각 설정한다.
다음으로, 단계 902에서, UI 제어부(409)는 단계 901에서 과금 코드가 설정되는 각 잡의 우선순위를 증가시킨다. 예를 들어, UI 제어부(409)는 마이크로소프트사 제조의 Windows®에 제공되는 Win32 함수 GetJob()을 이용하여 이러한 인쇄 잡 각각의 우선순위를 취득한다. 이어서, UI 제어부(409)는 Win32 함수 SetJob()을 이용하여 이러한 인쇄 잡 각각의 새로운 우선 순위를, 취득된 우선 순위에 1이 추가된 값으로 설정한다.
결과적으로, 스풀러의 큐에 저장된 인쇄 잡 중에서 과금 코드가 설정된 각각 의 인쇄 잡의 우선순위가 1씩 증가된다. 따라서, 큐에서 보다 높은 우선순위를 갖는 잡, 즉, 과금 코드가 설정된 잡이 우선적으로 처리된다. 과금 코드가 설정되지 않은 잡이 큐에서 선행하는 인쇄 잡인 경우에도, 큐에서 과금 코드가 설정된 후속하는 인쇄 잡이 보다 먼저 처리된다.
제2 실시예에 따르면, 추가 정보가 부가되는 잡이 우선적으로 수행되도록 각 인쇄 잡에 우선순위가 설정된다. 보다 구체적으로는, 스풀러의 큐에서의 스풀링의 순서에 무관하게, 과금 코드가 설정된 인쇄 잡이 과금 코드가 설정되지 않은 인쇄 잡보다 먼저 처리된다. 결과적으로, 인쇄 잡의 인쇄 처리는 인쇄 잡에 대응하는 추가 정보의 입력을 대기함으로써 야기되는 처리에서의 정체(stagnation)를 방지할 수 있다.
<제3 실시예>
사용자가 인쇄 잡에 대한 인쇄 명령을 잘못 내려, 과금 코드 등의 추가 정보를 입력하지 않고 인쇄 잡을 수행하지 못한 채로 남아있는 경우, 스풀러(403)에서 처리되지 않고 인쇄 잡이 큐에 남아 있을 수 있다. 따라서, 본 발명의 제3 실시예에 따르면, 임의의 시간동안 입력되지 않은 추가 정보, 즉, 인쇄 잡이 스풀러(403)의 큐에서 자동 삭제되도록, 인쇄 제어 방법의 개선점이 제공된다.
이하의 설명에서, 제1 및 제2 실시예와는 다른 제3 실시예의 차이점만을 설명한다. 도 6에 도시된 스풀러 감시 모듈(407)에서의 처리의 기본 흐름 중 단계 603의 "잡 리스트 발생" 처리의 개선을 도 10을 참조하여 이하에서 설명한다.
단계 1001에서, 스풀러 감시 모듈(407)은 도 6에 도시된 단계 601에서 취득 된 인쇄 잡과 취득된 인쇄 잡에 관한 속성 정보를 잡 리스트(408)에 부가한다. 잡 리스트(408)는 예컨대 잡 ID 및 문서명 등의 각 인쇄 잡에 대응하는 잡에 관한 속성 정보를 포함한다. 또한, 잡 리스트(408)는 인쇄 시스템에 의해 인쇄 잡에 부가되는 과금 코드 및 각 인쇄 잡에 대응하는 "삭제 타이머 시작 시간" 등의 추가 정보를 포함한다. 스풀러 감시 모듈(407)이 기동되는 때에, 잡 리스트(408)는 RAM(202) 및 HD(205) 등의 저장 매체에 저장된다. 잡에 관한 속성 정보는 마이크로소프트사 제조의 Windows®에 제공되는 Win32 함수 GetJob() 또는 인쇄 시스템 고유의 방법으로 취득된다. "삭제 타이머 시작 시간"을 저장하는 필드의 초기 상태는 빈 칸으로 가정한다.
다음으로, 단계 1002에서, CPU(200)는 단계 1001에서 RAM(202) 및 HD(205) 등의 저장 매체에 저장된 잡 리스트(408) 내의 레코드 수를 조사한다. 레코드의 수가 0이면, CPU(200)는 "잡 리스트 생성 처리"를 종료한다. 그렇지 않으면, CPU(200)는 단계 1003 내지 1009로 이루어진 처리를 반복하고, 모든 레코드를 순차적으로 판독한다. 단계 1002에서 모든 레코드가 판독된 것으로 판정하면, CPU(200)는 "잡 리스트 생성 처리"를 종료한다.
다음으로, 단계 1003에서, CPU(200)는 단계 1001에서 RAM(202) 및 HD(205) 등의 저장 매체에 저장된 잡 리스트(408)로부터 하나의 레코드를 판독하고, 판독된 레코드를 RAM(202) 및 HD(205) 등의 저장 매체에 확보된 작업 영역에 저장한다.
다음으로, 단계 1004에서, 스풀러 감시 모듈(407)은 단계 1003에서 작업 영역에 저장된 하나의 레코드의 데이터를 조사한다. 이어서, 스풀러 감시 모듈(407) 은 레코드에 대응하는 잡이 새 잡인지 여부를 판정한다. "삭제 타이머 시작 시간"을 저장하는 필드가 빈 칸이면, CPU(200)는 그 잡이 새 잡인 것으로 판정한다.
단계 1004에서 잡이 새 잡인 것으로 판정되면, CPU(200)는 현재 시간에 대하여 RAM(202) 및 HD(205) 등의 저장 매체에 저장된 잡 리스트(408)의 연관 레코드에 "삭제 타이머 시작 시간"을 설정하고, 단계 1005에서 그 설정된 "삭제 타이머 시작 시간"을 저장한다.
단계 1004에서 잡이 새 잡이 아닌 것으로 판정되면, 스풀러 감시 모듈(407)은 단계 1003에서 작업 영역에 저장된 하나의 레코드의 데이터를 조사하여, 타임아웃이 발생하는지의 여부를 판정한다. 보다 구체적으로는, CPU(200)는 작업 영역에 저장된 하나의 레코드에 기록된 "삭제 타이머 시작 시간"을 현재의 시간과 비교한다. 그 차이가 소정 타임아웃 값을 초과하면, CPU(200)는 타임아웃이 발생한 것으로 판정한다.
단계 1005에서 타임아웃이 발생하지 않은 것으로 판정하면, CPU(200)는 단계 1002 내지 1009로 이루어진 처리를 반복한다.
단계 1005에서 타임아웃이 발생한 것으로 판정하면, CPU(200)는 단계 1006에서 RAM(202) 및 HD(205) 등의 저장부에 저장된 잡 리스트(408)로부터 현재 조사되는 레코드를 삭제한다. 이어서, CPU(200)는 저장부가 잡 리스트(408)를 저장하도록 한다.
다음으로, 단계 1007에서, 스풀러 감시 모듈(407)은 스풀러(403)의 큐로부터 그 잡을 삭제한다. 예를 들어, CPU(200)는 Windows®에 제공되는 Win32 함수 SetJob()를 이용하여 잡을 지정한다. 이어서, CPU(200)는 잡의 처리를 삭제하기 위하여 함수의 파라미터를 "JOB_CONTROL_DELETE"로 지정한다. 그 다음, CPU(200)는 단계 1002 내지 1009로 이루어진 처리를 반복한다.
전술한 바와 같이, 제3 실시예에 따르면, 추가 정보가 입력되지 않은 인쇄 잡은 스풀러(403)의 큐에서 수행되지 않은 채로 남지 않게 된다.
<제4 실시예>
본 발명의 제4 실시예에 따르면, 사용자가 인쇄 잡에 대하여 과금 코드 등의 추가 정보를 잘못 부가한 경우, 사용자가 인쇄 명령(b)의 입력을 종료한 후에도 추가 정보가 변경될 수 있도록 인쇄 제어 방법의 개선점이 제공된다.
이하의 설명에서, 제1 내지 제3 실시예와는 다른 제4 실시예의 차이점만을 설명한다. 도 6에 도시된 스풀러 감시 모듈(407)의 처리의 기본 흐름 중 단계 608의 "로그 송신" 처리의 개선점을 도 11을 참조하여 이하에서 설명한다.
잡 리스트(408)는 잡에 관한 속성 정보, 예컨대, 각 인쇄 잡에 대응하는 문서명과 잡 ID를 포함한다. 또한, 잡 리스트(408)는 각 인쇄 잡에 대응하는 "송신-타이머 시작 시간"과 인쇄 시스템에 의해 인쇄 잡에 부가되는 과금 코드 등의 추가 정보를 포함한다. 스풀러 감시 모듈(407)이 기동되는 때에, 잡 리스트는 RAM(202) 및 HD(205) 등의 저장 매체에 저장된다. 잡에 관한 속성 정보는 Windows®에 제공되는 Win32 함수 GetJob() 또는 인쇄 시스템 고유의 방법으로 취득된다. "송신-타이머 시작 시간"을 저장하는 필드의 초기 상태는 빈 칸으로 가정한다.
단계 1101에서, 스풀러 감시 모듈(407)은 송신-타이머 시작 시간이 설정되었 는지 여부를 판정한다. 보다 구체적으로는, CPU(200)는 도 6에 도시된 단계 607에서 RAM(202) 및 HD(205) 등의 저장 매체에 저장된 잡 리스트(408)로부터 종료된 것으로 판정된 잡에 대응하는 레코드를 패치한다. 이어서, CPU(200)는 패치된 레코드로부터 "송신-타이머 시작 시간"을 판독하고, 판독된 "송신-타이머 시작 시간"을 작업 영역에 저장한다. 작업 영역의 "송신-타이머 시작 시간"을 저장한 필드가 빈 칸이 아닌 것으로 판정되면, CPU(200)는 송신-타이머 시작 시간이 설정된 것으로 판정한다.
단계 1101에서 송신-타이머 시작 시간이 설정된 것으로 판정되면, 스풀러 감시 모듈(407)은 단계 1102에서 타임아웃이 발생하였는지 여부를 판정한다. 즉, 단계 1101에서 작업 영역에 저장된 "송신-타이머 시작 시간"이 현재의 시간과 비교된다. 그 차이가 타임아웃에 대한 소정의 임계치를 초과하면, 스풀러 감시 모듈(407)은 타임아웃이 발생한 것으로 판정한다.
단계 1102에서 타임아웃이 발생한 것으로 판정되면, 스풀러 감시 모듈(407)은 단계 1103에서 로그 수집 서버(1101)에 로그를 통지한다. 보다 구체적으로는, CPU(200)는 RAM(202) 및 HD(205) 등의 저장 매체에 저장된 잡 리스트(408)로부터 종료된 잡의 레코드를 패치한다. 이어서, CPU(200)는 도 5a 및 도 5b에 도시된 로그를 생성하여, 그 로그를 서버 통지 모듈(410)에 전달한다. CPU(200)는 잡 리스트(408)로부터 연관 레코드를 삭제하고, RAM(202) 및 HD(205) 등의 저장 매체에 잡 리스트(408)를 저장한다. 서버 통지 모듈(410)은 네트워크를 통해 로그 수집 서버(101)에 로그를 통지한다.
단계 1102에서 타임아웃이 발생하지 않은 것으로 판정되면, 스풀러 감시 모듈(407)은 "로그 송신" 처리를 종료한다.
단계 1101에서 송신-타이머 시작 시간이 설정되지 않은 것으로 판정되면, 처리는 단계 1104로 진행핸다. CPU(200)는 현재의 시간에 대하여 잡 리스트(408)의 관련 레코드에 기록된 "송신-타이머 시작 시간"을 설정한다. 이어서, CPU(200)는 저장부가 잡 리스트(408)를 저장하도록 한다.
제4 실시예에 따르면, 로그를 송신할 타이밍을 사전에 설정함으로써, 인쇄 명령이 발행된 후에(인쇄 잡의 완료시) 과금 코드 등의 추가 정보가 일정 시간 동안 변경될 수 있다.
<제5 실시예>
다수의 잡이 스풀러(403)의 큐에 스풀링되지 않는 경우, 스풀러(403)의 큐에서의 잡 처리의 순서가, 사용자가 잡에 대응하는 추가 정보를 입력하는 것보다 먼저이다. 따라서, 잡에 대응하는 추가 정보가 입력되지 않은 것으로 판정될 수 있다. 이러한 경우, 제1 실시예에 따르면, 잡은 일시정지된다. 결과적으로, 사용자는 잡의 일시정지 상태를 취소할 필요가 있다. 제3 실시예에 따르면, 잡은 자동 삭제될 수 있다.
제5 실시예에 대한 이하의 설명에서, 제1 내지 제4 실시예와는 다른 제5 실시예의 차이점만을 이하에 설명한다. 보다 구체적으로는, 도 8에 도시된 UI 처리부(409)에서 기본 동작을 나타낸 흐름도 중에서 단계 803의 "반전 표시" 처리 및 단계 805의 "과금 코드 설정" 처리에 대한 개선점을 도 12 및 도 13을 참조하여 이 하에서 설명한다.
"반전 표시" 처리에 있어서, UI 처리부(409)는 단계 1201에서 잡을 일시정지시킨다. 예를 들어, UI 처리부(409)는 도 8에 도시된 단계 802에서 취득된 ID에 대응하는 잡의 처리를 일시정지시키기 위해, Windows®에 제공되는 Win32 함수 SetJob()을 이용하여, 함수의 파라미터를 "JOB_CONTROL_PAUSE"로 지정한다.
다음으로, 단계 1202에서, UI 처리부(409)는 사전에 제공된 방법에 따라서 레코드를 반전 표시한다. 이어서, UI 처리부(409)는 "반전 표시" 처리를 종료한다.
"과금 코드 설정" 처리에 있어서, UI 제어부(409)는 단계 1301에서 잡 리스트(408)의 각 잡의 과금 코드를 설정한다. CPU(200)는 표시부(307)를 검색하여, 잡 리스트에 반전 표시되는 레코드를 찾는다. 이어서, CPU(200)는 발견된 레코드로부터 잡 ID를 취득한다. 그 다음, CPU(200)는 RAM(202) 및 HD(205) 등의 저장부에 저장된 잡 리스트(408)의 연관 레코드의 과금 코드 필드에 도 3에 도시된 제1, 제2 및 제3 과금 코드의 값을 설정한다.
다음으로, UI 제어부(409)는 단계 1302에서 잡을 재개한다. UI 제어부(409)는 Windows®에 제공되는 Win32 함수 SetJob()을 이용하여, 잡의 처리를 재개하도록 함수의 파라미터를 "JOB_CONTROL_RESUME"으로 지정한다. 잡이 일시정지되는 경우, 일시정지는 취소된다. 잡 데이터의 일부가 송신된 경우, 장치는 나머지 잡 데이터를 송신하기 시작함으로써 잡을 재개한다. 잡이 일시정지되지 않은 경우, 잡의 상태는 변하지 않는다.
제5 실시예는, 선택된 잡에 대응하는 과금 코드 등의 추가 정보가 입력되는 동안 선택된 잡의 삭제를 방지할 수 있다. 또한, 추가 정보가 입력되는 잡이 자동 재개되어, 제5 실시예는 잡의 재개를 위한 사용자의 노력을 줄일 수 있다.
<제6 실시예>
포트 모니터(404)를 이용하지 않고 인쇄가 수행되는 경우, 예컨대, Novell 사에 의해 개발된 NetWare®에 기초한 프린터 서버를 이용하여 인쇄가 수행되는 경우, 클라이언트 컴퓨터는 포트 모니터(404)로부터 송신된 잡에 추가 정보가 설정되어 있음을 확인할 수 없다. 따라서, 클라이언트 컴퓨터는 추가 정보가 확실히 설정된 잡만을 허용하여 인쇄를 수행할 수 없다. 따라서, 추가 정보가 잡에 설정되어 있는지 여부를 프린터 및 복사기 등의 화상 인쇄 처리 장치가 확인하는 인쇄 제어 장치의 개선점이 제공된다.
도 3, 도 5a, 도 5b, 도 14, 도 15 및 도 16을 참조하여 제6 실시예를 설명한다. 전술한 다른 실시예들도 제6 실시예에 적용될 수 있다. 이하의 설명에서, 제1 내지 제5 실시예와는 다른 제6 실시예의 차이점만을 설명한다.
도 14는 인쇄 시스템을 구성하는 클라이언트 컴퓨터를 동작시키는 모듈, 모듈과 화상 처리 장치 간의 관계, 및 본 발명의 제6 실시예에 따른 잡의 흐름의 일례를 도시한다. 클라이언트 컴퓨터, 예컨대, 광범위하게 사용되는 퍼스널 컴퓨터(정보 처리 장치에 대응)는 OS로서 Windows®를 사용한다. 또한, 클라이언트 컴퓨터는 인쇄 처리 기능을 갖는 Word® 등의 애플리케이션 프로그램(인쇄 애플리케이션 프로그램)(1401)을 기동시킨다. 사용자는 키보드(206) 및 포인팅 장치(209) 등 의 지시 장치를 이용하여 문서를 생성한다. 이어서, 사용자는 애플리케이션 프로그램에 제공되는 인쇄 명령부를 이용하여 문서의 인쇄를 명령한다. 애플리케이션 프로그램(1401)은 인쇄 데이터를 프린터 드라이버(1402)에 전달하여, 인쇄 잡을 생성한다. 프린터 드라이버(1402)는 생성된 인쇄 잡을 스풀러(1403)에 전달한다. 스풀러(1403)는 복수의 드라이버로부터 전달된 인쇄 잡들을 스풀링하여, 사용자에 의해 지정되는 프린터 각각에 대응하는 잡을 스케줄링한다. 이어서, 스풀러(1403)는 프린터에 접속된 포트에 대응하는 포트 모니터(1404)에 인쇄 잡을 전달한다. 포트 모니터(1404)는 이에 따라 포트(예컨대, USB(범용 직렬 버스) 또는 네트워크 포트)에 대응하는 장치 드라이버(1405)를 호출하여, 그 잡을 장치 드라이버(1405)에 전달한다. 장치 드라이버(1405)는 전달된 인쇄 잡을 접속부(210) 및 네트워크를 통해 화상 처리 장치(1406)에 전송한다.
화상 처리 장치(1406)는 클라이언트 컴퓨터로부터 전달된 인쇄 잡을 저장하고, 클라이언트 컴퓨터가 화상 처리 장치(1406)에 인쇄 잡의 재개를 명령할 때까지 인쇄 잡을 일시정지시킨다.
장치 감시 모듈(1407)은 클라이언트 컴퓨터가 부팅되는 때에 자동으로 동작하기 시작한다. 장치 감시 모듈(1407)은 모듈에 사전에 제공된 장치 감시 기능을 이용하여 화상 처리 장치(1406)의 잡의 상태를 감시한다. 프린터 큐에 잡들이 축적되는 경우, 잡을 나타내는 정보가 상태, 사이즈, 오너, 문서명, 일자 및 시간을 나타내는 부록 정보와 함께 잡 리스트(1408)에 저장된다. 동시에, UI 처리부(1409)는 CRT 등의 표시부(207)에 정보 입력 UI를 표시한다. UI 처리부(1409)는 도 3에 도시된 정보 입력 다이얼로그 박스를 클라이언트 컴퓨터의 표시부(207)에 표시한다. 입력 정보가 사용자로부터 수신되는 때에, UI 처리부(1409)는 입력 정보를 잡 리스트(1408)에 반영한다. 또한, 장치 감시 모듈(1407)은 화상 처리 장치(1406)에 잡의 재개를 명령하고, 인쇄를 종료한 잡의 로그를 서버 통지 모듈(1410)에 전달한다. 따라서, 로그 수집 서버(101)에 로그가 통지된다.
화상 처리 장치(1406)의 기본 흐름을 도 15를 참조하여 이하에 설명한다. 화상 처리 장치(1406)는 클라이언트 컴퓨터로부터 잡 조작 커맨드를 수신하는 기능 및 잡의 상태가 변경되는 때에 잡의 변경을 클라이언트 컴퓨터에 통지하는 기능을 갖는다. 상태의 변경을 통지하는 이벤트는 화상 처리 장치(1406)에서 잡을 고유하게 결정하는 잡 ID와 잡 상태를 나타내는 정보를 포함한다. 또한, 각각의 잡에 대응하는 인쇄 데이터가 PRAM(222) 등의 저장 매체에 확보된 인쇄 큐에 축적될 수 있다. 따라서, 주어진 인쇄 잡이 패치되어, 일시정지, 재개, 삭제, 및 인쇄할 수 있다.
단계 1501에서, 화상 처리 장치(1406)는 데이터가 수신되는지 여부를 판정한다. 접속부(226)를 경유하여 양방향 인터페이스(211)를 통해 네트워크로부터 데이터를 수신하는 경우, 화상 처리 장치(1406)는 PRAM(222) 등의 저장부에 확보된 작업 영역에 데이터를 저장한다. 화상 처리 장치(1406)는 데이터를 수신할 때까지 처리를 반복한다.
단계 1501에서 데이터가 수신되는 것으로 판정되면, 화상 처리 장치(1406)는 단계 1502에서 그 수신된 데이터가 잡을 나타내는지 여부를 판정한다. 보다 구체 적으로는, 화상 처리 장치(1406)는 PCPU(220)를 사용하여 PRAM(222) 등의 저장부에 확보된 작업 영역에 저장된 수신 데이터를 조사한다. 수신된 데이터가 소정의 잡 포맷을 갖는다면, 화상 처리 장치(1406)는 수신된 데이터가 잡을 나타내는 것으로 판정한다.
단계 1502에서 수신된 데이터가 잡을 나타내는 것으로 판정되면, 화상 처리 장치(1406)는 소정의 절차를 따라서 단계 1503에서 잡을 일시정지하고, PRAM(222) 등의 저장부에 잡을 저장한다.
다음으로, 단계 1504에서, 화상 처리 장치(1406)는 PCPU(220)를 사용하여 "일시정지"의 잡 상태를 갖는 잡의 상태 변경 이벤트를 생성한다. 이어서, 생성된 상태 변경 이벤트를 나타내는 데이터가 PRAM(222) 등의 저장부에 확보된 작업 영역에 저장된다. 이어서, 처리는 단계 1508로 진행한다.
단계 1502에서 수신된 데이터가 잡을 나타내지 않는 것으로 판정하면, 단계 1505에서, 화상 처리 장치(1406)는 수신된 데이터가 재개 커맨드를 나타내는지 여부를 판정한다. 보다 구체적으로는, 화상 처리 장치(1406)는 PCPU(220)를 이용하여 PRAM(222) 등의 저장부에 확보된 작업 영역에 저장된 수신 데이터를 조사한다. 수신 데이터가 소정의 커맨드 포맷을 가지며, 커맨드의 종류가 잡의 재개인 경우, 화상 처리 장치(1406)는 수신된 데이터가 "재개 커맨드"를 나타내는 것으로 판정한다.
다음으로, 단계 1506에서, 화상 처리 장치(1406)는 PRAM(222) 등의 저장부에 확보된 큐로부터 단계 1505에서 취득된 커맨드에 포함된 잡 ID에 대응하는 잡을 패 치하여, 인쇄를 수행한다. 예를 들어, 화상 처리 장치(1406)는 소정의 화상 처리가 수행되는 화상 데이터(비트맵 데이터)로 인쇄 잡을 래스터라이징하고, 프린터 엔진이 인쇄출력을 수행하도록 한다.
다음으로, 단계 1507에서, 화상 처리 장치(1406)는 단계 1506에서 인쇄가 수행된 잡에 대응하는 잡 종료 이벤트를 생성한다. 즉, 화상 처리 장치(1406)는 PCPU(220)를 이용하여, 잡 ID 정보로서 단계 1506에서 인쇄가 수행된 잡의 잡 ID를 가지며, PRAM(222) 등의 저장부에 확보된 작업 영역에 잡 상태 정보로서 "인쇄 종료" 상태를 나타내는 정보를 갖는 상태 변경 이벤트 데이터를 저장한다.
단계 1508에서, 화상 처리 장치(1406)는 PCPU(220)를 이용하여, PRAM(222) 등의 저장부에 단계 1504 및 1507에서 확보된 작업 영역에 저장된 이벤트 데이터를 패치한다. 이어서, 화상 처리 장치(1406)는 패치된 데이터를 접속부(226) 및 양방향 인터페이스(211)를 통해 클라이언트 컴퓨터에 패치된 데이터를 송신한다.
이하, 장치 감시 모듈(1407)의 기본 흐름을 도 16을 참조하여 설명한다.
단계 1601에서, 장치 감시 모듈(1407)은 잡 리스트를 취득한다. PCPU(200)는 접속부(210)를 경유하여 양방향 인터페이스(211)을 통해 화상 처리 장치(1406)로부터 통지되는 잡 상태 변경 이벤트를 수신한다. 장치 감시 모듈(1407)은 수신된 이벤트를 RAM(202) 또는 HD(205) 등의 저장부에 확보된 작업 영역에 저장한다.
다음으로, 단계 1602에서, 장치 감시 모듈(1407)은 잡이 발생하는지의 여부를 판정한다. 보다 구체적으로는, PCPU(200)는 RAM(202) 또는 HD(205) 등의 저장부에 단계 1601에서 확보된 작업 영역에 저장된 이벤트를 조사한다. 이벤트로 나 타낸 상태가 "일시정지" 상태인 경우, 장치 감시 모듈(1407)은 새 잡이 발생한 것으로 판정한다.
단계 1602에서 새 잡이 발생하지 않은 것으로 판정되면, 장치 감시 모듈(1407)은 단계 1607에서 잡이 종료되었는지 여부를 판정한다. 보다 구체적으로는, CPU(200)는 단계 1601에서 저장 매체에 확보된 작업 영역에 저장된 이벤트를 조사한다. 상태가 "인쇄 종료" 상태인 것으로 판정되면, CPU(200)는 인쇄가 그 잡에서 종료된 것으로 판정한다.
단계 1607에서 잡이 종료된 것으로 판정되면, 장치 감시 모듈(1407)은 단계 1608에서 로그 수집 서버(101)에 로그를 통지한다. 보다 구체적으로는, CPU(200)는 RAM(202) 또는 HD(205) 등의 저장 매체에 저장된 잡 리스트(1408)로부터 종료된 잡의 레코드를 패치한다. 이어서, CPU(200)는 도 5a에 도시된 로그를 생성하여, 그 로그를 서버 통지 모듈(1410)에 전달한다. CPU(200)는 잡 리스트(1408)로부터 연관 레코드를 삭제한다. 이어서, CPU(200)는 RAM(202) 또는 HD(205) 등의 저장 매체에 잡 리스트(1408)를 저장한다. 서버 통지 모듈(1410)은 네트워크를 통해 로그 수집 서버(101)에 로그를 통지한다.
단계 1602에서 새 잡이 발생한 것으로 판정되고, 단계 1607에서 잡이 종료되지 않은 것으로 판정되면, 처리는 단계 1603으로 진행한다. 단계 1603에서, 장치 감시 모듈(1407)은 단계 1601에서 취득된 이벤트에 포함된 잡 상태와 잡 ID, 및 오너 및 문서명 등의 부록 정보를 잡 리스트(1408)에 추가한다. 잡 리스트(1408)는 각 잡에 대응하는 잡 ID, 문서명 등을 나타내는 속성 정보를 포함하며, 또한 각 잡 에 대응하여 인쇄 시스템에 의해 부가되는 과금 코드 등을 나타내는 추가 정보를 포함한다. 장치 감시 모듈(1407)이 기동되는 때에, 잡 리스트(1408)가 RAM(202) 또는 HD(205) 등의 저장 매체의 소정의 영역에 저장된다.
다음으로, 단계 1604에서, 장치 감시 모듈(1407)은 단계 1603에서 생성된 잡 리스트(1408)가 하나 이상이 잡을 포함하는지 여부를 판정한다. 보다 구체적으로는, CPU(200)는 RAM(202) 또는 HD(205) 등의 저장 매체에 저장된 잡 리스트(1408)를 조사하여, 잡의 레코드 수를 계산한다. 장치 감시 모듈(1407)이 잡 리스트(1408)가 하나 이상의 잡을 포함하지 않는 것으로 판정하는 경우, 처리는 단계 1601로 진행한다.
단계 1604에서 잡 리스트(1408)가 하나 이상의 잡을 포함하는 것으로 판정되는 경우, 장치 관리 모듈(1407)은 단계 1605에서 UI 처리부(1409)에 의해 정보 입력 UI가 표시되었는지 여부를 판정한다. 예를 들어, 장치 감시 모듈(1407)은 마이크로소프트사 제조의 Windows®에 제공되는 Win32 함수 FindWindow()를 호출한다. UI 처리부(1409)에 기초한 윈도우가 존재하면, 장치 감시 모듈(1407)은 정보 입력 UI가 표시된 것으로 판정한다. 정보 입력 UI가 표시된 경우, 단계 1601 내지 1608로 이루어진 처리가 반복된다.
단계 1605에서 정보 입력 UI가 표시되지 않은 것으로 판정되면, 단계 1606에서, 장치 감시 모듈(1407)은 소정의 절차에 따라서 UI 처리부(1409)가 정보 입력 UI를 표시 및 제어하도록 한다.
화상 처리 장치의 잡 상태를 클라이언트 컴퓨터에 통지하는 방법의 일례로 서, 화상 처리 장치가 임의의 타이밍에서 이벤트를 클라이언트 컴퓨터에 통지(이벤트를 트랩)하도록 구성되는 방법을 설명하였다. 그러나, 클라이언트 컴퓨터가 잡 정보를 취득하는 타이밍을 클라이언트 컴퓨터가 지정하도록 본 발명이 구성되는 경우에도, 본 발명은 이러한 방법에 적용 가능하다.
본 발명의 제6 실시예에 따르면, 잡이 송신되기 전에 클라이언트 컴퓨터에 의해 추가 정보가 입력될 수 없는 경우에도, 화상 처리 장치에 의해 인쇄가 수행되기 전에 추가 정보가 입력될 수 있다. 추가 정보는 화상 처리 장치에서 입력될 수 있다.
<그 밖의 실시예들>
본 발명은, 예를 들어, 복수의 장치를 포함하는 시스템 또는 단일 장치로 구성되는 장치 중 어느 하나에 적용될 수 있다. 예를 들어, 본 발명은 프린터, 팩스 장치, PC, 및 서버와 클라이언트 컴퓨터를 포함하는 컴퓨터 시스템에 적용될 수 있다.
전술한 실시예들에 따른 처리는, 예를 들어, 인쇄 장치에서 수행될 수 있다. 이 경우, 사용자는 인쇄 장치에 제공되는 입력 패널 등으로부터 과금 코드 등을 설정할 수 있다. 이 경우, 인쇄 데이터는 목적지 인쇄 장치로 기능하는 화상 엔진으로 출력된다. 또한, 인쇄 장치 내의 큐(저장 영역)는 감시 항목으로서 감시 모듈에 의해 감시될 수 있다. 인쇄 데이터의 상태가 표시될 수 있다.
본 발명은, 예를 들어, 시스템 또는 장치에 대하여 직접 또는 원격으로 전술한 실시예들의 기능을 구현하는 소프트웨어 프로그램을 제공하고, 시스템 또는 장 치에 포함된 컴퓨터로 그 제공된 프로그램 코드를 판독하고 실행함으로써 달성될 수 있다.
이러한 경우, 본 발명은, 예를 들어, 본 발명에 따른 기능과 처리를 구현하도록 컴퓨터에 인스톨되는 프로그램 코드 자체에 의해 구현될 될 수도 있다. 예를 들어, 본 발명은 본 발명에 따른 기능과 처리를 구현하기 위한 컴퓨터 프로그램을 포함한다.
이러한 경우, 시스템 또는 장치가 프로그램의 기능을 갖는 한, 프로그램은 임의의 광범위한 다양한 형태, 예컨대, 오브젝트 코드, 인터프리터에 의해 실행되는 프로그램, OS 등에 제공되는 스트립트 데이터의 형태를 가질 수 있다.
프로그램을 공급하는 저장 매체로는, 예컨대, 플로피 디스크, 하드 디스크, 광학 디스크, MO, CD-ROM, CD-R, CD-RW, 자기 테이프, 불휘발성 메모리 카드, ROM, 및 DVD(DVD-ROM: digital versatile disk read-only memory 및 DVD-R: digital versatile disk recordable)이 있다.
프로그램은 클라이언트 정보 처리 장치의 브라우저를 이용하여 인터넷 상에서 홈페이지로부터 다운로드될 수 있다. 본 발명에 따른 컴퓨터 프로그램 자체 또는 자동 인스톨 기능을 포함하는 자동 인스톨가능 압축 파일이 하드 디스크 등의 기록 매체로 다운로드될 수 있다. 또한, 본 발명에 따른 프로그램은, 본 발명에 따른 프로그램을 구성하는 프로그램 코드를 복수의 파일로 분할하고, 다른 홈페이지들로부터 그 파일들을 다운로드함으로써 공급될 수 있다. 예를 들어, 컴퓨터에 의해 본 발명에 따른 기능과 처리를 구현하는 프로그램 파일을 복수 사용자가 다운 로드 할 수 있도록 하는 WWW(World Wide Web) 서버가 본 발명을 구현할 수 있다.
본 발명에 따른 프로그램은 CD-ROM 등의 저장 매체에 암호화되고 저장되어, 저장 매체가 사용자에게 배포될 수 있다. 이러한 경우, 소정의 조건을 만족하는 사용자들만이 인터넷을 통해 홈페이지로부터 복호화 키 정보를 다운로드하고, 그 키 정보를 이용하여 암호화된 프로그램을 복호화하여, 프로그램을 실행시킬 수 있도록 함으로써 프로그램이 컴퓨터에 인스톨될 수 있다.
전술한 실시예들의 기능은 컴퓨터에 의한 판독 프로그램을 실행함으로써 구현될 수 있다. 컴퓨터로부터의 명령에 따라서, 컴퓨터 상에서 동작하는 OS 등이 실제 처리의 전부 또는 일부를 실행하여, 본 발명의 실시예 중 하나 이상을 구현할 수 있다.
또한, 저장 매체로부터 판독된 프로그램은 정보 처리 장치에 삽입되는 기능 확장 보드, 또는 그 기능 확장 보드에 제공되는 CPU 등의 정보 처리 장치에 접속된 기능 확장부에 제공된 메모리에 기입될 수 있으며, 기능 확장부는 실제 처리의 전부 또는 일부를 수행한다. 결과적으로, 전술한 실시예 및 그 밖의 실시예들의 기능이 구현될 수 있다.
본 발명을 바람직한 실시예를 참조하여 설명하였지만, 본 발명은 개시된 실시예들에 제한되는 것이 아님을 이해해야 한다. 이하 청구범위들의 범주는 모든 변형예, 등가 구조물 및 기능들을 포함하도록 최광의로 해석되어야 한다.
도 1은 본 발명의 일 실시예에 따른 인쇄 시스템의 예시적인 구성을 도시한 블록도.
도 2는 본 발명의 일 실시예에 따른 인쇄 시스템의 예시적인 구성을 상세히 도시한 블록도.
도 3은 본 발명의 일 실시예에 따른 정보 입력 화면을 도시한 도면.
도 4는 본 발명의 일 실시예에 따른 클라이언트 컴퓨터에서 동작하는 모듈들과 장치들의 예시적인 관계를 도시한 블록도.
도 5a는 본 발명의 일 실시예에 따른 예시적인 로그들을 도시한 도면.
도 5b는 본 발명의 일 실시예에 따른 로그의 각 항목에 대응하는 정보를 도시한 도면.
도 6은 본 발명의 일 실시예에 따른 스풀러 감시 모듈에서 수행되는 처리의 기본 동작의 예시적인 흐름을 도시한 도면.
도 7은 본 발명의 일 실시예에 따른 포트 모니터에서 수행되는 처리의 기본 동작의 예시적인 흐름을 도시한 도면.
도 8은 본 발명의 일 실시예에 따른 사용자 인터페이스(UI) 처리부에서 수행되는 처리의 기본 동작의 예시적인 흐름을 도시한 도면.
도 9는 본 발명의 제2 실시예에 따른 UI 처리부에서 수행되는 처리의 예시적인 흐름을 도시한 도면.
도 10은 본 발명의 제3 실시예에 따른 스풀러 감시 모듈에서 수행되는 처리 의 예시적인 흐름을 도시한 도면.
도 11은 본 발명의 제4 실시예에 따른 스풀러 감시 모듈에서 수행되는 처리의 예시적인 흐름을 도시한 도면.
도 12는 본 발명의 제5 실시예에 따른 UI 처리부에서 수행되는 처리의 예시적인 흐름을 도시한 도면.
도 13는 본 발명의 제5 실시예에 따른 UI 처리부에서 수행되는 처리의 예시적인 흐름을 도시한 도면.
도 14는 본 발명의 제6 실시예에 따른 클라이언트 컴퓨터에서 동작하는 모듈들과 장치들 간의 예시적인 관계를 도시한 블록도.
도 15는 본 발명의 제6 실시예에 따른 화상 처리 장치에서 수행되는 처리의 예시적인 기본 흐름을 도시한 도면.
도 16은 본 발명의 제6 실시예에 따른 장치 감시 모듈에서 수행되는 처리의 예시적인 기본 흐름을 도시한 도면.
도 17a는 본 발명의 일 실시예에 따른 예시적인 잡 리스트를 도시한 도면.
도 17b는 본 발명의 일 실시예에 따른 잡 리스트의 각 항목에 대응하는 정보를 도시한 도면.
<도면의 주요 부분에 대한 부호의 설명>
101: 로그 수집 서버
102: 프린트 서버
103, 104: 클라이언트 컴퓨터
105: 네트워크 프린터
106: 네트워크

Claims (12)

  1. 인쇄 애플리케이션으로부터 수신되는 순서로 인쇄 잡들을 저장 영역에 저장하고, 상기 저장된 인쇄 잡들을 인쇄 장치에 송신하도록 구성된 인쇄 제어 장치로서,
    상기 저장 영역에 저장된 인쇄 잡들을 상기 인쇄 장치에 송신하는 순서를 제어하도록 구성된 제어 수단 - 제1 인쇄 잡에서 과금 코드(billing code)가 설정되지 않은 경우, 상기 제1 인쇄 잡에 후속하여 수신된 제2 인쇄 잡이 상기 인쇄 장치에 송신되는 한편, 상기 제1 인쇄 잡은 상기 인쇄 제어 장치에 유지됨 -;
    상기 인쇄 애플리케이션으로부터 수신되어 상기 저장 영역에 저장된 인쇄 잡들의 리스트를 표시하도록 구성된 표시 수단;
    사용자에 의한 입력에 따라서 상기 리스트로부터 복수의 인쇄 잡을 선택하고, 상기 선택된 복수의 인쇄 잡에 과금 코드를 설정하도록 구성된 설정 수단; 및
    인쇄 잡이, 설정된 과금 코드를 갖지 않고, 임계치를 초과하는 시간 동안 상기 저장 영역에 존재한 경우, 상기 인쇄 잡을 삭제하도록 구성된 삭제 수단
    을 포함하는 인쇄 제어 장치.
  2. 제1항에 있어서,
    상기 인쇄 애플리케이션으로부터 수신된 인쇄 잡들에 관한 정보의 로그를 상기 인쇄 장치에 송신하도록 구성된 송신 수단을 더 포함하며,
    상기 정보는 적어도 하나의 과금 코드를 포함하는 인쇄 제어 장치.
  3. 제1항에 있어서,
    상기 설정 수단에 의해 상기 과금 코드가 설정된 인쇄 잡들에 대하여 처리의 우선순위를 높게 설정하여, 상기 설정 수단에 의해 상기 과금 코드가 설정된 인쇄 잡들의 우선적인 처리를 지원하도록 구성된 우선순위 설정 수단을 더 포함하는 인쇄 제어 장치.
  4. 삭제
  5. 제1항에 있어서,
    상기 인쇄 장치에 제공된 제2 저장 영역에 존재하는 인쇄 잡들에 관한 정보를 수신하도록 구성된 수신 수단을 더 포함하며,
    상기 표시 수단은 상기 수신 수단에 의해 수신된 정보에 따라서 상기 제2 저장 영역에 존재하는 인쇄 잡들의 리스트를 표시하는 인쇄 제어 장치.
  6. 저장 영역에 수신되는 순서로 상기 저장 영역에 인쇄 잡들을 저장하고, 상기 저장된 인쇄 잡들을 인쇄 장치에 송신하는 인쇄 제어 방법으로서,
    상기 저장 영역의 제1 인쇄 잡에 과금 코드가 설정되지 않은 경우, 상기 제1 인쇄 잡에 후속하여 수신되는 상기 저장 영역 내의 제2 인쇄 잡을 상기 인쇄 장치에 송신하는 한편, 상기 제1 인쇄 잡은 상기 저장 영역에 유지되는 단계;
    수신되어 상기 저장 영역에 저장된 인쇄 잡의 리스트를 표시하는 단계;
    사용자에 의한 입력에 따라서 상기 리스트로부터 복수의 인쇄 잡을 선택하고, 상기 선택된 복수의 인쇄 잡에 과금 코드를 설정하는 단계; 및
    과금 코드가 설정되지 않은 인쇄 잡이 상기 저장 영역에 존재하는 시간이 임계치를 초과하는 경우, 상기 과금 코드가 설정되지 않은 인쇄 잡을 삭제하는 단계
    를 포함하는 인쇄 제어 방법.
  7. 제6항에 있어서,
    상기 수신된 인쇄 잡에 관한 정보의 로그를 송신하는 단계를 더 포함하며,
    상기 로그는 적어도 과금 코드를 포함하는 인쇄 제어 방법.
  8. 제6항에 있어서,
    상기 과금 코드가 설정된 인쇄 데이터를 우선적으로 처리하도록, 상기 과금 코드가 설정된 인쇄 잡들의 처리의 우선순위를 높게 설정하는 단계를 더 포함하는 인쇄 제어 방법.
  9. 삭제
  10. 제6항의 인쇄 제어 방법을 컴퓨터에 실행시키는 프로그램을 저장한 컴퓨터 판독가능 기억 매체.
  11. 사용자가 인쇄 데이터의 인쇄를 수행하도록 인쇄 장치에 명령을 발행하는 경우, 상기 명령에 따라서 상기 인쇄 데이터에 과금 코드를 설정할 수 있는, 컴퓨터에서 동작하도록 구성된 인쇄 제어 장치로서,
    인쇄 애플리케이션으로부터 수신된 상기 인쇄 데이터를 상기 인쇄 장치에 송신하기 전에 상기 인쇄 데이터를 임시로 저장하도록 구성된 저장 수단;
    상기 저장 수단에 저장된 상기 인쇄 데이터를 상기 인쇄 장치에 송신하도록 구성된 송신 수단; 및
    상기 저장 수단에 저장된 상기 인쇄 데이터에 상기 과금 코드가 설정되었는지 여부를 판정하도록 구성된 판정 수단
    을 포함하며,
    상기 판정 수단이 상기 저장 수단에 저장된 상기 인쇄 데이터에 과금 코드가 설정되지 않은 것으로 판정하는 경우, 상기 송신 수단은 상기 인쇄 데이터에 과금 코드가 설정될 때까지 상기 인쇄 장치에의 상기 저장된 인쇄 데이터의 송신을 정지하고,
    상기 판정 수단이 상기 저장 수단에 저장된 상기 인쇄 데이터에 과금 코드가 설정되지 않은 것으로 판정하는 경우에도, 상기 송신 수단은 상기 인쇄 데이터에 과금 코드가 설정된 것에 따라 상기 인쇄 장치에 상기 저장된 인쇄 데이터를 송신하고,
    상기 판정 수단은 상기 저장 수단에 저장된 상기 인쇄 데이터에 과금 코드가 설정되어 있지 않고 임계치를 초과하는 시간 동안 상기 저장 수단에 존재한 경우, 상기 인쇄 데이터를 삭제하는 인쇄 제어 장치.
  12. 사용자가 인쇄 데이터의 인쇄를 수행하도록 인쇄 장치에 명령을 발행하는 경우, 상기 명령에 따라서 상기 인쇄 데이터에 과금 코드를 설정할 수 있는, 컴퓨터에서 동작하도록 구성된 인쇄 제어 방법으로서,
    인쇄 애플리케이션으로부터 수신된 상기 인쇄 데이터를 상기 인쇄 장치에 송신하기 전에 상기 인쇄 데이터를 임시로 저장하는 단계;
    상기 저장된 인쇄 데이터에 상기 과금 코드가 설정되었는지 여부를 판정하는 단계;
    상기 저장된 인쇄 데이터에 과금 코드가 설정되지 않은 경우, 상기 인쇄 데이터에 과금 코드가 설정될 때까지 상기 저장된 인쇄 데이터가 상기 인쇄 장치에 송신되는 것을 정지하는 단계;
    상기 과금 코드가 상기 저장된 인쇄 데이터에 설정되지 않은 경우에도, 상기 인쇄 데이터에 과금 코드가 설정된 것에 따라 상기 저장된 인쇄 데이터를 상기 인쇄 장치에 송신하는 단계; 및
    상기 저장된 상기 인쇄 데이터에 과금 코드가 설정되어 있지 않고 임계치를 초과하는 시간 동안 저장되어 있는 경우, 상기 인쇄 데이터를 삭제하는 단계
    를 포함하는 인쇄 제어 방법.
KR1020080029301A 2007-06-29 2008-03-28 인쇄 제어 장치 및 인쇄 제어 방법 KR100972282B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2007172288A JP4854608B2 (ja) 2007-06-29 2007-06-29 印刷制御装置、印刷制御方法、及びプログラム
JPJP-P-2007-00172288 2007-06-29

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020100045831A Division KR101245392B1 (ko) 2007-06-29 2010-05-17 인쇄 제어 장치 및 인쇄 제어 방법

Publications (2)

Publication Number Publication Date
KR20090004442A KR20090004442A (ko) 2009-01-12
KR100972282B1 true KR100972282B1 (ko) 2010-07-23

Family

ID=39712124

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020080029301A KR100972282B1 (ko) 2007-06-29 2008-03-28 인쇄 제어 장치 및 인쇄 제어 방법
KR1020100045831A KR101245392B1 (ko) 2007-06-29 2010-05-17 인쇄 제어 장치 및 인쇄 제어 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020100045831A KR101245392B1 (ko) 2007-06-29 2010-05-17 인쇄 제어 장치 및 인쇄 제어 방법

Country Status (5)

Country Link
US (1) US8264720B2 (ko)
EP (1) EP2017716A3 (ko)
JP (1) JP4854608B2 (ko)
KR (2) KR100972282B1 (ko)
CN (1) CN101334715A (ko)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100091318A1 (en) * 2008-10-09 2010-04-15 Andrew Rodney Ferlitsch Systems and methods for multiple queue options for a single logical printer
JP5383254B2 (ja) * 2009-02-27 2014-01-08 キヤノン株式会社 情報処理装置及びその制御方法、並びにプログラム
JP2011102842A (ja) * 2009-11-10 2011-05-26 Sanyo Electric Co Ltd 映像表示装置
JP5834550B2 (ja) * 2011-07-05 2015-12-24 株式会社リコー 情報処理装置、データ管理システム、及びデータ管理プログラム
JP5849659B2 (ja) * 2011-12-01 2016-02-03 富士ゼロックス株式会社 画像形成装置及び画像形成プログラム
JP5875404B2 (ja) * 2012-02-21 2016-03-02 キヤノン株式会社 印刷装置及びその制御方法、及びプログラム
JP5875406B2 (ja) 2012-02-22 2016-03-02 キヤノン株式会社 印刷装置及びその制御方法、及びプログラム
JP6019963B2 (ja) * 2012-09-07 2016-11-02 株式会社リコー 出力装置、プログラム、システム及びログ送信方法
KR102082891B1 (ko) * 2012-10-11 2020-02-28 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 사용자 단말 장치 및 상태 정보 표시 방법
JP2014141004A (ja) * 2013-01-23 2014-08-07 Toshiba Corp 画像形成装置及び画像形成システム
JP6188464B2 (ja) * 2013-07-17 2017-08-30 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、及びプログラム
CN103413236A (zh) * 2013-08-27 2013-11-27 北京网秦天下科技有限公司 用于推送服务信息的设备和方法
CN105492062A (zh) 2013-09-03 2016-04-13 马建录 可植入装置的拆离机构
CN103677694A (zh) * 2013-12-12 2014-03-26 上海斐讯数据通信技术有限公司 一种打印管理方法及移动终端
JP6243793B2 (ja) * 2014-05-13 2017-12-06 キヤノン株式会社 印刷システム及び印刷システムにおける制御方法
JP6529388B2 (ja) * 2015-08-25 2019-06-12 キヤノン株式会社 情報処理装置とその制御方法、及び情報処理システムとステータス表示アプリケーションと双方向通信アプリケーション
CN105760122A (zh) * 2016-02-18 2016-07-13 浪潮通用软件有限公司 一种浏览器图表的服务器端打印方法
JP7419941B2 (ja) * 2020-04-07 2024-01-23 富士フイルムビジネスイノベーション株式会社 履歴管理装置およびプログラム
JP7494664B2 (ja) 2020-09-02 2024-06-04 セイコーエプソン株式会社 印刷制御プログラム、印刷制御装置の制御方法、及び印刷制御装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09190318A (ja) * 1996-01-09 1997-07-22 Fuji Xerox Co Ltd 印刷管理装置
JP2001318776A (ja) * 2000-05-11 2001-11-16 Minolta Co Ltd プリントシステム、プリントサーバ、画像形成装置及び端末装置
JP2002196919A (ja) 2000-12-27 2002-07-12 Canon Inc 情報処理装置及び情報処理方法
JP2004295670A (ja) * 2003-03-27 2004-10-21 Seiko Epson Corp 課金管理システムおよびこれに用いる装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07261868A (ja) * 1994-03-16 1995-10-13 Fuji Xerox Co Ltd 印刷制御装置
EP0919030B1 (en) * 1996-03-01 2003-10-08 FMR Corporation Open systems printing
US6385655B1 (en) * 1996-10-24 2002-05-07 Tumbleweed Communications Corp. Method and apparatus for delivering documents over an electronic network
EP2040452A1 (en) * 2000-03-29 2009-03-25 Canon Kabushiki Kaisha Printing apparatus connectable to a computer network and control method for image processing apparatus connectable to computer network
US6903840B1 (en) * 2000-10-24 2005-06-07 Xerox Corporation Advanced administration functions for copiers and printers on a network
US7075669B2 (en) * 2000-12-19 2006-07-11 Pharos Systems International, Inc. Document processing system and related methods
US7130070B2 (en) * 2001-01-17 2006-10-31 Sepialine Incorporated System and method for asynchronous tracking and quantifying of printing events
JP3906667B2 (ja) * 2001-10-23 2007-04-18 富士ゼロックス株式会社 画像処理装置
JP4266602B2 (ja) * 2002-09-06 2009-05-20 キヤノン株式会社 画像処理装置及びその制御方法
US7301663B2 (en) * 2003-03-28 2007-11-27 Sharp Laboratories Of America, Inc. Systems and methods for print job accounting
US20050151992A1 (en) * 2004-01-13 2005-07-14 Pharos Systems International, Inc. Document processing system providing enhanced copy project retention features and related methods
JP4384134B2 (ja) * 2005-06-07 2009-12-16 キヤノン株式会社 画像形成装置、その制御方法及び制御プログラム
JP4621103B2 (ja) * 2005-10-12 2011-01-26 キヤノン株式会社 画像形成装置および画像形成装置の制御方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09190318A (ja) * 1996-01-09 1997-07-22 Fuji Xerox Co Ltd 印刷管理装置
JP2001318776A (ja) * 2000-05-11 2001-11-16 Minolta Co Ltd プリントシステム、プリントサーバ、画像形成装置及び端末装置
JP2002196919A (ja) 2000-12-27 2002-07-12 Canon Inc 情報処理装置及び情報処理方法
JP2004295670A (ja) * 2003-03-27 2004-10-21 Seiko Epson Corp 課金管理システムおよびこれに用いる装置

Also Published As

Publication number Publication date
CN101334715A (zh) 2008-12-31
US20090002752A1 (en) 2009-01-01
JP4854608B2 (ja) 2012-01-18
EP2017716A3 (en) 2009-12-30
JP2009009493A (ja) 2009-01-15
EP2017716A2 (en) 2009-01-21
KR20100057005A (ko) 2010-05-28
KR20090004442A (ko) 2009-01-12
US8264720B2 (en) 2012-09-11
KR101245392B1 (ko) 2013-03-20

Similar Documents

Publication Publication Date Title
KR100972282B1 (ko) 인쇄 제어 장치 및 인쇄 제어 방법
US7312886B2 (en) Printer control method, information processing apparatus, program, and storage medium
US8035827B2 (en) Application management system, application management method, program, and storage medium
US8014007B2 (en) Information processing apparatus, substitute print job management method, information processing program, and recording medium
US8009310B2 (en) Print control program, method of controlling printing apparatus, and print control unit
US7719703B2 (en) Print control program and medium and information processing apparatus
US8804162B2 (en) Information processing apparatus, printing system, monitoring method, program, and storage medium
JP5383254B2 (ja) 情報処理装置及びその制御方法、並びにプログラム
US7916315B2 (en) Method and apparatus for executing load distributed printing
US7746493B2 (en) Job management apparatus and method of recognizing job completion, and control program used therewith
JP3774702B2 (ja) 印刷制御プログラム及び情報処理装置
JP4971778B2 (ja) 印刷管理装置、印刷管理方法、及びコンピュータプログラム
US20080266601A1 (en) Information processing apparatus and job management method
JP5328292B2 (ja) 印刷システム、画像形成装置及び情報処理方法
JP2008134934A (ja) プリントシステム、制御方法、及びプログラム
JP2022118924A (ja) 画像形成装置、その制御方法、およびプログラム
JP2012059280A (ja) 印刷装置、データ処理装置、印刷制御方法、及びプログラム
JP2008123355A (ja) パスワード設定のあるボックスのジョブ検索方法
JP2002132695A (ja) プリンタシステム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
A107 Divisional application of patent
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130626

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140625

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150625

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160627

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180625

Year of fee payment: 9