KR20150052843A - 사용자 인터페이스 및/또는 다른 특징들을 포함하는 터미널 운영의 특징들을 수반하는 시스템들 및 방법들 - Google Patents

사용자 인터페이스 및/또는 다른 특징들을 포함하는 터미널 운영의 특징들을 수반하는 시스템들 및 방법들 Download PDF

Info

Publication number
KR20150052843A
KR20150052843A KR1020157004653A KR20157004653A KR20150052843A KR 20150052843 A KR20150052843 A KR 20150052843A KR 1020157004653 A KR1020157004653 A KR 1020157004653A KR 20157004653 A KR20157004653 A KR 20157004653A KR 20150052843 A KR20150052843 A KR 20150052843A
Authority
KR
South Korea
Prior art keywords
tos
data
information
processing
terminal
Prior art date
Application number
KR1020157004653A
Other languages
English (en)
Inventor
제이드 이리나 셰이크
테레사 더피
지타 데사이
소피 마이론
청 다니엘 송
나단 존슨
테레사 힐
제이드 엘다 셰이크
Original Assignee
포츠 아메리카 그룹, 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 포츠 아메리카 그룹, 인코포레이티드 filed Critical 포츠 아메리카 그룹, 인코포레이티드
Publication of KR20150052843A publication Critical patent/KR20150052843A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping
    • G06Q10/0831Overseas transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping

Abstract

터미널 운영 시스템에 관련된 정보를 프로세싱하기 위한 시스템들 및 방법들이 개시된다. 일 예시적인 구현에서, 터미널 운영 시스템 관리의 정보를 제공하기 위한 방법이 제공된다. 방법은 터미널 운영 시스템 관리를 관리하도록 입력에 관련된 프로세싱 정보를 포함할 수 있다. 다른 예시적인 구현들은 관리된 터미널 운영 시스템 관리 기능성의 결과의 출력이 생성되도록 결과를 생성하기 위해 프로세싱을 포함할 수 있다.

Description

사용자 인터페이스 및/또는 다른 특징들을 포함하는 터미널 운영의 특징들을 수반하는 시스템들 및 방법들{SYSTEMS AND METHODS INVOLVING FEATURES OF TERMINAL OPERATION INCLUDING USER INTERFACE AND/OR OTHER FEATURES}
관련 출원(들)의 상호 참조
본 출원은 본 명세서에 그대로 참조로서 합체되어 있는, 모두 2012년 7월 24일 출원된 미국 가특허 출원 제 61/741,647호, 제 61/741,666호 및 제 61/741,668호의 이익/우선권을 주장한다.
부록 자료들
"부록 1" 및 "부록 2"라 표기된 부록들이 여기에 첨부되고, 본 명세서에 그대로 참조로서 합체되어 있다.
항구에서 컨테이너들 및 상품을 수입 및 수출하는 프로세스는 다수의 파티들(parties)을 수반하고, 상당한 통신 및 조정을 필요로 한다. 게다가, 수반된 파티들은 수많은 규제들 및 가이드라인들을 고수해야 한다.
터미널 운영 시스템(Terminal Operating Systems: TOS)으로서 알려진 시스템들이 전세계에 걸쳐 항구 터미널들에서 이 프로세스를 지원하도록 개발되어 왔다. 수입 및 수출 기능들과 같은 터미널에서의 활동들과 관련된 다수의 표준 운영 절차들이 이들 TOS 용례들의 부분이 되어 왔지만, 이들은 상이하게 구현된다.
그러나, 면제 관리, 실시간 면제 관리, TOS-비의존성(agnostic) 소프트웨어/플랫폼들/구성요소들 및 다른 상호 관련된 기능성과 같은 양태들은 현존하는 터미널 운영 시스템들에 의해 적절하게 처리되지 않고 있는 영역들이다.
선적 산업은 도 1에 간략하게 도시된 바와 같이, 해외로부터 및 해외로의 상품의 실제 수송의 모두, 뿐만 아니라 항구 시설들 및 제 3 파티들과의 인터페이스를 포함한다. 도 1에 도시된 바와 같이, 항구 시설들을 통한 상품의 수송에 수반된 다수의 파티들이 존재하고, 항구 인터페이스들은 전체 선적 시간의 지연들을 도입하는 것이 가능하다. 이들 지연들은 더 스마트한 물류 조정을 갖는 시스템들을 사용하여 그리고 시스템(들) 전체에 걸친 그리고 파티들 사이의 정보 흐름을 향상시킴으로써 처리될 수 있다.
예를 들어, SSCO(기선 회사)는 특정 수들 및 유형들의 컨테이너들을 포함하는 부킹(booking)을 제출할 수 있다. 각각의 컨테이너에 대해, 치수들 등과 같은 속성들이 지정된다. 이러한 컨테이너와 연계된 엔티티(entity)(예를 들어, 운전자 등)가 컨테이너를 프로세싱하거나 인도하기 위해 터미널에 올 때, 하나 이상의 컨테이너들의 속성들이 부킹의 지정된 속성들에 일치하지 않을 수도 있다. 이 시나리오에서, 이러한 엔티티는 통상적으로 부킹 정보가 컨테이너에 일치할 때까지 컨테이너를 인도하는 것을 허용하지 않을 것이다.
과거에는, 전술된 것과 같은 문제점들은 엔티티가 컨테이너(들)의 원하는 취급을 계속할 수 있도록 문제의 성질을 이해하고 정보를 업데이트하거나 보정하기 위해 파티들 사이의 상당한 양의 통신 및 서류작업을 요구하였다.
일 양태에서, 상이한 터미널 운영 시스템(TOS)을 가로지르는 선박들을 제어하고 관리하기 위한 시스템들 및 방법들이 본 명세서에 제공된다. 본 발명들의 양태들에 따르면, 다양한 컴퓨터 하드웨어, 소프트웨어, 사용자 인터페이스(UI), 그래픽 사용자 인터페이스(GUI), 백엔드(예를 들어, 서버, TOS, TOS 비의존성 등) 및/또는 통신들 특징들이 본 발명의 혁신적인 시스템들 및 방법들을 제공하도록 신규한 방식들로 수반될 수 있다. 본 명세서에 사용될 때, 이러한 시스템들 및 방법들을 칭하는데 이용된 약어는 "TOS 웹 포털" 또는 "TOS 웹 포털 구현/통합들"이다. 특정 구현들에 따르면, 예를 들어, TOS 웹 포털은 터미널의 운영 시스템(즉, TOS)과 인터페이스하는 컴퓨터 네트워크 기반 애플리케이션들 및 기계 판독가능 명령들의 세트일 수 있다. TOS 웹 포털 또는 TOS 웹 포털 구현/통합들은 이들에 한정되는 것은 아니지만, LAN, 무선, 셀룰러, 블루투스, 적외선 접속들 등을 포함하는 임의의 유형의 네트워크 접속들을 거쳐, 본 명세서에 개시된 시스템으로의 액세스를 허용하는 임의의 인터페이스를 칭한다는 것이 이해될 수 있을 것이다. 몇몇 실시예들에서, 본 발명의 구현들은 예를 들어 이러한 인터페이스를 거쳐 해당 정보를 업데이트하기 위해 기선 회사들("SSCO들")을 위한 툴들 및 정보로의 실시간 액세스를 제공하는 것이 가능하다. 본 개시 내용에 따르면, 몇몇 TOS 웹 포털 구현들은 동작 효율들을 추진하고 그리고/또는 고객 서비스를 향상시킬 수 있다. 다양한 TOS 웹 포털 구현들의 몇몇 부가의 유리한 특징들은 예를 들어 이하의 것:
· 터미널에서 카고 이동 문제점들을 최소화함
· SSCO들 및 트럭킹 회사들을 성공적으로 서비스하는 터미널 운영자들의 능력을 향상시킴
· 트럭킹 회사와 기선 회사 사이의 중개자의 역할에 터미널들이 작용하는 것을 최소화함
· 터미널에 대한 전화, 팩스 및 다른 비전자식 명령들에 대한 의존성을 제거함
· 터미널 게이트들을 통해 신속하게 통과하도록 캐리어들이 사용할 수 있는 실시간, 정확한, 자유 흐름 정보를 전달함
· 게이트 혼잡을 방지함
· 향상된 트럭커 턴타임들을 야기하는 예측된 문제 해결
중 하나 이상을 포함할 수 있다.
예를 들어, SSCO는 특정 수들 및 유형들의 컨테이너들을 포함하는 부킹을 제출할 수 있다. 각각의 컨테이너에 대해, 치수들 등과 같은 속성들이 지정된다. 운전자가 컨테이너를 전달하기 위해 터미널에 올 때, 하나 이상의 컨테이너들의 속성들은 부킹의 지정된 속성들에 일치하지 않을 수 있다. 이 시나리오에서, 운전자는 부킹 정보가 컨테이너에 일치할 때까지 컨테이너를 전달하도록 허용되지 않을 것이다.
과거에, 전술된 것과 같은 문제들은 운전자가 그 노정을 계속할 수 있도록 정보를 업데이트하거나 보정하고 문제의 성질을 이해하도록 파티들 사이의 상당한 양의 통신 및 문서작업을 필요로 하였다.
본 발명의 다양한 TOS 웹 포털 구현들은 통신을 최소화하는 능력을 갖고 프로세스들을 능률화할 수 있다. 또한, 몇몇 구현들은 또한 VoyagerTrack과 같은 연계된 트랙킹 애플리케이션과 같은 다른 애플리케이션들과 인터페이싱함으로써 본 발명의 이익들을 성취할 수 있다. 여기서, 예를 들어, 이러한 애플리케이션은 선적 산업의 멤버들 사이의 물류 정보 공유 및 통신 흐름을 용이하게 하는데 있어서 TOS 웹 포털 구현을 보충하는 것이 가능한 연계된 애플리케이션일 수 있다. 무엇보다도, 어떻게 이러한 이익들이 성취되는지를 예시하는 것을 돕는 것과 같은 이러한 모듈/인터페이스의 예시적인 양태들을 설명하는 일 예시적인 트랙킹 애플리케이션의 상세들, VoyagerTrack이 여기에 첨부된 부록 A에 제공되어 있다.
예를 들어, 이러한 시스템들과 연계된 기능을 거쳐, TOS 웹 포털 구현은 문제가 터미널에서 발생할 때 SSCO들이 경보 받을 수 있다. 게다가, SSCO들은 문제에 관련된 이들의 데이터에 액세스하고, 리뷰하고, 업데이트하기 위해 각각의 문제 및 신속한 링크들의 상세들이 제시될 수 있다. 일단, 데이터가 보정되면, 운전자 및 터미널 사무원은 이어서 트랜잭션들의 완료로 진행할 수 있다.
다른 실시예들에 따르면, TOS 웹 포털 구현들은 무엇보다도, 부킹들(예를 들어, 도 22a, 도 23a 및 도 23b 참조); 문제 해결(예를 들어, 도 24a 및 도 25 참조); 장비 상호 교환 보고들(EIR들)(예를 들어, 도 26a 참조); 카고 및 장비 상태(예를 들어, 도 26a 참조); 장비 사전 승인(예를 들어, 도 26a 참조); 장비 제어(예를 들어, 도 27, 도 28a, 도 30a 및 도 30b 참조); 선박 관리(예를 들어, 도 29 참조); 다기능 홈 포털(예를 들어, 도 31 참조); 위험 상품(예를 들어, 도 32a, 도 32b 참조); 선하증권들(예를 들어, 도 34a, 도 34b, 도 34c 및 도 34d 참조); 컨테이너들(예를 들어, 도 36a, 도 36b 및 도 36c 참조); 프리데이 초과정박 할당들(예를 들어, 도 34a 내지 도 36c 참조); 해제(예를 들어, 도 34a 내지 도 36c 참조); 트럭커 할당들 및 정보(예를 들어, 도 38a, 도 38b 및 도 38c 참조); 화물차 반입 컨테이너들(예를 들어, 도 40 참조); 레일 수입들(예를 들어, 도 41 참조)에 관한 정보를 캐리어들이 관리하는 것을 허용할 수 있다.
부가적으로, 몇몇 구현들은 사용자들이 수입 관리 목적들을 위한 해제들을 관리하고, PIN 할당들, 트럭커 할당들 및/또는 홀드들 및 해제들을 관리하게 할 수 있다. 또한, 구현은 재차 선하증권을 위한 초과정박 레이트들 및 해제들을 표시하기 위해 트랙킹 유형 애플리케이션들과 인터페이스할 수 있다. 수입 기능성은 또한 프리데이 할당들 및 상태들을 국부적으로 업데이트하는 능력을 포함할 수 있다.
본 발명의 이들 시스템들, 방법들 및 특징들의 함수로서, TOS 웹 포털 구현은 임의의 시간에 다양한 장소들로부터 네트워크 기반 가시성을 터미널들에 제공하는 능력을 갖는다. 터미널들은 운전자가 수신하는 동일한 인쇄된 문제 티켓들의 상세들을 갖고, 카테고리, 상태, 장비 번호 또는 게이트 통과 번호에 의해 라이브 문제 트랜잭션들을 뷰잉할 수 있다. 몇몇 구현들에서, TOS 웹 포털 구현 내의 문제 페이지는 해결책을 예측하는 능력을 터미널 운영자들 및 다른 책임 있는 파티들에 제공한다.
부가적으로, 몇몇 TOS 웹 포털 구현들의 시스템 및 방법들은 실시간 선박 스케쥴들, 수입 및 수출 컨테이너 정보, 게이트 활동 및 TOS로부터 발생된 사용자 계정 정보로의 사용자 액세스를 제공할 수 있다. 상이한 보고들은 사용자에 의해 등록되어 있는 통지들 및 예약들을 표시할 수 있다. 터미널 관리자들은 터미널 특정 구성 및 정보를 셋업하고, 사용자 계정 관리를 수행하고, 사용자들로의 이메일들 또는 팩스들의 자동 송신을 셋업할 수 있다.
도면 및 상세한 설명은 이들 발명들을 상세히 설명할 것이다. 이 개요는 모든 발명적 사상들을 포함하는 것으로 의도되지 않고 상세한 설명들 및 도면들에 의해 보충되고 보강되도록 의도된다.
본 명세서의 부분을 구성하는 첨부 도면들은 본 발명의 다양한 구현들 및 특징들을 도시하고, 상세한 설명과 함께 본 발명의 혁신들의 양태들을 설명하는 것을 돕는다.
도 1은 본 발명의 혁신들의 하나 이상의 양태들에 따른 선적 사이클의 도면.
도 2는 본 발명의 혁신들의 하나 이상의 양태들에 따른 터미널 운영 시스템의 블록 다이어그램.
도 3a 내지 도 3b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 터미널 운영 시스템들의 구현들과 연계될 수 있는 바와 같은 예시적인 모델, 뷰 및 제어기 용례들, 구성요소들 및/또는 상호 작용들의 블록 다이어그램.
도 4는 다양한 엔티티들 및 이러한 엔티티들 내의 또는 사이의 상호 작용들 및 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 웹- 또는 네트워크-기반 시스템을 도시하는 블록 다이어그램.
도 5는 본 발명의 혁신들의 하나 이상의 양태들에 따른 본 발명의 TOS 웹 포털 구현들에 수반된 다양한 예시적인 특징들, 서비스들 또는 구성요소들을 도시하는 블록 다이어그램.
도 6은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 부킹 모듈 양태들 및 엔티티들을 도시하는 블록 다이어그램.
도 7은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 웹-기반 모듈들의 예시적인 계층(hierarchy) 및 구조를 도시하는 다이어그램.
도 8은 본 발명의 혁신들의 하나 이상의 양태들에 따른 TOS로부터 비즈니스 엔티티들로의 저장소 맵핑의 예시적인 양태들을 도시하는 블록 다이어그램.
도 9는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 저장소 캐싱 방안을 도시하는 다이어그램.
도 10은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 TOS-독립 또는 TOS-비의존성 저장소 로케이터의 도면.
도 11은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 시스템 토폴로지를 도시하는 블록 다이어그램.
도 12는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 사용자 인증(authenticaton) 및 승인(authorization) 프로세스의 예시적인 흐름도.
도 13은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 형태의 인증 및 승인 프로세스의 예시적인 흐름도.
도 14a 및 도 14b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 저장소 프로세싱을 수반하는 예시적인 흐름도.
도 14c는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 비즈니스 대상체 프로세싱을 수반하는 예시적인 시퀀스 다이어그램.
도 14d는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 비즈니스 대상체 프로세싱을 수반하는 다른 예시적인 흐름도.
도 15는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 TOS 비의존성 시스템 및 연계된 프로세싱을 거쳐 수행된 프로세싱의 예시적인 흐름을 도시하는 도면.
도 16은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 TOS 비의존성 프로세싱의 예시적인 작업 흐름도.
도 17a는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 TOS 비의존성 저장소 로케이터 프로세싱의 예시적인 흐름도.
도 17b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 부킹 프로세스 및 TOS 비의존성 프로세싱을 수반하는 예시적인 시퀀스 다이어그램.
도 18은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 TOS 비의존성 시스템을 위한 일 예시적인 레이어(layer) 아키텍처를 도시하는 블록 다이어그램.
도 19는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 TOS 비의존성 시스템을 위한 예시적인 레이어 아키텍처 및 연계된 프로세싱 모듈들을 도시하는 블록 다이어그램.
도 20은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 TOS 비의존성 시스템을 위한 예시적인 저장소 로케이터 계층/구조를 도시하는 블록 다이어그램.
도 21은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 부킹 프로세스 및 TOS 비의존성 프로세싱을 수반하는 예시적인 시퀀스 다이어그램.
도 22a는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 부킹 관리 사용자 인터페이스의 다이어그램.
도 22b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 부킹 관리 기능성의 흐름도.
도 23a는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 부킹 변경 사용자 인터페이스의 다이어그램.
도 23b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 부킹 변경 보고 사용자 인터페이스의 다이어그램.
도 24a는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 문제 해결 사용자 인터페이스의 다이어그램.
도 24b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 문제 해결 사용자 인터페이스의 흐름도.
도 25는 본 발명의 혁신들의 하나 이상의 양태들에 따른 문제 해결자를 나타내는 예시적인 링크된 페이지의 다이어그램.
도 26a는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 장비 상호교환 보고 사용자 인터페이스의 다이어그램.
도 26b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 장비 상호교환 보고 사용자 인터페이스의 흐름도.
도 27은 본 발명의 혁신들의 하나 이상의 양태들에 따른 화상을 갖는 예시적인 장비 상호교환 사용자 인터페이스의 다이어그램.
도 28a는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 장비 해제 사용자 인터페이스의 다이어그램.
도 28b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 장비 해제 사용자 인터페이스의 흐름도.
도 29는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 수출 선박 관리자 사용자 인터페이스의 다이어그램.
도 30a는 본 발명의 혁신들의 하나 이상의 양태들에 따른 다중 동작들 기능성을 예시하는 예시적인 장비 제어 사용자 인터페이스의 다이어그램.
도 30b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 단일 동작 기능성을 예시하는 예시적인 방비 제어 사용자 인터페이스의 다이어그램.
도 30c는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 장비 제어 사용자 인터페이스의 흐름도.
도 31은 다양한 기능성들을 위한 드롭다운 옵션들을 예시하는 예시적인 홈 스크린의 다이어그램.
도 32a는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 위험 상품 컨테이너 리스트 사용자 인터페이스의 다이어그램.
도 32b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 위험 상품 아이템 사용자 인터페이스의 다이어그램.
도 33은 본 발명의 혁신들의 하나 이상의 양태들에 따른 다중 리스트들 기능성의 예시적인 잘라내기 및 붙여넣기를 나타내는 예시적인 사용자 인터페이스를 도시하는 다이어그램.
도 34a는 본 발명의 혁신들의 하나 이상의 양태들에 따른 각각의 증권(bill)을 위한 기능성의 칼럼들을 포함하는 예시적인 선하증권(Bill of Lading)(수입) 사용자 인터페이스의 다이어그램.
도 34b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 기능성의 부가의 칼럼들을 나타내는 다른 예시적인 선하증권(수입) 사용자 인터페이스의 다이어그램.
도 34c는 본 발명의 혁신들의 하나 이상의 양태들에 따른 컨테이너 리스트 특징들을 포함하는 선택된 선하증권의 상세들을 나타내는 예시적인 사용자 인터페이스의 다이어그램.
도 34d는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 선하증권(수입) 사용자 인터페이스의 흐름도.
도 35는 본 발명의 혁신들의 하나 이상의 양태들에 따른 다수의 컨테이너들에 정보를 동시에 할당하기 위한 예시적인 '모두 적용(apply all)' 기능성을 나타내는 예시적인 사용자 인터페이스의 다이어그램.
도 36a는 본 발명의 혁신들의 하나 이상의 양태들에 따른 식별된 컨테이너들을 위한 기능성의 칼럼들을 포함하는 예시적인 수입 컨테이너 사용자 인터페이스의 다이어그램.
도 36b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 기능성의 부가의 칼럼들을 나타내는 다른 예시적인 수입 컨테이너 사용자 인터페이스의 다이어그램.
도 36c는 본 발명의 혁신들의 하나 이상의 양태들에 따른 선택된 수입 컨테이너를 위한 상세들 및 기능성을 나타내는 예시적인 사용자 인터페이스의 다이어그램.
도 37은 본 발명의 혁신들의 하나 이상의 양태들에 따른 자동 제안 또는 자동 완료 기능성의 예를 도시하는 다이어그램.
도 38a는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 트럭킹(trucking) 관리 사용자 인터페이스의 다이어그램.
도 38b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 새로운 트럭킹 회사 생성 사용자 인터페이스의 다이어그램.
도 38c는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 트럭킹 회사 보고 사용자 인터페이스의 다이어그램.
도 39a는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 관리자 또는 사용자 탐색 인터페이스의 다이어그램.
도 39b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 관리자 또는 사용자 권리 인터페이스의 다이어그램.
도 40은 본 발명의 혁신들의 하나 이상의 양태들에 따른 컨테이너들을 위한 예시적인 화물차 반입(dray in) 사용자 인터페이스의 다이어그램.
이제, 그 예들이 첨부 도면들에 도시되어 있는 다양한 구현들을 상세히 참조할 것이다. 이하의 상세한 설명에서, 수많은 특정 상세들이 본 명세서에 제시된 요지의 충분한 이해를 제공하기 위해 설명된다. 그러나, 구현들 요지는 이러한 특정 상세들 없이 실시될 수도 있다는 것이 당 기술 분야의 숙련자에게 명백할 것이다. 더욱이, 본 명세서에 설명된 특정 구현들은 예로서 제공된 것이고, 본 발명의 범주를 특정 실시예들에 한정하도록 사용된 것은 아니다. 다른 경우들에, 공지의 방법들, 절차들, 구성요소들, 및 회로들은 본 발명의 혁신들의 양태들을 불필요하게 불명료하게 하지 않기 위해 상세히 설명되어 있지 않다.
도 1은 선적 환경, 수반된 파티들 및 물류 프레임워크를 도시한다. 전형적인 선적 사이클에서, 예를 들어, 공급자(supplier)(102)는 운송업자(common carrier)(108)를 통한 그리고 세관(110)을 통한 화물의 통과 중에 운송주선인(freight forwarder)(106)에 의해 종종 취급되는 화물을 수송하기 위해 하주(shipper)(104)를 사용한다. 상품은 때때로 이어서 수탁인(consignee)(116)에 그리고 최종적으로 분배 센터(distribution center)(118) 및 소매자(120)에 상품을 전달하는 중개자(114)에 의해 취급된다.
본 발명들의 양태들에 따르면, 다양한 컴퓨터 하드웨어, 소프트웨어, 사용자 인터페이스(IU) 및/또는 통신 특징들이 신규한 방식들로 이용되거나 수반되어 본 발명의 혁신적인 시스템들 및 방법들을 제공할 수도 있다. 특정 실시예들에 따르면, 예를 들어, 예시적인 구현은 터미널의 TOS(터미널 운영 시스템)와 인터페이스하는 컴퓨터 네트워크 기반 애플리케이션들 및 기계 판독가능 명령들의 세트를 포함할 수 있다. 몇몇 실시예들에서, 본 발명의 구현들은 예를 들어 이러한 인터페이스를 거쳐 해당 정보를 업데이트하기 위해 SSCO들을 위한 정보 및 도구들에 실시간 액세스를 제공하는 것이 가능하다. 본 발명에 따르면, 몇몇 구현들은 작동 효율들을 증가시키고 그리고/또는 고객 서비스를 향상시킬 수 있다. 다양한 구현들의 몇몇 부가적인 유리한 특성들은 예를 들어 이하의 것: 터미널에서 카고 이동 문제점들을 최소화하는 것; SSCO들 및 운송업자들을 성공적으로 서비스하는 터미널 운영자들의 능력을 향상시키는 것; 트럭킹과 기선 회사들 사이의 중개인의 역할로부터 터미널들을 제거하는 것; 터미널로의 전화, 팩스 및 다른 비-전자식 명령들에 대한 의존성을 제거하는 것; 운송업자들이 터미널 게이트들을 통해 신속하게 통과하기 위해 사용할 수 있는 실시간 정확한 정보를 전달하는 것; 터미널/게이트 혼잡을 방지하는 것; 및/또는 화물/카고를 전달하는 엔티티를 위한 향상된 턴-타임들(turn-times)을 야기하는 촉진된 문제 해결 중 하나 이상을 포함할 수 있다.
본 발명의 다양한 구현들은 통신을 최소화하는 능력을 갖고, 프로세스들의 다양한 양태들을 능률화할 수 있다. 또한, 몇몇 구현들은 또한 연계된 트랙킹 애플리케이션과 같은 다른 애플리케이션들과 인터페이스함으로써 본 발명의 이익들을 성취할 수 있다. 여기서, 예를 들어 이러한 애플리케이션은 선적 산업의 멤버들 사이의 물류 정보 공유 및 통신 흐름을 용이하게 할 수 있다.
예를 들어, 본 발명의 시스템들 및 방법들과 연계된 특징들 및 기능성을 통해, 본 발명의 구현들은 문제가 터미널에서 발생할 때 SSCO들이 경고될 수 있게 할 수 있다. 게다가, SSCO들은 각각의 문제점의 상세들 및 문제점에 관련된 이들의 데이터에 액세스하고, 리뷰하고, 업데이트하기 위한 신속한 링크들을 제시받을 수도 있다. 일단, 데이터가 보정되어 있으면, 운영 엔티티(예를 들어, 운전자 등) 및 터미널 사무원은 이어서 이들의 트랜잭션들을 처리할 수 있다.
본 발명의 이들 시스템들, 방법들 및 특징들의 함수로서, 본 발명들은 임의의 시간에 다양한 장소들로부터 네트워크 기반 가시성 및 기능성을 터미널들에 제공하는 능력들을 소유하고 능력들을 산출한다. 터미널들은 운전자가 수신하는 동일한 인쇄된 문제 티켓들의 상세들을 갖고, 카테고리, 상태, 장비 번호 또는 게이트 통과 번호에 의해 문제 트랜잭션들을 라이브로 뷰잉할 수 있다. 몇몇 구현들에서, TOS 웹 포털 내의 문제 페이지는 해결책을 촉진하는 능력을 터미널 운영자들에 제공한다.
부가적으로, 몇몇 구현들의 시스템 및 방법들은 실시간 선박 스케쥴들, 수입 및 수출 컨테이너 정보, 게이트 활동 및/또는 TOS로부터 발생된 사용자 계정 정보로의 사용자 액세스를 제공할 수도 있다. 터미널 관리자들은 터미널-특정 구성 및 정보를 셋업하고; 사용자 계정 관리를 수행하고, 사용자들로의 이메일 또는 팩스의 자동 송신을 셋업할 수 있다.
도 2는 계층화되고, 모듈 기반이고 그리고/또는 TOS 비의존성일 수 있는 특정 방법들을 이용하는데 사용된 몇몇 예시적인 구현들의 예시적인 아키텍처를 상세히 도시한다. 여기에 도시된 다양한 특징의 예들이 이하에 설명된다.
계층화된 아키텍처
몇몇 구현들에 따르면, 본 발명의 혁신적인 계층화된 아키텍처(들)는 또한 스케일 가능성 목적으로 개별 물리적 티어들(tiers)로 레이어들을 분할하는 능력 및 양호한 유지 가능성을 또한 제공할 수 있는 코드의 팩터링 및 관심의 분리를 제공하는 것이 가능하다. 일 시초에서, 본 발명의 혁신들은 프로세싱을 수행하고, 3개의 레이어들: 제시 레이어(214), 서비스 레이어(222), 비즈니스 로직 레이어(220) 및 데이터 액세스 레이어(250)에서 동작할 수도 있다. 여기서, 첨부된 부록들/컴퓨터 프로그램(CD) 자료들은 이하에 그리고 본 명세서의 다른 장소에 설명된 특징들의 특정 양태들 및 상관성들을 예시한다.
도 2 및 도 3을 참조하면, ASP.NET 상에 구축될 수 있고 모델-뷰-제어기 패턴을 구현하는 것이 가능한, 예를 들어 도 3a 및 도 3b에 설명된 바와 같은 모델-뷰-제어기(MVC) 프레임워크의 구성요소를 포함하거나 수반할 수 있는 예시적인 제시 레이어(214)의 표현을 포함하는 예시적인 시스템이 도 2에 도시되어 있다. 이러한 MVC 패턴은 사용자 입력(204)에 기초하여 도메인, 제시 및 동작들의 모델링을 3개의 개별 클래스로 분리할 수 있다.
모델. 모델(302)은 사용자가 작업하는 데이터를 포함하거나 표현할 수 있다. 이는 뷰 모델 또는 도메인 모델일 수 있다. 모델(302)은 애플리케이션 도메인의 거동 및 데이터를 관리하고, 그 상태에 대한 정보의 요청에 응답하고(일반적으로 뷰로부터), 상태를 변화하기 위한 명령에 응답한다(일반적으로 제어기로부터).
. 뷰(310)는 정보의 표시를 관리한다. 뷰는 사용자 인터페이스("UI")로서 모델(302)의 몇몇 부분을 렌더링하는데 이용될 수 있다.
제어기. 제어기(306)는 사용자(204)로부터의 마우스 및 키보드 입력을 해석하여, 모델(302) 및/또는 뷰(310)를 적절하게 변화하도록 경보한다.
이러한 MVC 프레임워크의 예시적인 상세는 3개의 대상체들 사이의 예시적인 구조적 관계를 도시하는 도 3a에서 발견된다. 또한, 도 3b는 MVC 애플리케이션에서의 예시적인 상호 작용의 세트를 도시한다. 본 예에서, 제어기(306)는 HTTP 입력을 구체화하고, 몇몇 구현들에서 관계 데이터베이스(314)에서 지속할 수도 있는 모델(302) 내에 데이터로서 표현된 출력을 제공한다. 마지막으로, 제어기는 제시 모델(308)을 거쳐 뷰(310)에 이러한 데이터를 공급할 수 있고, 이 데이터는 어떻게 데이터가 표시되는지를 지배하고, 응답(312)에 관한 사용자로 프롬프팅하거나 상호 작용할 수도 있다. 예를 들어, 제어기는 사용자 요청들의 상세들을 포함하는 HTTP 메시지들을 수신한다. 일단 제어기가 사용자 요청을 수신하면, 제어기는 요청을 프로세싱하고 이를 사용하여 데이터베이스와 통신하기 위해 모델을 생성한다. 모델은 데이터베이스로부터 정보로 채워지거나 데이터베이스를 업데이트하는데 사용된다. 모델은 이어서 응답으로서 리턴될 뷰를 생성하는데 사용된다.
도 2를 재차 참조하면, 대표적인 서비스 레이어(222)가 도시되어 있고, 각각의 동작에서 이용 가능한 동작의 세트를 설정하고 애플리케이션의 응답을 조정하는 레이어와 애플리케이션의 경계가 규정될 수 있고, 서비스 레이어(222)는 서비스 경계에서 노출될 서비스 인터페이스들을 규정하는데 사용된 서비스 계약들 및 동작 계약들을 포함할 수도 있다. 데이터 계약들은 또한 서비스 내외로 통과하도록 규정될 수도 있다.
일 예시적인 예에서, 본 발명은 WCF(Windows Communication Foundation) 서비스(216), 서비스-지향 애플리케이션을 구축하기 위한 프레임워크를 구현할 수도 있다. 그러나, 이러한 예(들)에서, 서비스 경계들은 명시적일 수도 있는데, 이는 서비스 경계(222) 후방의 구현의 모든 상세들을 은폐하는 것을 의미한다. 이는 어느 특정 기술이 사용되었는지를 드러내거나 지시하는 것을 포함한다.
도 4는 본 발명의 혁신들의 하나 이상의 양태들에 따른 다양한 엔티티들 및 이러한 엔티티들 내의 또는 사이의 상호 작용들 및 예시적인 웹- 또는 네트워크 기반 시스템을 도시하는 블록 다이어그램이다. 터미널 운영 시스템 정보는 복수의 터미널 운영 시스템들(429, 431, 445) 중 임의의 하나로부터 터미널 정보를 요청하고 얻을 수도 있는 컴퓨터, 랩탑, 모바일 디바이스, 서버 등을 포함하지만, 이들에 한정되는 것은 아닌 디바이스(401 내지 413)에 의해 입력될 수도 있다. 임의의 데이터 요청들 1 내지 7이 임의의 디바이스들(401 내지 413)에 입력될 수도 있다. 정보를 위한 요청들은 네트워크(415)를 통해 TOS 웹 포털 인스턴스 A(417) 또는 TOS 웹 포털 인스턴스 B(433)에 전송된다. 도 4에서, 요청들 1 내지 3은 웹 포털 A(417)에 의해 프로세싱되고, 요청들 4 내지 7은 웹 포털 인스턴스 B(433)에 의해 프로세싱된다. 요청 1은 터미널 운영 시스템 A 하에서 동작하는 터미널 A를 위한 부킹 리스트를 위한 요청이다. 요청은 웹 포털 인스턴스 A에 라우팅되고 수출 서비스(421)에 의해 프로세싱된다. GetBookingList 방법이 수출 서비스에 의해 TOS A 저장소(425), 특히 부킹 리스트가 얻어지는 수출 저장소에 호출된다. 요청된 부킹 저장소 유형이 미리 포착되면, 데이터는 저장소 인스턴스를 사용하여 TOS A 데이터베이스(429)로부터 검색된다. 그러나, 요청된 부킹 저장소 유형이 저장소 캐시 내에 있지 않으면, 저장소 인스턴스가 생성되어 캐시에 추가된다. 이 새롭게 생성된 저장소 인스턴스는 TOS A 데이터베이스(429)로부터 부킹 리스팅을 검색하는데 이용된다. 일단 검색되면, TOS A 포맷으로 제공된 부킹 리스트 정보는, 어떠한 TOS 데이터가 얻어지던간에, 동일한 방식으로 프로세싱되고 사용자에게 제시되는 비즈니스 엔티티 또는 비즈니스 대상체 포맷과 같은 TOS 비의존성 포맷 내로 저장소(425)에 의해 맵핑된다. TOS 비의존성 포맷으로부터 TOS 특정 포맷으로의 변환은 저장소 내에서 수행된다. 이에 따라, 임의의 디바이스들(401 내지 413)에 의해 입력된 모든 데이터 요청들/명령들은 TOS 비의존성 포맷으로 프로세싱된다. 단지 터미널 운영 시스템들과 직접 인터페이스할 때는 상이한 터미널 운영 시스템들과 호환성이 있는 데이터 포맷들로 변환된 TOS 비의존성 데이터이다. 따라서, 사용자는 각각의 터미널에 의해 이용된 터미널 운영 시스템을 위한 관심 없이 단일의 디바이스로부터 복수의 터미널 운영 시스템들과 상호 작용하는 것이 가능하다.
유사한 프로세스가 웹 포털 인스턴스, 서비스, 및 저장소가 액세스되는 차이들을 갖고 나머지 요청들 2 내지 7의 각각에 대해 발생한다. 예를 들어, 디바이스(403)에서의 사용자는 터미널 운영 시스템 A와는 상이한 터미널 운영 시스템 B를 사용하여 동작하는 터미널 B를 위한 수출 컨테이너 리스트(#2)를 요청한다. 수출 컨테이너 리스트를 위한 요청 2는 웹 포털 인스턴스(417)의 수출 서비스(421)에 라우팅된다. GetExportContainerList 방법이 TOS B 저장소(427)의 수출 저장소에 호출된다. 이 수출 저장소는 웹 포털 서비스 TOS B(431)로부터 네트워크(447)를 거쳐 요청된 수출 컨테이너 리스트를 검색한다. 웹 포털 인스턴스 A(417)는 수출 컨테이너 리스트(403)를 디바이스(403)에 리턴한다.
디바이스(407)에서의 사용자는 터미널 운영 시스템 C를 사용하여 터미널 C를 위한 선하증권(B/L) 상태를 위한 업데이트를 입력할 수도 있다. 업데이트는 TOS 비의존성 데이터 포맷으로 입력된다. 업데이트는 웹 포털 인스턴스 B(433)의 수입 서비스(437)에 전송된다. 업데이트 B/L 방법은 TOS C 저장소(443)의 수입 저장소에 수입 서비스(437)에 의해 호출된다. TOS C 저장소(443) 내에서, 수입 저장소는 B/L 업데이트 상태의 사용자 입력을 TOS C 데이터 포맷 내에 맵핑하고, TOS C API(445)에 업데이트를 전송한다. 이에 응답하여, TOS C API(445)는 TOS C 저장소(443)에 확인응답(acknowledgement) 또는 다른 응답(reply)을 전송할 수도 있다. TOS C 저장소(443)는 TOS C 포맷의 임의의 데이터를 TOS 비의존성 포맷으로 변환하고, 관련 정보를 디바이스(407)에 리턴한다. 하나 이상의 예를 취하여, 디바이스(413)에서의 사용자는 TOS A 및 TOS B와는 상이한 TOS C를 사용하여 동작하는 터미널 C를 위한 부킹 리스트 정보를 위한 요청을 입력한다. 요청은 웹 포털 인스턴스 B(433)의 수출 서비스(439)에 포워딩된다. 수출 서비스(439)는 TOS C 저장소(443)의 수출 저장소에 GetBookingList 방법을 호출한다.
도 4를 참조하면, 트럭킹/예약 시스템(459)(예를 들어, VoyagerTrack 등과 같은 시스템) 및 다른 TOS 시스템/인터페이스(457)(예를 들어, M21 등과 같은 시스템)와 같은 다른 엔티티들과의 상관성들이 도시되어 있다. 본 명세서의 특징들에 의해, 정보 및 데이터는 임의의 이러한 시스템들 또는 엔티티들의 서비스 레이어들 전체에 걸쳐 프로세싱될 수도 있다. 예를 들어, 트럭킹/예약 시스템(459)으로부터 요청(477)은 엔티티(405)로부터의 게이트 문제(#3)에 관한 요청(475)과 조화하여 프로세싱될 수도 있다. 또한 예로서, 다른 TOS 시스템/인터페이스(457)로부터의 요청(473)이 엔티티(401)로부터 부킹 리스트(#1)를 위한 요청(471)과 조화하여 프로세싱될 수도 있다.
도 5는 본 발명의 혁신들의 하나 이상의 양태들에 따른 본 발명의 TOS 웹 포털 구현들(514)과 수반된 다양한 예시적인 특징들, 서비스들 또는 구성요소들을 도시하는 블록 다이어그램이다. 도 5를 참조하면, 본 시스템들의 구현들은 다른 이러한 구성요소들 중에서도, 운영 서비스(502), 예약 서비스(580), 지불 서비스(560), 통지 서비스(520) 및/또는 보고 서비스(540)와 같은 구성요소들을 포함하거나 수반할 수도 있다. 이들 예시적인 서비스들의 일부는 도 5에 도시된다. 몇몇 예시적인 구현들에서, 운영 서비스(502) 구성요소는 수입(504), 수출(510), 장비 제어(506) 및 게이트 활동(508)을 취급하기 위한 서브구성요소 서비스를 포함할 수도 있다. 유사하게, 예시적인 통지 서비스(520)는 게이트 활동(522), 예약 상태(524), 부킹(526), 초과정박(demurrage)(528), 및 컨테이너 상태(530)를 위한 서브구성요소 서비스들을 포함할 수도 있다. 보고 서비스(540)는 수입 컨테이너(542), 선박 스케쥴(544), 수출 부킹(548), 게이트 활동(546), 선하증권(550)을 위한 서브구성요소 서비스들을 포함할 수도 있다. 지불 서비스(560)는 초과정박(562), 관세(566) 및 지불(564)을 위한 서브구성요소 서비스들을 포함할 수도 있다. 예약 서비스(580)는 수입 풀아웃(full-out)(582), 엠티인 체커(empty-in checker)(584), 수출 풀인(full-in)(586), 및 섀시 인/아웃(chassis in/out)(588)을 위한 서브구성요소 서비스들을 포함할 수도 있다.
다른 예에서, 서비스 레이어(222)는 개별 클래스 어셈블리로 컴파일링되고 서비스 호스트 환경에서 호스팅된다. 애플리케이션 레이어(214)는 단지 이 레이어에 대해 인지하고 이 레이어에 대한 액세스를 갖는다. 요청이 서비스 레이어(222)에 의해 수신될 때마다, 요청은 저장소(226)에 디스패치되고, 비즈니스 로직 레이어는 작업을 수행한다. 임의의 데이터베이스 지원이 저장소(226)에 의해 요구되면, 이는 데이터 액세스 레이어(250)를 통해 진행한다.
도 2를 재차 참조하면, 본 예시적인 예에서 제 3 레이어는 비즈니스 로직 레이어(220)이다. 본 명세서의 TOS 웹 포털(514) 구현들과 연계된 이러한 비즈니스 로직들은 TOS 웹 포털(514) 비즈니스 도메인을 표현하는 개념 레이어인 도메인 모델에 의해 표현될 수도 있다. 이러한 도메인 모델(들)은 데이터 및 프로세스를 자유롭게 혼합하고, 다치 속성들 및 연계들의 웹을 갖고, 상속(inheritance)을 사용할 수도 있다.
일 예시적인 TOS 웹 포털(514) 구현에 따르면, 도메인 모델은 각각의 데이터베이스 테이블을 위한 대부분의 하나의 도메인 대상체를 갖는 데이터베이스 디자인처럼 보이도록 구성될 수도 있다. 또한, 여기서, 비즈니스의 거동이 변화를 받게 되기 때문에, 이 레이어를 용이하게 수정하고, 구성하고, 테스트하는 것이 가능한 것이 중요하다. 이와 같이, 시스템 내의 도메인 모델로부터 다른 레이어들로의 최소 커플링 특징들이 구현될 수도 있다.
엔티티들. 이러한 TOS 웹 포털(514)의 구현들은 선하증권, 컨테이너, 장비, 부킹, 해제 등과 같은 엔티티로서 비즈니스 대상체를 규정할 수도 있다. 각각의 엔티티는 비즈니스 도메인에서 몇몇 의미있는 개체를 표현할 수도 있다. 이들 대상체들은 비즈니스가 사용하는 규칙들을 캡처하는 대상체들 및 비즈니스 내의 데이터를 모방한다. 상속, 조성들, 집성 관계들은 이들 엔티티들 사이에 규정된다. 도 6은 부킹 모듈 내의 엔티티들의 예를 도시한다. 부킹 엔티티는 자산들로서 선박, 항구, 파트너 및 부킹 라인 엔티티들을 갖고, 부킹 라인 외에 이들 사이의 일-대-일 관계들이 있다. 부킹 및 부킹 라인은 일-대-다 관계들을 갖는다. 부킹 엔티티는 컨테이너 대상체로부터 상속되는 하나 이상의 수출 컨테이너 엔티티들을 가질 수도 있다. 수출 컨테이너 엔티티는 자산들로서 수출 컨테이너 상태, 수출 컨테이너 야드 상태, 및 트럭킹 회사 엔티티들을 갖고, 일-대-일 관계를 갖는다. 여기서, 예를 들어, 이러한 부킹 대상체(608)는 선박들(618), 항구(620), 파트너들(622) 대상체들, 뿐만 아니라 트럭킹 회사(616) 및 수출 컨테이너들(606)의 상태를 가질 수도 있다.
저장소. 도 2를 다시 한번 참조하면, 저장소(226)는 애플리케이션의 데이터 소스 레이어(250)와 비즈니스 레이어들(220) 사이를 중재한다. 몇몇 구현들에서, 이는 데이터를 위한 데이터 소스에 질의하고, 데이터 소스로부터 비즈니스 엔티티로 데이터를 맵핑하고, 비즈니스 엔티티의 변화들을 지속하고, 데이터 소스에 변화들을 제시한다. 또한, 저장소(226)는 기초 데이터 소스들과의 상호 작용들로부터 비즈니스 로직을 분리할 수도 있다.
도 2를 다시 한번 참조하면, 예의 제 4 레이어는 데이터 액세스 레이어(250)이다. 몇몇 구현들에서, 데이터 액세스 레이어(250)는 데이터 저장부에 이야기하고 비즈니스 대상체들을 지속하여 검색하는 책임만이 있는 레이어이다. 레이어는 통상적으로 모든 생성, 판독, 업데이트 및 삭제(CRUD) 방법들, 트랜잭션 관리, 데이터 동시성, 뿐만 아니라 비즈니스 로직 레이어가 임의의 주어진 기준을 위한 대상체를 검색하는 것을 가능하게 하는 질의 메커니즘을 포함한다.
모듈 기반 애플리케이션들
여기의 시스템 및 방법의 특정 예들에서, 이러한 TOS 웹 포털(514)은 모듈 기반 애플리케이션일 수도 있고 독립적으로 추가되고 제거될 수 있는 모듈들의 집합을 갖는 것이 가능하다. 각각의 모듈은 TOS 웹 포탈(514) 내의 .NET 어셈블리(동적 링크 라이브러리 어셈블리)로서 정의될 수 있다. 또한, 모듈은 모듈을 사용하는 임의의 엔티티인 클라이언트에 비즈니스 로직을 노출하는 책임이 있을 수 있다.
사용자가 모듈 구현을 수정하기를 원하면, 변화들은 단지 해당 모듈에만 구속될 수 있다. 이러한 모듈 기반 아키텍처는 모듈들 및 클라이언트들이 개별적으로 전개하게 한다. 새로운 버전들의 현존하는 모듈이 현존하는 클라이언트 애플리케이션들에 영향을 미치지 않고 전개될 수 있다. 또한, 새로운 버전의 현존하는 클라이언트 애플리케이션은 현존하는 모듈들에 영향을 미치지 않고 전개될 수 있다.
본 발명의 몇몇 구현들에 따르면, 이러한 TOS 웹 포털 구현들의 모듈들의 전개는 그 일부가 도 7에 도시되어 있는 이하의 특성들 중 하나 이상을 가질 수 있다:
· 인터페이스-기반 프로그래밍
구현으로부터 인터페이스의 분리를 특징화함. 여기서, 예를 들어, 클라이언트는 그(대상체) 특정 구현이 아니라 서비스(인터페이스)의 추상성에 대해 코딩될 수 있다. 그 결과, 서버측에서의 구현 상세를 변경하거나 또는 심지어 상이한 서비스 공급자로 스위칭이 클라이언트에 영향을 미치지 않는다.
· 위치 투명성
TOS 웹 포털 구현들(514)은 다수의 모듈들을 포함할 수 있다. 이들 모듈들은 모두 동일한 프로세스에, 동일한 기계 상의 상이한 프로세스들에, 또는 네트워크 상의 상이한 기계들 상에 존재할 수 있다. 그러나, 대상체들이 실행하는 위치에 속하는 클라이언트의 코드에 아무것도 존재하지 않을 수도 있다.
· 버저닝(versioning) 지원
본 발명의 구현들은 다른 모듈들에 영향을 미치지 않고 현존하는 모듈들의 새로운 버전들 또는 업데이트된 버전들을 전개할 수도 있다. 그 결과, 모듈은 상이한 경로들을 따라 전개되도록 허용될 수 있고, 동일한 모듈의 상이한 버전들이 동일한 기계 상에, 또는 심지어 동일한 클라이언트 프로세스에, 나란히 전개될 수 있다.
또한, 본 명세서에서 TOS 웹 포털(514)의 실시예들은 양 애플리케이션들을 조합하는 연계된 트랙킹 애플리케이션들/구성요소들 및 관리 모듈(722)을 위한 보고 모듈(730), 예약 모듈(724), 지불 모듈(726) 및 통지 모듈(728) 및 현존하는 시스템들 내의 전통적인 기능성들을 대체하는 것이 가능한 수입 모듈(714), 수출 모듈(716), 게이트 모듈(720) 및 장비 제어 모듈(718)의 능력들을 포함하고, 수반하고 그리고/또는 이들에 대한 액세스를 가질 수 있다.
TOS 비의존성
본 명세서에 개시된 시스템 및 방법들의 몇몇 구현들 또는 예들은 TOS 비의존성 디자인을 포함할 수도 있다. 즉, 시스템은 동작이 어느 TOS를 그가 다루는지에 대해 다양한 프로세싱을 위한 '주의' 없이 발생할 수도 있도록 구성된다. 전술된 프레임워크들의 맥락에서, 예를 들어, 이러한 구현들은 저장소 - 패턴으로서 구성(들)을 포함할 수도 있다. 저장소 패턴은 터미널 운영 시스템(TOS) 독립성을 가능화하는데 사용된다. 각각의 TOS는 그 자신의 독특한 데이터베이스 스키마를 이용할 수 있다.
도 8은 본 발명의 혁신들의 하나 이상의 양태들에 따른 비즈니스 엔티티들에 TOS로부터의 저장소 맵핑의 예시적인 양태들을 도시하는 블록 다이어그램이다. 도 8을 참조하면, 예시적인 저장소(806)는 데이터를 검색하는 로직을 분리하고 모델 상에 작용하는 비즈니스 로직으로부터 엔티티 모델에 이를 맵핑할 수 있다. 또한, 비즈니스 로직은 데이터 소스 레이어(810)를 포함하는 데이터의 유형에 비의존성일 수도 있다. 예를 들어, 데이터 소스 레이어(810)는 데이터베이스 또는 웹서비스일 수 있다. 도 8은 TOS로부터 비즈니스 엔티티들(804, 812)로의 예시적인 저장소 맵핑을 도시한다.
도 9는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 저장소 캐싱 방안을 도시하는 다이어그램이다. 여기서, 예를 들어, 데이터를 위한 백킹 저장부는 비즈니스 라인(line-of-business: LOB) 애플리케이션(908)에 의해 노출된 비즈니스 서비스일 수 있다. 서비스들은 종종 저장소(906) 내에 구현된 캐싱 전략들로부터 호출하고 이익을 얻기에 고가이다. 이러한 경우들에, 저장소(906) 내의 질의 로직은 질의된 저장소 인스턴스가 캐시(912) 내에 있는지 여부를 확인하기 위해 먼저 체크할 수도 있다. 이들이 캐시 내에 있지 않으면, 저장소(906)는 정보를 검색하기 위해 웹 서비스에 액세스한다. 이러한 예시적인 캐싱 방안은 도 9에 도시되어 있다.
도 10은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 TOS-독립적 또는 TOS-비의존성 저장소 로케이터를 수반하는 도면이다. 도 10의 대표적인 다이어그램을 참조하면, TOS 웹 포털의 서비스들 구성요소(1004)는 상이한 터미널 운영 시스템들에 의한 멀티-터미널들을 지원하도록 설계될 수 있다. TOS 비의존성 방식으로 멀티-터미널들을 지원하기 위해, 서비스들 구성요소(1004)는 분산형 터미널 데이터베이스들(1016, 1018, 1020)로의 액세스를 제공하는 저장소와 연계된 프로세싱을 수행하고 룩업하는 다른 구성요소 또는 애플리케이션을 포함하거나 수반할 수 있다. 여기서, 예를 들어, 이러한 기능성은 저장소 로케이터 구성요소 또는 디바이스(1008)를 거쳐 성취될 수도 있다.
본 발명의 구현들에 따르면, 이러한 저장소 로케이터(1008)는 분산형 저장소 룩업들을 중앙집중하고, 중앙집중된 제어 포인트를 제공하고, 중복 룩업들을 제거하는 캐시로서 작용할 수도 있다. 재차, 예시적인 TOS 독립 저장소 로케이터가 도 10에 도시된다. 몇몇 TOS 진단 혁신들의 부가의 기술적 상세들은 이하에 그리고 첨부된 부록 자료들에 더 설명된다.
시스템 및 프로세스 아키텍처
여기에 개시된 시스템의 예들의 일부의 디자인 및 아키텍처는 본 발명의 TOS 웹 포털 구현들(514)이 단일의 TOS와 일체화되는 것에 반대로 임의의 현존하는 TOS로의 애드온(add-on)이 되는 것을 가능하게 한다. 이 접근법은 본 발명의 혁신들 및 기능성이 웹 서비스 API 레이어를 통해 임의의 현존하는 TOS 내에 합체되게 한다. 다른 TOS들로의 인터페이스들은 본 발명의 TOS 웹 포털 구현들을 재설계하거나 재구성할 필요성 없이 성취될 수 있다.
도 11은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 시스템 토폴로지를 도시하는 블록 다이어그램이다. 예를 들어, TOS 웹 인터페이스 서버의 다수의 인스턴스들이 다수의 터미널들을 지원하기 위해 2개의 물리적 위치들에서 전개될 것이다. 일 위치는 네트워크 스위치를 거쳐 접속된 것들과 같은 2개의 인스턴스들(1120, 1124)을 갖는다. 네트워크 스위치는 각각의 서버 인스턴스 내의 부하를 균형화하기 위해 사용자 요청들을 분산한다. 다른 서버 인스턴스들(1128, 1132)의 세트는 동일한 방식으로 수행하지만, 특정 위치에서의 지진, 정전 등과 같은 문제점들을 복구하기 위해 상이한 물리적 위치에 위치된다. 이와 같이, 본 발명의 TOS 웹 포털(1120, 1124, 1128, 1132)의 다수의 인스턴스들은 심지어 모두 중앙 클라우드 서버(1102)와 인터페이스하는 다수의 인터넷 공급자들(1104, 1108)을 가로질러 다수의 상이한 TOS 시스템들(1136, 1140, 1144, 1148, 1152, 1156)과 인터페이스하는데 사용될 수 있다.
대상체 지향성 프로그래밍(OOP)
본 발명의 시스템들 및 방법들은 대상체 지향성 프로그래밍의 개념들 및 규칙들을 사용하여 또한 구성될 수 있다. 여기서, 예를 들어, 몇몇 구현들은 터미널 운영을 위한 비즈니스 프로세스들의 추상성들과 함께 규정되는 대상체들 - 데이터 필드들 및 방법들로 이루어진 데이터 구조들 - 을 이용할 수 있다. 대상체 지향성 특징들 및/또는 프로그래밍을 이용하는 이러한 구현들은 무엇보다도, 재사용 가능성, 확장성, 디커플링, 유지성 및/또는 감소 복잡성의 하나 이상의 영역들에서와 같이 다수의 이익들을 제공할 수도 있다.
재사용 가능성. 재사용 가능성 특징들을 갖는 몇몇 예시적인 대상체 지향성 구현들은 다수의 애플리케이션들에 의해 사용될 수 있는 클래스들을 갖고 구성될 수도 있다. 예를 들어, 이러한 시스템들 및 방법들은 대상체들로서 공통 비즈니스 모델을 규정하고 컨테이너, 선박, 포트, 파트너 등과 같은 클래스들을 사용하여 이들을 표현할 수도 있다. 예시적인 구성들은 여기서, 인서트 X1: 재사용 가능성 코드예에서 보여지는 바와 같은 구성들을 포함할 수도 있다.
X1 : 재사용 가능성
대상체 지향성 접근법에서, 본 출원인은 다수의 애플리케이션들에 의해 사용될 수 있는 클래스들을 구축한다. smartWeb은 대상체들로서 공통 비즈니스 모델을 규정하고 컨테이너, 선박, 포트, 파트너 등과 같은 클래스들을 사용하여 이들을 표현한다.
public class Vessel : IEquatable<vessel>
{
public string VesselCode { get; set; }
public string Name { get; set; }
public string CallYear { get; set; }
public string CallSequence { get; set; }
public string VoyageNumber { get; set; }
}
public class Container
{
public string Number { get; set; }
public string CombinedCode { get; set; }
public ContainerType Type { get; set; }
public ContainerLength Length { get; set; }
public ContainerHeight Height { get; set; }
}
public abstract class Partner
{
public PartnerKey Key { get; set; }
public string ScacOrSscoType { get; set; }
public string ScacOrSscoCode { get; set; }
public string EnglishShortName { get; set; }
public string AgreementNotSigned { get; set; }
public string InsuranceNotReceived { get; set; }
public string InsuranceExpired { get; set; }
public string PerDiemCheck { get; set; }
public string RepairCheck { get; set; }
public DateTime? EIAStartDate { get; set; }
public DateTime? EIAEndDate { get; set; }
public string CitationCheck { get; set; }
public virtual bool AgreementExists { get; set; }
private bool m_isOnHold;
public virtual bool IsOnHold
{
get
{
return AgreementExists && (AgreementNotSigned == DomainConstants .YES ||
InsuranceNotReceived == DomainConstants .YES ||
InsuranceExpired == DomainConstants .YES ||
PerDiemCheck == DomainConstants .YES ||
RepairCheck == DomainConstants .YES ||
CitationCheck == DomainConstants.YES);
}
private set { m_isOnHold = value; }
}
private bool m_isAgreementValid;
public virtual bool IsAgreementValid
{
get
{
return AgreementExists && EIAStartDate.HasValue &&
EIAEndDate.HasValue &&
EIAStartDate. Value. Date <= DateTime. Today &&
EIAEndDate. Value. Date >= DateTime. Today;
}
private set { m_isAgreementValid = value; }
}
}
여기서, 대상체의 이러한 구성들 및 정의들은 애플리케이션 전체를 통해 다수회 재사용될 수 있다. 더욱이, 동일한 대상체가 현존하는 특징들을 확장하거나 애플리케이션의 새로운 특징을 추가하는데 사용될 수 있다. 이에 따라, 애플리케이션들은 작업 대상체들을 사용하여 수정될 수 있고, 따라서 코드는 스크래치로부터 기록될 필요가 없다. 이러한 대상체들의 재사용은 이들을 재생성하는 수고를 감소시킬 뿐만 아니라, 에러들을 도입하는 기회들을 감소시킨다. 이는 개발 시간을 절약할 뿐만 아니라 이러한 애플리케이션들의 강인성을 향상시킨다.
또한, 다양한 OOP의 프로그래밍 기능들 및 모듈들이 재사용될 수 있다. 예를 들어, 이하의 인서트 X2: 테이블 예가 서비스에서 방법을 호출하는데 사용될 수 있다. 방법은 OOP 정의된 실시들이기 때문에 동일한 기능이 또한 애플리케이션 전체에 걸쳐 사용될 수도 있다.
X2 : 재사용
이들 대상체들의 정의들은 애플리케이션 전체를 통해 다수회 재사용된다. 더욱이, 동일한 대상체가 애플리케이션이 현존하는 특징들을 확장하거나 새로운 특징을 추가하는데 사용된다. 본 출원인은 작업 대상체들을 사용하여 애플리케이션들을 수정하고, 스크래치로부터 코드를 기록할 필요가 없다. 대상체들의 재사용은 이들을 재생성하는 수고를 감소시킬 뿐만 아니라 에러들을 도입하는 기회들을 감소시킨다. 이는 개발 시간을 절약할 뿐만 아니라, 애플리케이션의 강인성을 또한 향상시킨다.
OOP에서 프로그래밍 기능들 및 모듈들은 재사용될 수 있다. 이하의 방법은 서비스에서 방법을 호출하는데 사용된다. 방법은 정의된 OOP 실시들이기 때문에 동일한 기능이 애플리케이션 전체에 걸쳐 사용된다.
public TResponse Call<TRequest, TResponse>(
TRequest request,
Func<MainServiceClient, TRequest, TResponse> callOperation,
Action<string> onFailure = null)
{
try
{
var principal = HttpContext .Current .User as PortsPrincipal;
using (var contextScope = new
OperationContextScope(ServiceClient . InnerChannel))
{
if (principal != null)
SetupMessageHeader(principal);
return callOperation(ServiceClient, request);
}
}
catch (FaultException<ServiceException> ex)
{
CLogManager.LogError("faultexception " + ex. Message);
if (onFailure != null)
onFailure.Invoke(ex. Message);
return default(T esponse);
}
catch (FaultException ex)
{
CLogManager.LogError("faultexception " + ex. Message);
if (onFailure != null)
onFailure.Invoke(ex.Message);
return default(TResponse);
}
catch (CommunicationException ex)
{
CLogManager.LogError("comunication error" );
CLogManager.LogError(ex);
CloseService();
m_serviceClient = new MainServiceClient();
if (onFailure != null)
onFailure.Invoke(ex.Message);
return default(TResponse);
}
catch (Exception ex)
{
if (onFailure != null)
onFailure.Invoke(ex. Message);
return default(TResponse);
}
finally
{
CloseService();
}
}
확장성. 이러한 특징들을 예시하기 위해, 인서트 X3을 참조하라. 트럭커가 두드러진 파트너라고 가정한다. 여기서, 이어서, 구현들은 파트너를 상속함으로써 트럭커를 정의할 수도 있다. 이러한 양태들을 거쳐, 구현들은 중목 코드를 제거하고 현존하는 클래스들의 사용을 확장할 수 있다.
X3 . 확장성
트럭커는 파트너이다. 따라서, 본 출원인은 파트너를 상속함으로써 트럭커를 정의한다. 이를 통해, 본 출원인은 중복 코드를 제거하고 현존하는 클래스들의 사용을 확장할 수 있다.
public class Trucker : Partner
{
public string TruckerCheck { get; set; }
public bool IsValid
{
get
{
return IsAgreementValid && ! IsOnHold;
}
}
public override bool IsOnHold
{
get
{
return base. IsOnHold || TruckerCheck ==
DomainConstants.YES;
}
}
}
디커플링. 디커플링과 관련하여, 시스템들 및 방법들은 구현을 사용하는 대신에 인터페이스를 사용하여 모듈들을 디커플링하도록 구성될 수 있다. 몇몇 구현들, 예를 들어, 인서트 X4에서, 저장소 대상체는 인터페이스들을 만족하도록 규정될 수 있다. 애플리케이션이 TOS 비의존성이 가능하게 하는 구현으로부터 인터페이스의 이러한 디커플링; 예시적인 구성들이 여기서 이하와 같이 구조화될 수 있다.
X4 : 디커플링
smartWeb 내의 OOP 실시들은 구현을 사용하는 대신에 인터페이스를 사용하여 모듈들을 디커플링한다. 예를 들어, 저장소 대상체는 인터페이스들을 만족하도록 규정된다. 구현으로부터 인터페이스의 디커플링은 TOS 비의존성인 애플리케이션을 허용한다.
public override IBookingRepository LocateBookingRepository()
public override IBookingOperationRepository
LocateBookingOperationRepository()
public override ITransshipBookingRepository
LocateTransshipBookingRepository()
public override IExportContainerRepository
LocateExportContainerRepository()
public override IBillOfLadingRepository LocateBillOfLadingRepository()
public override IContainerRepository LocateContainerRepository()
public override IlmportDraylnRepository LocateImportDrayInRepository()
public override IRailBookingRepository LocateRailBookingRepository()
public override IPreStageHazardousRepository
LocatePreStageHazardousRepository()
public override IBookingNonHazardousRepository
LocateBookingNonHazardousRepository()
유지 가능성. 본 명세서의 대상체들 및 다양한 OOP 특징들의 사용을 통해, 이러한 구현들에 규정된 기능들은 현존하는 시스템들에서의 것들과 비교하여 매우 간단한 리턴값들 및 파라미터들을 가질 수 있다. 이하의 표는 인서트 X5에서 보여지는 바와 같은 몇몇 예시적인 예들을 나타낸다.
X5 : 유지 가능성
대상체들을 사용하여, smartWeb에서 규정된 기능들은 기존의 web TAMS에 있는 것과 비교할 때 매우 단순한 리턴값과 파리미터들을 가진다. 하기 테이블은 임의의 예를 나타낸다.
표 1
Figure pct00001
Figure pct00002
Figure pct00003

감소 복잡성/ 복잡성들. 여기서, 비즈니스에서 주어진 문제점이 상이한 대상체들의 수집으로서 고려될 수 있는 이러한 장점들이 성취될 수도 있다. 각각의 대상체는 비즈니스 엔티티를 표현하고 특성들 및 방법들로서 모든 비즈니스 특성들 및 비즈니스들을 갖는다. 이 추상성은 문제점의 복잡성을 감소시키고, 복잡성을 관리하는 것을 용이하게 한다. 예를 들어, 인서트 X6, EquipmentControlEditModel 대상체는 터미널 내의 컨테이너들 또는 새시에 관한 모든 비즈니스 특성들 및 프로세스들을 추상화한다.
X6 : 문제점의 감소된 복잡성
비즈니스의 주어진 문제점은 상이한 대상체들의 집합으로서 고려될 수 있다. 각각의 대상체는 비즈니스 엔티티를 표현하고, 특성들 및 방법들로서 모든 비즈니스 특성들 및 프로세스들을 갖는다. 이 추상성은 문제점의 복잡성을 감소시키고 복잡성을 관리하는 것을 용이하게 한다.
예를 들어, EquipmentControlEditModel 대상체는 터미널 내의 컨테이너들 또는 섀시를 관리하는 것과 관련된 모든 비즈니스 특성들 및 프로세스들을 추상화한다.
public class EquipmentControlEditModel
{
public InquiryModel Inquiry { get; set; }
public MultilnquiryModel MultiInquiry { get; set; }
public string SteamshipCompany { get; set; }
public EquipmentState State { get; set; }
public string InventoryStatus { get; set; }
public string DamageCondition { get; set; }
public string Memo { get; set; }
public string InDate { get; set; }
public string OutDate { get; set; }
public string InGatePass { get; set; }
public string OutGatePass { get; set; }
public bool HasAction { get; set; }
public string ActionType { get; set; }
public string ServiceCodeDescription { get; set; }
public bool HasPendingAction { get; set; }
public bool ShowErrorMessage { get; set; }
public string ErrorMessage { get; set; }
}
이 모듈성은 대상체가 다른 대상체들에 독립적으로 유지되게 한다. 모든 이들 대상체들은 서로 독립적이고, 개별적으로 유지된다. 또한, 다른 대상체들의 기능성들에 영향을 미치지 않고 대상체 내의 수정을 행할 수 있다.
보안
본 발명의 TOS 웹 포털 시스템들 및 방법들의 실시예들은 이하의 보안 구현들: 사용자들을 인증하기 위한 인증; 어느 동작들을 사용자가 실행할 수 있는지 및 어느 리소스들을 사용자가 액세스할 수 있는지를 결정하기 위한 승인; 및 변화들, 클라이언트와 서버 사이에 전송된 사용자 데이터를 보호하기 위한 완전성 중 하나 이상을 가질 수 있다. 도 12는 본 발명의 혁신들의 하나 이상의 양태들에 따른 P시적인 사용자 인증 및 승인 프로세스의 예시적인 흐름도이다. 도 12의 예시적인 프로세싱을 참조하면, 사용자는 제한된 리소스를 위한 요청을 제출하고(1202), 시스템은 사용자가 인증되었는지를 검증한다(1206). 만일 인증이 안되었으면, 사용자는 로그인해야 한다(1218). 일단 사용자가 인증되면, 시스템은 사용자가 허가를 갖는지를 검증할 수 있고(1210), 만일 검증되었으면 리소스로의 액세스를 허용하거나(1214) 또는 액세스를 거부한다(1222).
시스템 및 방법들의 특정 예시적인 구현들에서, 인증은 상이한 방법들에서 발견될 수 있다. 이들의 예들은 특히 윈도우 인증(윈도우에 서명된 사용자), 폼들 인증(로그인을 위해 웹페이지를 사용함), 패스포트 인증(인증을 위해, 현재 라이브 Id로서 또한 공지된 마이크로소프트의 패스포트를 사용하여) 등일 수 있다.
폼들 인증은 인터넷 및 제한 사용자로부터 승인된 고객들까지 사용할 수 있다. 또한, 폼들 인증은 토큰-기반 시스템일 수 있다. 예를 들어, 사용자들이 로그인할 때, 사용자들은 기본 사용자 정보를 갖는 토큰을 수신한다. 이 정보는 각각의 후속의 요청시에 자동으로 제출되도록 응답에 어태치된 암호화된 쿠키 내에 저장될 수 있다. 도 13은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 폼들 인증 및 승인 프로세스의 예시적인 흐름도이다. 이 인증 프로세스의 예는 ASP.NET 제공된 적절한 IIS 인증 세팅으로 통과된 초기 클라이언트 요청(1302)을 포함한다(1306). 시스템은 사용자가 인증 쿠키가 할당되었는지 여부를 검증하고(1310), 만일 검증되지 않았으면, 로그인 폼은 사용자 자격증명들을 수집하고(1314) 자격증명들을 인증한다(1318). 자격증명이 인증 프로세스를 통과하면(1322), 시스템은 쿠키(1326)를 어태치하고 자격증명들이 액세스를 위해 승인되는지 여부를 테스트한다(1330). 자격증명들이 인증되거나(1322) 또는 승인되지(1334) 않으면, 시스템은 액세스를 거부할 것이다(1338). 자격증명들이 인증되고(1322) 승인(1334)되면, 시스템은 사용자가 보호된 리소스(1342)에 액세스하게 할 것이다.
또한, 본 명세서의 시스템 및 방법들은 승인 모델을 이용할 수 있다. 예를 들어, 구현들은 허가-기반 보안 모델을 사용하도록 구성될 수 있다. 이러한 모델은 현존하는 시스템들의 "그룹들" 또는 "유형들"로서 유사한 기능들을 수행하는 것들과 같은 사전 규정된 역할들을 가질 수 있다. 그러나, 본 발명의 시스템들에서, 구현들은
· 페이지를 뷰잉하거나 업데이트하기 위해, 사용자가 동작을 위한 허가를 필요로 함.
· 데이터/필드를 뷰잉하거나 업데이트하기 위해, 사용자는 동작을 위한 허가를 필요로 함.
· 사용자가 수입 컨테이너 리스트를 뷰잉하기를 원할 때, 사용자는 수입 컨테이너 리스트 페이지를 위한 적절한 허가를 가져야 함.
· 사용자가 수입 컨테이너 페이지 내의 내용물들을 업데이트하거나 저장하기를 원할 때, 사용자는 수입 컨테이너 리스트 페이지를 위한 적절한 허가를 가져야 함
과 같은 보안 유효화를 필요로 하는 각각의 동작을 위한 허가를 필요로 할 수도 있다.
이들 구현들에 따르면, 역할은 역할의 소유자에 허용된 허가들의 세트에 의해 규정될 수 있다. 사용자들은 다수의 역할들을 가질 수 있고, 각각의 역할에 속하는 모든 허가들을 가질 것이다. 이러한 특징들은 사용자들이 현장에서 기선 회사를 위한 상이한 역할들을 갖는 것을 허용하고, 또는 현장을 위한 모든 기선 회사들을 위한 동일한 역할 또는 모든 기선 회사들 및 모든 현장들을 위한 하나의 역할을 갖는다.
또한, 구현들은 사전 규정된 역할(들) 및 맞춤형 역할(들)을 가질 수 있다. 여기서, 예를 들어, 사전 규정된 역할 예들은 User Admin, Gate Clerk, Super Admin, SSCO User, Terminal User, 및 가능하게는 다른 것들을 포함할 수 있다. 맞춤형 역할은 사용자가 맞춤화된 역할(허가들의 세트)을 갖게 할 수 있다. 본 발명의 TOS 웹 포털 시스템들의 관리 모듈은 ABCD-Admin, XYZ-Bob 등과 같은 새로운 역할로서 지속될 허가들을 사용자에게 할당하기 위한 툴(들)을 제공할 수 있다. 또한, 이들 맞춤형 역할들은 재사용될 수 있다. 보안을 수반하는 또 다른 구현들에서, ASP.NET 보안 프레임워크는 등록, 패스워드들 관리, 및 개인 선호도들 설정을 포함하는 모든 공통 사용자 계정 작업들을 지원하는 표준화된 사용자 계정들 시스템을 가질 수 있다.
본 발명의 부가의 실시예들에 따르면,
· 사용자 계정들을 등록하고 계정 상세들 및 자격증명들의 저장소에 액세스하는 것을 포함하는 멤버쉽
· 통상적으로 승인을 위해 사용된 그룹들의 세트(가능하게는 중첩)로 사용자들을 투입하는 것을 포함하는 역할들
· 사용자들이 사용자당 기초로 임의의 데이터를 저장하게 하는 프로필들
중 하나 이상을 포함하는, 구현될 수 있는 3개의 기능 영역들이 존재할 수 있다.
ASP.NET은 이들 3개의 영역들의 각각을 위한 구현들을 제공하지만, 본 발명의 시스템들은 공급자들의 시스템을 통해 맞춤형 구현을 갖고 구성될 수 있다는 것이 주목되어야 한다. 여기서, 예를 들어, 맞춤형 공급자들은 "빌트인" 추상성 공급자 클래스로부터 유도될 수 있다.
마지막으로, 몇몇 구현들에 대해, 본 발명의 TOS 웹 포털 특징들을 수반하는 본 발명의 시스템들 및 방법들은 모든 모듈들 내에서 SSL(Security Sockets Layer)을 사용할 수 있다.
TOS - 비의존성 상세들 및 양태들
본 발명의 구현예들은 전술된 계층화된 아키텍처를 수반할 수 있다. 레이어는 동일한 프로세스 공간 내에 상이한 어셈블리를 도입하는 것과 같은 논리적 분리라 칭한다. 계층화는 유지 가능성 및 스케일 가능성을 제공하는 관심들의 분리 및 코드의 더 양호한 팩터링을 제공한다. 본 발명의 다양한 구현들에 따르면, 본 발명의 TOS 웹 포털 시스템들 및 방법들에 4개의 레이어들 - 제시, 서비스, 비즈니스 로직 및 데이터 액세스 레이어들이 존재할 수도 있다.
본 발명의 비즈니스 로직들 레이어/양태들은 TOS 웹 포털의 비즈니스 도메인을 표현하는 개념적 모델인 도메인 모델에 의해 표현된다. 도메인 모델은 데이터 및 프로세스를 모방하고, 연계들의 다치 속성들 및 복합 웹을 갖고, 상속을 사용할 수도 있다. 또한, 데이터 액세스 레이어는 데이터 저장부에 말하고 비즈니스 대상체들을 지속하고 검색하는 책임만이 있는 레이어이다. 레이어는 통상적으로 모든 생성, 판독, 업데이트 및 삭제 방법, 트랜잭션 관리, 데이터 동시성, 뿐만 아니라 비즈니스 로직 레이어가 임의의 주어진 기준을 위한 대상체를 검색하는 것을 가능하게 하는 질의 메커니즘을 포함한다.
상이한 터미널 운영 시스템들은 상이한 데이터 지속 기술들을 사용할 수도 있고, 지속된 데이터에 액세스하기 위해 상이한 방법을 필요로 할 수 있을 것이다. 이는 상이한 벤더들(Oracle, MS Sql, MySql 등)로부터 관련 데이터베이스들로의 액세스일 수도 있다. 또는, 이는 WS* - 순응성 웹 서비스들의 종단점으로의 액세스일 수도 있다. TOS 비의존성인 시스템에 대해, 비즈니스 로직 레이어 및 제시 레이어에 대한 최소의 영향을 갖고 어떻게 시스템이 데이터 액세스 방법을 스위칭하는지가 중요하다.
저장소-패턴. 본 발명의 저장소 패턴 특징들 및 기능성은 smartWeb 애플리케이션이 터미널 운영 시스템(TOS)에 독립적이게 하는데 사용될 수 있다. 저장소는 데이터를 검색하여 이를 엔티티 모델에 맵핑하는 로직을 모델 상에 작용하는 비즈니스 로직으로부터 분리한다. 비즈니스 로직은 데이터 소스 레이어를 포함하는 데이터의 유형에 비의존성이어야 한다. 예를 들어, 데이터 소스 레이어는 데이터베이스 또는 웹 서비스일 수 있다.
또한, 몇몇 구현들에, 데이터를 위한 백킹 저장부는 비즈니스 라인(LOB) 애플리케이션에 의해 노출된 비즈니스 서비스일 수 있다. 서비스들은 종종 저장소 내에 구현된 전략들을 캐싱을 호출하고 그로부터 이익을 얻기에 고가이다. 이 경우에, 로직은 저장소가 캐시 내에 있는지를 확인하도록 먼저 체크한다. 만일 캐시 내에 있지 않으면, 저장소 인스턴스가 생성되고 요청된 정보를 검색하도록 이용된 캐시 내에 배치된다.
서비스 로케이터 패턴. 본 발명의 서비스 로케이터 패턴 특징들 및 기능성은 어떻게 애플리케이션이 필요로 할 수 있는 서비스들을 검색하는지를 인지하는 구성요소를 규정할 수 있다. 호출자는 구체성 유형을 지정할 필요가 없고; 호출자는 일반적으로 인터페이스 또는 추상성 유형을 지시한다. 서비스 로케이터 패턴은 구성요소 룩업의 복잡성을 은폐하고, 인스턴스들의 캐싱 또는 풀링(pooling)을 취급하고, 일반적으로 구성요소 룩업 및 생성을 위한 공통 프로비저닝(provisioning)을 제공한다.
서비스 로케이터 패턴 내의 포커스는 구성요소들 사이의 커플링의 최저 가능한 양을 성취하는 것일 수 있다. 로케이터는 그가 필요로 하는 모든 외부 의존성들을 얻기 위해 애플리케이션이 사용하는 중앙 집중된 콘솔을 표현한다.
이와 같이, 본 발명의 구현들은 상이한 터미널 운영 시스템들을 갖는 멀티-터미널들을 지원하도록 설계될 수 있다. TOS 비의존성 방식으로 멀티-터미널들을 지원하기 위해, TOS 웹 인터페이스 애플리케이션은 각각의 분산형 터미널 데이터베이스들로의 액세스를 제공하는 저장소를 룩업하기 위한 프로세싱을 수반할 수 있다.
저장소 초기화
본 발명의 혁신들의 전체 양태들로 복귀하면, 도 14a 및 도 14b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 저장소 프로세싱 방법들을 수반하는 예시적인 흐름도들을 도시한다. 도 14b는 도 14a에 개략화된 프로세스를 도시하는 특정예이다. 도 14a 및 도 14b의 설명된 예시적인 방법들을 수행하는 시스템들의 요소들에 의해 사용될 수 있는 코드의 상세한 예들은 여기에 첨부된 부록 1에서 발견될 수도 있다.
도 14a를 먼저 참조하면, 1440에서, 프로세싱 요청은 서비스 모듈/프로세싱 레이어를 거쳐 수신될 수 있다. 예를 들어, 이 요청은 TOS 또는 비즈니스 대상체 내의 데이터를 액세스하고 그리고/또는 조작하기 위한 요청일 수 있다. 이에 응답하여, 저장소 인스턴스가 생성되고 그리고/또는 검색되어 요청의 프로세싱을 용이하게 할 수 있다. 1450에서, 요청 및/또는 요청고가 연계된 데이터는 저장소 모듈/프로세싱 레이어에 전송될 수 있다. 1452에서, 저장소 모듈/프로세싱 레이어와 연계된 저장소 팩토리 모듈/프로세싱 레이어는 요청을 프로세싱하기 위해 적절할 수 있는 저장소 인스턴스를 결정하기 위해 정보를 프로세싱할 수 있다. 저장소 인스턴스는 TOS가 액세스되기 위한 TOS 유형 및/또는 수신되었던 요청의 유형과 연계된 저장소 유형에 특정할 수 있다. 1454에서, 저장소 유형 캐시는 결정된 저장소 인스턴스를 위해 적절한 미리 발생된 저장소 구현 유형을 검색하기 위해 저장소 팩토리에 의해 액세스될 수 있다(예를 들어, 저장소 유형 및/또는 TOS 유형에 기초하여). 예를 들어, 시스템은 과거에 동일한 TOS 유형에 유사한 프로세싱을 수행하기 위한 유사한 요청을 수신할 수 있고, 이에 응답하여 저장소를 생성하고 캐시 내에 저장소를 저장할 수 있다. 디폴트/공통으로 조우되는 저장소들은 또한 저장될 수 있다. 몇몇 경우들에, 캐시 내에 어떠한 적절한 저장소도 있지 않을 수 있고, 이 경우에 시스템은 미래의 사용을 위해 하나를 생성하여 이를 캐시 내에 저장할 수 있다. 캐싱된 데이터와 TOS 유형 사이의 관계가 반영 동작, 헬퍼 속성, 규약을 사용하여 그리고/또는 다른 소정의 다른 방식으로 결정될 수 있다. 예를 들어, 반영 동작은 제어 컨테이너의 반전을 갖고 구성되고; 관심 이름공간 내에 포함되고; 그리고/또는 관심 TOS 유형 속성을 포함하고, 관심 TOS 유형 후에 명명된 서브-이름공간에 포함된 인터페이스들을 구현하도록 구성된 TOS 유형을 발견하는데 사용될 수 있다.
1456에서, 서비스 해결자 모듈/프로세싱 레이어는 예를 들어 캐싱된 속성 데이터와 연계된 서비스를 해결함으로써, 검색된/발생된 저장소를 인스턴스화할 수 있다. 1460에서, 저장소 인스턴스는 전달될 수 있다. 예를 들어, 인스턴스는 상호 작용을 위한 초기 요청을 행하는 사용자에 제공될 수 있다.
도 14b에 비한정적인 도시를 위해 도시된 일 특정예에서, 서비스 모듈/프로세싱 레이어는 저장소 모듈/프로세싱 레이어에 제 1 터미널(터미널 1)을 위한 부킹 저장소를 위한 요청을 송신할 수 있다. 도시된 바와 같이, 터미널 1은 제 1 TOS 유형(TOS 1)을 사용할 수 있다. 1452에서, 저장소 팩토리 모듈/프로세싱 레이어는 부킹 저장소 유형 및 TOS 1 유형에 기초하여 저장소 인스턴스를 얻을 수 있다. 1454에서, 캐시는 적절한 구현을 탐색할 수 있다. 본 예에서, 캐시(1430)의 서브세트는 TOS 1 유형[TOS(1432)] 및 TOS 2 유형[TOS(1434)]을 위한 부킹 저장소 인스턴스들을 포함한다. 요청되는 부킹 저장소가 TOS 1을 위한 것이기 때문에, TOS 1 엔트리(1432)가 선택될 수 있다. 1456에서, 서비스 해결자 모듈/프로세싱 레이어는 저장소를 인스턴스화하기 위해 캐시로부터 검색된 데이터를 사용할 수 있고, 적절한 부킹 저장소는 원하는 수신인에 송신될 수 있다.
도 14c는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 부킹 프로세스 및 TOS 비의존성 프로세싱을 수반하는 예시적인 시퀀스 다이어그램을 도시한다. 도 14c는 도 14d에 개략된 프로세스를 도시하는 특정예이다. 도 14c 및 도 14d의 설명된 예시적인 방법들을 수행하는 시스템들의 요소들에 의해 사용될 수 있는 코드의 상세한 예들이 여기에 첨부된 부록 2에서 발견될 수 있다.
TOS 1 데이터베이스(1408)가 TOS 1 특정 포맷으로 테이블들에 제공된 부킹 데이터(1410) 및 대응 컨테이너 데이터(1412)를 위해 판독된다. 데이터(1410, 1412)는 판독되어 TOS 1 저장소 인스턴스 구성요소/프로세싱(1406)으로 네트워크를 통해 전송된다. 유사한 프로세스가 각각의 TOS 2 저장소 인스턴스 구성요소/프로세싱(1416) 및 TOS 3 저장소 인스턴스 구성요소/프로세싱(1422)에 대해 발생한다. 저장된 TOS 2 데이터 소스(1414)는, 부킹/컨테이너 데이터(1418)가 TOS 1 포맷 및 TOS 3 포맷과는 상이한 TOS 2 특정 포맷으로 데이터베이스(1414)에 저장되는 파일 시스템을 포함한다. 일단 판독되어 TOS 2 저장소 인스턴스 구성요소/프로세싱(1416)으로 전송된다. TOS 3 데이터 소스는 부킹 상세 API 및 대응 컨테이너 상세 API 데이터가 판독되어 TOS 3 특정 포맷으로 TOS 3 저장소 인스턴스 구성요소/프로세싱에 전송되는 API이다. 도 14c에서, 각각의 저장소 인스턴스 구성요소/프로세싱은 부킹 비즈니스 대상체 및 3개의 TOS 유형들 중 하나에 대응한다. 부킹 비즈니스 대상체는 부킹 번호, 기선 회사, 선박, 하주, 선적항, 하역항, 부킹 유형, 부킹 라인들, 수출 컨테이너, 리퍼 정보(reefer info), 위험 카고 정보, EDI 메모, 사용자 메모 등과 같은 복수의 연계된 기능들 및 특성들을 갖는다. 이들 특성들은 TOS 데이터베이스들(1412, 1418, 1420) 내에 저장된 데이터에 일-대-일 대응성을 가질 수 있고, 또는 일-대-다 대응성을 가질 수 있다.
각각의 TOS 저장소 인스턴스 구성요소/프로세싱(1406, 1416, 1422)은 대응 데이터베이스로부터 검색된 TOS 특정 포맷의 데이터를 TOS 비의존성 포맷인 비즈니스 대상체 포맷으로 프로세싱/변환하기 위한 프로세싱을 수행한다. 도 14c에서, 변환/맵핑 프로세스는 TOS 특정 포맷으로부터 비즈니스 대상체 포맷으로 발생하지만, 또한 비즈니스 대상체 포맷으로부터 TOS 특정 포맷으로 마찬가지로 수행될 수도 있다. TOS 비의존성 비즈니스 대상체 포맷으로 변환된 검색된 데이터는 임의의 TOS 저장소 인스턴스 구성요소/프로세싱(1406, 1416, 1422)으로부터 비즈니스 대상체 구성요소/프로세싱(1404)으로 전송된다. 비즈니스 대상체 구성요소/프로세싱(1404)은 사용자 입력에 따라 비즈니스 대상체 데이터에 프로세싱을 수행한다. 결과는 추가의 프로세싱 및/또는 사용자 인터페이스로의 표시를 위해 서비스/제시 레이어(1402)에 출력된다.
도 14d는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 저장소 기반 TOS 비의존성 프로세싱을 수반하는 예시적인 흐름도를 도시한다. 프로세스는 요청과 연계된 데이터를 포함하는 적어도 하나의 데이터 소스를 액세스하는 단계 1470에서 시작한다. 다음에, 단계 1480에서 데이터가 판독되고 요청을 충족하도록 데이터 소스 내에서 검색된다. 다음에, 데이터 구성은 단계 1480으로부터 검색된 데이터를 사용하여 단계 1490에서 구성된다.
TOS 비의존성에서의 사용자 요청 프로세싱
도 15는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 TOS 비의존성 시스템 및 연계된 프로세싱을 통해 수행된 프로세싱의 예시적인 흐름을 도시한다. 본 발명의 시스템들 및 방법들은 특정 터미널 운영 시스템 및 터미널의 사용자에 한정되지 않는다. 대신에, TOS 비의존성 시스템은 복수의 사용자들이 임의의 복수의 터미널 운영 시스템들 하에서 동작하는 복수의 터미널들에 액세스하게 한다. 도 15를 참조하면, 사용자들(1502, 1504)은 상이한 터미널 운영 시스템들 하에서 동작하는 복수의 터미널 사이트들에 액세스하는 상이한 사용자들을 표현한다. 예를 들어, 사용자(1502)는 TOS X를 구현하는 터미널 A 사이트로의 액세스를 원하고, 반면에 사용자(1504)는 TOS Y를 구현하는 터미널 B로의 액세스를 원하고, 여기서 TOS X 및 TOS Y는 서로 비호환적이다. 특히, 각각의 터미널 운영 시스템은 전용 언어 및/또는 데이터 포맷에 기초하여 동작한다. 일 TOS 데이터베이스에 의해 저장된 동일한 정보는 상이한 TOS 데이터베이스에 인식 불가능하고 사용 불가능하도록 기술될 수 있다.
통상적으로, 상이한 터미널 운영 시스템들을 사용하여 터미널 사이트들의 데이터에 액세스하기를 원하는 사용자는 그 터미널 사이트의 터미널 운영 시스템에 특정한 인터페이스에 액세스할 필요가 있을 것이다. 그러나, 본 발명의 혁신들의 양태들에 따르면, 데이터의 요청들은 각각의 사용자(1502, 1504)가 임의의 원하는 터미널 사이트에 액세스하는 것을 가능하게 하도록 터미널 운영 시스템에 무관하게 프로세싱된다. 단계 1508에서, 데이터를 위한 요청은 TOS 비의존성 시스템에 의해 임의의 또는 양 터미널 A 및 터미널 B를 위해 수신된다. 예를 들어, 사용자 인터페이스는 사용자가 선택하기 위한 터미널들의 리스트를 제공한다. 단계 1510에서, TOS 유형은 요청에 기초하여 결정된다. 시스템은 선택된 터미널과 터미널과 연계된 TOS 사이의 대응성을 결정할 수 있다. 결정된 TOS 유형에 기초하여, 저장소 인스턴스는 데이터를 요청하는 터미널에 대해 구성된다. 저장소 인스턴스의 구성은 도 17a 내지 도 17b에서 이하에 더 상세히 설명된다. 다음에, 단계들 1512 및 1514 중 하나는 데이터 요청을 행하는 터미널에 기초하여 실행된다. 단계 1512는 터미널 운영 시스템 X를 사용하여 터미널 A를 위한 데이터 소스에 액세스하도록 생성된 저장소 인스턴스를 사용하여 데이터를 요청한다. 마찬가지로, 단계 1514는 터미널 운영 시스템 Y를 사용하여 터미널 B를 위한 데이터 소스에 액세스하도록 생성된 저장소 인스턴스를 사용하여 데이터를 요청한다. 단계 1516에서, 데이터는 저장소 인스턴스에 수신되고, 이에 의해 데이터는 이어서 비즈니스 대상체 데이터를 구성하도록 프로세싱된다. TOS 데이터베이스로부터 검색된 데이터는 공통 비즈니스 대상체 데이터 포맷을 제공하기 위해 공통 데이터 포맷으로 변환된다. 비즈니스 대상체 데이터는 이어서 데이터 요청을 행하는 사용자에 전송된다. 단계 1518에서, 시스템은 웹 브라우저 또는 다른 사용자 인터페이스와 같은 클라이언트 애플리케이션을 거쳐 사용자에 비즈니스 대상체 데이터를 표시한다. 이 방식으로, 사용자는 TOS 비의존성 시스템으로부터 임의의 터미널 운영 시스템을 운영하는 임의의 터미널로부터 데이터를 검색하는 것이 가능하다.
도 16은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 TOS 비의존성 프로세싱의 예시적인 작업 흐름도를 도시한다. 단계 1602에서, 요청은 복수의 터미널 사이트들 중에 특정 터미널 사이트를 위한 웹 브라우저와 같은 사용자 인터페이스로부터 검색된다. 단계 1604에서, TOS 유형은 터미널 사이트 정보로부터 결정된다. 결정된 TOS 유형에 기초하여, 저장소 인스턴스는 TOS 유형 및 터미널 사이트에 특정한 TOS 비의존성 시스템 내에 구성된다. 단계 1606에서, TOS 비의존성 시스템은 저장소 인스턴스 내에 저장을 위해 터미널 사이트로부터 데이터를 요청한다. 다음에, 요청된 데이터는 단계 1608에서 수신되고, 비즈니스 대상체들의 세트를 생성하기 위해 TOS 비의존성 시스템에 의해 프로세싱된다. 비즈니스 대상체들은 이어서 사용자 인터페이스에 전송되고, 단계 1610에서 표시된다.
저장소 로케이터
도 17a는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 TOS 비의존성 저장소 로케이터 프로세싱의 예시적인 흐름도를 도시한다. 단계 1702에서, 터미널 사이트 정보는 터미널 사이트들의 캐싱된 리스트에 기초하는 요청된 터미널 사이트에 대해 검색된다. 단계 1704에서, 검색된 터미널 사이트에 기초하여, 터미널 사이트에 대응하는 터미널 운영 시스템 유형이 결정되고, 접속 정보가 터미널 사이트 정보로부터 검색된다. 다음에, 단계 1706은 저장소 인스턴스들의 캐싱된 리스트로부터 지정된 터미널 사이트 및 대응 TOS 유형을 위한 저장소 인스턴스를 얻도록 시도한다. 판정 단계 1708에서, TOS 비의존성 시스템이 요청된 터미널 및 TOS 유형을 위한 저장소 인스턴스를 미리 구성한 것으로 판정되면, 캐싱된 저장소 인스턴스는 단계 1716에서 리턴된다. 그러나, 어떠한 저장소 인스턴스도 지정된 터미널 및 TOS 유형에 대해 존재하지 않는 것으로 판정되면, 새로운 저장소 인스턴스가 지정된 터미널 및 TOS 유형을 위해 구성된다. 일단 생성되면, 저장소 인스턴스는 단계 1714에서 캐싱되고, 단계 1716에서 사용자에 리턴된다.
도 17b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 부킹 프로세스 및 TOS 비의존성 프로세싱을 수반하는 예시적인 시퀀스 다이어그램을 도시한다. 사용자(1720)는 이 경우에 부킹 데이터 요청(1730)인 TOS 데이터를 위한 요청(1730)을 입력하도록 클라이언트/브라우저를 동작한다. 저장소 로케이터(1722)는 이 요청을 수신하고, 먼저 부킹 요청에 대응하는 복수의 저장소 인스턴스들(1726) 중으로부터 저장된 저장소(1724)를 로케이팅하려고 시도한다. 일치가 발견되면, 대응 부킹 저장소는 단계 1734에서 저장소 로케이터(1722)로 리턴되고, 로케이팅된 저장소(1726A)로부터 요청된 부킹 상세들(1748)은 브라우저(1720)로 리턴되고 사용자에 출력된다.
그러나, 부킹 요청(1730)에 대응하는 어떠한 저장소 인스턴스도 로케이팅되지 않으면, 저장소 생성 기능(1736)이 호출되어 부킹 저장소(1738)를 생성한다. 일단 생성되면, 저장소 로케이터(1722)는 저장소(1738)에 부킹 데이터 획득(1740) 기능을 호출하여 데이터 소스(1728)로부터 요청된 부킹 데이터를 수신한다. 저장소(1738)는 이어서 요청된 부킹 정보를 얻기 위해 데이터 소스(1728)에 부킹 데이터 획득(1742) 기능을 호출한다. 이에 응답하여, 데이터 소스(1728)는 데이터 소스의 포맷의 부킹 엔티티들(1744)을 저장소(1738)에 리턴한다. 저장소(1738)는 이어서 부킹 엔티티들(1744) 상에 프로세싱을 수행하여 데이터 소스 비의존성 포맷의 부킹 비즈니스 대상체들(1746)로 이들을 맵핑/변환/변형한다.
부킹 대상체들(1746)은 이어서 부킹 대상체들(1746)을 부킹 상세들(1748)로 프로세싱할 수 있는 저장소 로케이터(1722)로 저장소(1738)로부터 전송된다. 저장소 로케이터(1722)는 이어서 부킹 요청(1730)에 응답하여 부킹 상세들(1748)을 브라우저(1720)에 전송한다. 이 시스템에서, 브라우저는 부킹 엔티티들(1744)이 데이터 소스 비의존성인 부킹 대상체들(1746)로 프로세싱되기 때문에, 데이터 소스(1728)로부터 정보를 요청하고 수신하기 위해 데이터 소스(1728)의 데이터 포맷 또는 운영 시스템과 호환성이 있을 필요가 없다.
도 20은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 TOS 비의존성 시스템을 위한 예시적인 저장소 로케이터 계층/구조를 도시하는 블록 다이어그램이다. 웹 인터페이스(2002)는 요청 사용자에 검색된 데이터베이스 데이터를 표시한다. 서비스들 레이어(2010)는 저장소(2020)를 거쳐 검색된 데이터를 프로세싱하고 저장한다. 캐싱된 저장소들은 각각의 데이터 서비스들(2032, 2034) 및 웹 서비스(2036)의 사용을 통해 데이터를 검색한다. 예를 들어, 데이터 서비스(2032)는 저장소(2024) 내로의 저장을 위해 TOS 1 DB와 인터페이스한다. 웹 서비스(2036)는 저장소(2028) 내에 캐싱을 위한 웹 소스(2046)로부터 요청된 데이터를 유사하게 검색할 수 있다.
TOS 비의존성 시스템의 레이어 아키텍처
도 18은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 TOS 비의존성 시스템을 위한 일 예시적인 레이어 아키텍처를 도시하는 블록 다이어그램이다. 사용자(1800)는 제시 레이어를 뷰잉하기 위해 네트워크(1801)에 접속하는 컴퓨팅 디바이스를 동작한다. 제시 레이어(1802)는 복수의 TOS 유형들로부터 터미널 데이터를 저장하고 프로세싱하는 서비스 레이어(1804)로부터 데이터를 수신한다. 서비스 레이어(1804)는 복수의 저장소 인스턴스들(1822, 1824, 1826 등)을 포함하는 저장소(1820)를 포함한다. 저장소 인스턴스들은 상이한 터미널 운영 시스템들(1808) 하에서 동작하는 복수의 데이터 소스들(1810)에 접속된다. 데이터 액세스 레이어(1830)는 대응 데이터베이스 서비스들(1830, 1832)을 거쳐 복수의 데이터베이스들(1810) 중 임의의 하나로부터 요청된 터미널 데이터를 얻는다. 데이터베이스 서비스는 TOS X에 대응하는 각각의 데이터베이스가 데이터베이스 서비스(1830)에 의해 액세스 가능하도록 각각의 TOS 유형을 위해 제공된다. 유사하게, TOS Y에 대응하는 각각의 데이터베이스는 데이터베이스 서비스(1832)에 의해 액세스 가능하다.
도 19는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 TOS 비의존성 시스템을 위한 예시적인 레이어 아키텍처 및 연계된 프로세싱 모듈들을 도시하는 블록 다이어그램이다. 도 19에서, 각각의 사용자(1902, 1904, 1906)는 상이한 터미널 운영 시스템들을 사용하여 상이한 터미널로부터 데이터에 액세스하도록 제시 레이어(1802)에 요청을 입력한다. 전술된 요소들의 설명은 간략화를 위해 생략된다.
단계 1910에서 PA.Tos.smartWeb.WebUI는 서버 구성요소가 MS ASP.NET MVC 프레임워크에 기초하여 구축되어 있는 것을 표현한다. 이 구성요소는 설계된 모델-뷰-제어기(MVC) 디자인 패턴이고 사용자 요청을 수신하고 프로세싱하고 사용자에 대한 응답을 구성하여 송신하는 책임이 있다. 다음에, PA.Tos.smartWeb.Service (1912)는 PA.Tos.smartWeb.WebUI 구성요소 내의 제어기로부터 사용자 요청들을 수신하는 서비스 구성요소이다. 이 서비스 구성요소는 사용자 요청들을 프로세싱하기 위해 저장소들 내의 방법들을 호출한다. 이는 저장소로부터 데이터를 검색하고, 데이터를 저장소에 송신하여 데이터 소스를 업데이트하고, 비즈니스 로직을 프로세싱하고, 응답을 구성하여 PA.Tos.smartWeb.WebUI 구성요소 내의 제어기에 리턴한다. PA.Tos.smartWeb.Repositories(1914)는 사용자 요청에 의존하여 터미널 및 TOS 유형을 위한 저장소 인스턴스를 인스턴스화하는 저장소 로케이터를 구현하는 서버 구성요소이다.
PA.Tos.smartWeb.Repository.Database2(1924)는 TOS의 특정 데이터베이스를 위한 저장소 인스턴스이다. 저장소 인스턴스는 데이터베이스의 유형, 어떻게 데이터베이스와 통신하는지, 어디가 데이터베이스인지 등을 인지한다. 저장소 인스턴스는 TOS 유형에 특정한 데이터로부터 비즈니스 엔티티들을 구성하거나 또는 비즈니스 엔티티들 내의 임의의 정보가 TOS 특정 데이터베이스에 사용될 데이터로 변환한다.
PA.Tos.smartWeb.Repository.WebService(1926)는 웹 서비스를 사용하여 데이터를 검색하거나 TOS 데이터 소스에 데이터를 송신하는데 사용된 저장소 인스턴스이다. 저장소 인스턴스는 웹 서비스의 유형, 서비스 계약, 데이터 계약, 동작 계약, 어떻게 통신하는지, 어디서 서비스에 액세스하는지 등을 인지한다. 저장소 인스턴스는 TOS 유형에 특정한 데이터로부터 비즈니스 엔티티들을 구성하거나 비즈니스 엔티티들 내의 임의의 정보를 TOS 특정 데이터 소스에 사용될 데이터로 변환한다.
TOS 비의존성 프로세싱
도 21은 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 부킹 프로세스 및 TOS 비의존성 프로세싱을 수반하는 예시적인 시퀀스 다이어그램을 도시한다. 도 21을 참조하면, 예시적인 프로세싱은 사용자가 웹-기반 사용자 인터페이스를 거쳐 터미널 A에 로그인하는 단계 2106에서 시작할 수 있다. 예를 들어, 사용자는 부킹 번호 BK123456에 대한 정보를 요청할 수 있다. 다음에, TOS 비의존성 서비스(2104)는 부킹 정보를 위한 사용자 요청을 수신하고 프로세싱한다. 서비스(2104)는 수출 서비스(2114)에서 FindBooking 방법(2112)을 호출한다. 수출 서비스(2114)는 수출 비즈니스 프로세스들에 관한 방법을 구현한다. FindBooking 방법(2112)은 부킹 저장소(2152)에 의해 프로세싱된다. 수출 서비스(2114)는 먼저 GetBookingRepository 방법을 사용하여 저장소 팩토리(2130)로부터 부킹 저장소 인스턴스를 요청한다. 저장소 팩토리(2130)는 터미널 A를 위한 저장소 인스턴스를 리턴하는 저장소 로케이터이다. 저장소 팩토리(2130)는 GetInstance 방법을 사용하여 터미널 A를 위한 부킹 저장소를 요청한다. 부킹 저장소(2152)는 터미널 A 데이터베이스로부터 터미널 A를 위한 부킹 정보를 검색하고 저장한다.
다음에, FindBooking 방법(2134)은 터미널 A의 부킹 번호 BK123456에 대응하는 부킹 정보를 요청하기 위해 부킹 저장소(2152)의 FindBooking 방법(2156)을 호출하도록 수출 서비스(2114)에 규정된다. FindBooking 방법(2156)은 터미널 A 데이터베이스에 액세스하고, 부킹 엔티티들(2158)로서 터미널 A 데이터베이스로부터 요청된 부킹 정보를 얻는다. 부킹 엔티티들(2158)은 이어서 부킹 대상체들(2136)로서 부킹 저장소(2152)에 저장된다. 예를 들어, 부킹 엔티티들(2158)은 부킹 비즈니스 대상체(2136)로 변환/변형되는 원시 데이터로서 터미널 A로부터 검색된다. 부킹 대상체들(2136)은 이어서 수출 서비스(2114)에 리턴된다.
또한, GetContainer(2138)는 요청된 부킹에 관련된 컨테이너 정보를 검색하기 위한 내부 방법 호출이다. GetBookingRepository 방법과 유사하게, 수출 서비스(2114)는 사용자에 의해 요청된 부킹 정보에 대응하는 컨테이너 정보를 얻기 위해 저장소 팩토리(2130)에 GetContainer 방법(2142)을 실행한다. GetInstance 방법(2140)은 터미널 A를 위한 컨테이너 저장소(2160) 인스턴스를 요청한다. 수출 서비스(2114)에 의해 구현된 GetContainers 방법(2142)은 컨테이너 저장소(2160)로부터 부킹 정보에 관한 컨테이너 데이터를 요청한다. 컨테이너 저장소(2160)는 GetContainers 방법(2146)을 사용하여 터미널 A 데이터베이스로부터 부킹 번호에 대응하는 수출 컨테이너들에 관한 데이터를 검색한다. 이에 응답하여, 터미널 A 데이터베이스는 컨테이너 엔티티들(2166)로서 요청된 데이터를 전송한다. 부킹 엔티티들(2158) 및 컨테이너 엔티티들(2166)은 다른 터미널 운영 시스템들의 포맷과 비호환성인 터미널 A 운영 시스템의 포맷으로 제공된다. 따라서, 컨테이너 저장소(2160)는 터미널 A의 원시 컨테이너 데이터(2166)를 컨테이너 저장소(2160)에 추가될 컨테이너 대상체(2144)로 변환/변형한다. 일단 부킹 대상체(2136) 및 대응 컨테이너 대상체(2144)가 수출 서비스(2114)로 리턴되면, 부킹 및 컨테이너 대상체들 집합(2116)이 TOS 비의존성 서비스(2104)에 리턴된다. TOS 비의존성 서비스(2104)는 비즈니스 대상체 데이터(2116)를 프로세싱하고, 부킹 및 컨테이너 대상체들(2118)을 웹-기반 사용자 인터페이스를 거쳐 사용자에 표시한다.
부가의 서비스들/서비스 레이어 양태들
전술된 기본 아키텍처 특징들에 추가하여, 서비스 레이어는 본 발명의 다양한 구현들이 통신할 수 있는 것과 관련하여, 예를 들어 다른 웹 애플리케이션들 및 터미널 운영 시스템들과 같은 TOS 인터페이스들/터미널 운영 시스템들과 연계될 수 있는 다양한 예시적인 구성요소들을 위한/사이의 통합을 위한 기준선으로서 기능할 수도 있다. 여기서, 예를 들어, 본 개시내용 및 본 명세서의 부록들은 어떻게 다양한 기능성 및 정보가 서비스 레이어를 거쳐 또는 전체를 통해 웹 애플리케이션들과 TOS(예를 들어, M21) 사이에 통과되어 프로세싱되는지를 나타낸다. 예를 들어, 이러한 특징들을 예시하는 것을 돕는 M21과 연계된 컴퓨터 프로그램 코드가 첨부된 컴팩트 디스크의 "TOS 데이터 액세스 라이브러리"에 포함되어 있다.
장비 상호 교환 보고(EIR) 특징들과 관련하여, EIR을 생성하는 것은 데이터 및 비즈니스 로직-집약적 프로세스이다. 다수의 데이터는 M21 데이터베이스 및 아카이빙된 데이터베이스(들)와 같은 하나 이상의 TOS 데이터베이스들로부터 수집된다. 이들 데이터는 인쇄된 포맷으로 제시되도록 다양한 프로세스 및 인가된 비즈니스 로직에서 조작된다. 또한, 이종 시스템들 또는 웹 애플리케이션들 내의 게이트-활동 모듈들은 이러한 프로세스들을 구현하고 이들을 개별적으로 유지할 수 있다. 몇몇 구현들에서, ReportService 기능성은 비즈니스 로직 및 데이터 액세스 프로세스들의 제시를 위해 사용되지만 상세들은 은폐하도록 EIR을 위한 모든 데이터를 구비하는데 이용될 수 있다. 이는 애플리케이션의 유지 가능성 및 확장성을 향상시킨다.
인터페이스 양태들
전술된 다수의 시스템들 및 프로세스들, 뿐만 아니라 다른 특징들 및 기능들은 다양한 사용자 인터페이스들과 함께 이용되고, 지원되고 그리고/또는 상호 작용한다. 일 양태에서, 본 명세서에 제공된 시스템들 및 방법들은 예를 들어 인터넷 접속 및/또는 다른 네트워크 접속을 거쳐 액세스 가능한 다수의 인터페이스들을 포함한다. 몇몇 실시예들에서, 인터페이스는 요약 보고 및 상태 업데이트의 기능성들을 조합하고, 이는 사용자가 선적 프로세스에서 다양한 요소들의 상태들의 액세스, 리뷰 및 업데이트를 허용한다.
리뷰되고 업데이트될 수 있는 임의의 정보는 무엇보다도, 부킹들(예를 들어, 도 22a, 도 23a 및 도 23b 참조); 문제 해결(예를 들어, 도 24a 및 도 25 참조); 장비 상호 교환 보고들(EIR들)(예를 들어, 도 26a 참조); 카고 및 장비 상태(예를 들어, 도 26a 참조); 장비 사전 승인(예를 들어, 도 26a 참조); 장비 제어(예를 들어, 도 27, 도 28a, 도 30a 및 도 30b 참조); 선박 관리(예를 들어, 도 29 참조); 다기능 홈 포털(예를 들어, 도 31 참조); 위험 상품(예를 들어, 도 32a, 도 32b 참조); 선하증권들(예를 들어, 도 34a, 도 34b, 도 34c 및 도 34d 참조); 컨테이너들(예를 들어, 도 36a, 도 36b 및 도 36c 참조); 프리데이 초과정박 할당들(예를 들어, 도 34a 내지 도 36c 참조); 해제(예를 들어, 도 34a 내지 도 36c 참조); 트럭커 할당들 및 정보(예를 들어, 도 38a, 도 38b 및 도 38c 참조); 화물차 반입 컨테이너들(예를 들어, 도 40 참조); 레일 수입들(예를 들어, 도 41 참조)에 관한 정보를 포함하지만, 이들에 한정되는 것은 아니다. 예를 들어, 몇몇 실시예들에서, 부킹에 관한 정보가 리뷰된다. 몇몇 실시예들에서, 부킹에 관한 정보는 업데이트된다. 몇몇 실시예들에서, 부킹 내의 하나 이상의 컨테이너들에 관한 정보가 리뷰된다. 몇몇 실시예들에서, 부킹 내의 하나 이상의 컨테이너들에 관한 정보가 업데이트된다. 몇몇 실시예들에서, 부킹 또는 부킹 내의 하나 이상의 컨테이너들에 관한 정보가 모두 리뷰되고 업데이트된다.
다른 구현은 또한 시스템이 VoyagerTrack과 같은 수송/트럭킹/트랙킹 애플리케이션들과 같은 다른 시스템들과 인터페이스하게 한다. 다수의 혁신적인 특징들 중 단지 하나의 직선형 예시로서, 예를 들어, 사용자들은 이후의 픽업을 위해 휠들 상의 컨테이너의 사전 장착을 요청할 수 있다. 이는 예를 들어 다음날일 수 있다. 이러한 구현들은 트럭들이 컨테이너들을 픽업하도록 도달할 때 상당한 시간을 절약한다. 컨테이너들이 전날밤과 같이, 휠들로 미리 장착되면, 트럭들은 이들을 픽업하기 전에 컨테이너들이 휠들에 장착되게 하기 위해 도착시에 대기해야 할 필요가 없다.
또한, 예를 들어 또한 VoyageTrack과 같은 트랙킹 애플리케이션(들)과의 인터페이스/상호통신을 거쳐, 사용자들은 초과정박 요금들을 온라인으로 지불할 수 있다. 이는 이들이 발생하기 전에 문제점들을 제거함으로써 더 고속의 트랜잭션들을 허용한다. 또는, 다른 변형예에서, 시스템은 컨테이너가 픽업이 이용 가능할 때를 통지하기 위한 요청을 이러한 트랙킹 애플리케이션(들)(VoyagerTrack)과 재차 인터페이스할 수 있어, 트럭커를 디스패치하기 위한 이용 가능성까지 대기한다.
본 발명의 시스템들 및 방법들은 또한 VRU/IVR(음성 응답 유닛/대화식 음성 응답) 및 트랙킹 시스템(VoyagerTrack)과 같은 다른 애플리케이션들과 다양한 인터페이싱을 허용한다. 예를 들어, VRU 내의 전화 기반 인터페이스는 전체 시스템의 작업들의 서브세트를 수행할 수 있다. 이는 다른 액세스가 이용 가능하지 않으면, 사용자들이 전화를 통해 시스템에 액세스하는 것을 허용한다. 본질적으로, 임의의 네트워크-기반 디바이스들은 시스템에 액세스하는데 사용될 수 있다.
메뉴 또는 드롭다운 메뉴의 임의의 참조는 드롭다운 메뉴들에 한정되지 않고, 임의의 수의 데이터 엔트리 필드들을 포함할 수 있다는 것이 주목되어야 한다. 프리 텍스트 박스들이 사용될 수 있고, 자동 파퓰레이팅된 텍스트 엔트리 박스들, 라디오 버튼 선택, 또는 임의의 수의 메뉴 선택 옵션들이 사용될 수 있다. 본 명세서의 다양한 특정 예시들은 단지 예시를 위한 것이다.
도 22a는 수출 부킹들을 관리하는 능력을 포함하는 여기에 개시된 혁신들의 구현의 도시를 포함한다. 몇몇 실시예들에서, 부킹은 카고 이동을 위한 예약이다. 몇몇 구현들에서, 사용자는 부킹 번호 필드(2202)를 사용하여 부킹을 호출하거나 탐색할 수 있다.
부킹이 생성될 때, 미래의 참조를 위해 사용될 수 있는 부킹 번호(2242)(예로서)가 할당된다. 부킹들은 통상적으로 EDI를 통해 SSCO들(2216)에 의해 생성되고, 2240 선박/여정, 선적 항구, 목적지 항구, 경유 항구, 하주, 카고 기술, 부킹 유형(2210)(ST, RE, DG), 온도/벤트(리퍼), 위험 클래스(DG), 부킹 메모 및 부킹된 컨테이너들의 유형 및 번호와 같은 정보를 포함한다. 일 예시적 구현은 브라우저 인터페이스를 통해 터미널의 부킹 정보에 대한 액세스를 SSCO들에 제공할 수 있는 완전한 TOS 웹 포탈 애플리케이션과의 인터페이스를 포함한다. 부가적으로, SSCO들이 TOS 웹 포털 구현들을 사용하여 수출 부킹을 생성하거나 현존하는 부킹을 변경하는 것이 가능하다.
몇몇 구현들에서, 사용자는 드롭다운 메뉴로부터 부킹 유형을 선택할 수 있다. 일 특정 구현에 따르면, 드롭다운 메뉴의 선택 가능한 부킹 유형들의 세트는 AK(취급주의), BB(일반화물), BN(번들), DG(위험), DO(도어오프), DR(위험한 리퍼), HD(은폐), MT(비어 있음), RE(리퍼) 및 ST(표준)을 포함할 수 있다. 그러나, 다른 구현들은 이들 중 단지 일부를 포함할 수 있고 그리고/또는 다른 선택 사항들을 포함할 수 있다.
몇몇 실시예들에서, 사용자는 드롭다운 메뉴로부터 리퍼 유형을 선택할 수 있다. 예시적인 리퍼 유형들은 CA-제어 분위기, IN-절연, MX-맥스텐드(maxtend), MA-변경 분위기, RE-리퍼 등을 포함하지만 이들에 한정되는 것은 아니다.
몇몇 실시예들에서, 사용자는 드롭다운 메뉴로부터 SSCO 유형을 선택할 수 있다. 예시적인 SSCO들은 SSCOA, SSCOB, SSCOC, SSCOD, SSCOE, SSCOF, SSCOG 등을 포함하지만 이들에 한정되는 것은 아니다.
몇몇 실시예들에서, 사용자는 드롭다운 메뉴로부터의 카고 기술들에 기초하여 취급 명령들을 선택할 수 있다. 예시적인 카고 기술들은 액세스 가능한 위험 물질, 식품으로부터 분리, 생활 공간들로부터 분리, 열로부터 분리, 블록 적재, 데크탑 제외, 요구된 훈증, 부유 크레인 취급, GEN, 저온 유지, LAT, 과적 금지, 갑판 위 보호, 갑판 위 적재, 데스크탑 위, 갑판 위 적재, 데크탑 위, 온데크 적재, 오버사이드 전달, 부두 크레인에 의한 오버사이드 전달, 이동 크레인에 의한 해안측 전달, 온도 제어, 상단 적재, 언더 데크, 열로부터 분리하여 언더 데크, 언더 데크탑, 수위 아래, 환기 명령 등을 포함하지만 이에 한정되지 않는다.
몇몇 실시예에서, 사용자는 드롭다운 메뉴로부터 컨테이너를 위한 접두사를 선택할 수 있다. 예시적 접두사는 ABCD, EFG, XYZ, XXXU, XXYU, XXZU 등을 포함하지만 이에 한정되지는 않는다.
이 인터페이스로부터 선택될 수 있는 다른 특징은 부킹 서비스(2212) 및 취급 명령(2214)을 포함한다. 또한, 사용자는 부킹된 컨테이너 유형들 및 크기들에 관한 정보를 검사 및 편집할 수 있다. 따라서, 부킹 유형(2218)이 선택될 수 있고, 길이(2220) 및 높이(2222)도 마찬가지로 선택될 수 있다. 이 시스템은 심지어 사용자가 플렉스 높이(2224)를 선택할 수 있게 하며, 이는 높이 범위 내에 드는 다수의 컨테이너를 특정 부킹을 위해 사용할 수 있게 한다. 몇몇 실시예들에서, 사용자는 드롭다운 메뉴로부터 부킹 서비스를 선택할 수 있다. 예시적 부킹 서비스는 캐리어 유닛, 무명(cotton), 데이킨 리퍼(daikin reefer), 더러운 리퍼, 도어오프, 플랫래크(flatrack), 식품 등급, 의류, 고 용량, 리스 전용, 메시 스크린 리퍼, 금속 스크랩, 신규 리퍼 등을 포함하지만 그에 한정되지 않는다.
또한, EDI 메모 및 사용자 메모가 마찬가지로 입력될 수 있다(2230, 2232). 그리고, TMF 면제, TMF 상태 등 같은 TMF 설정들이 선택될 수 있다. 마지막으로, 게이트 및 야드 활동이 이 인터페이스로부터 편집될 수 있다(2226). 이 부킹을 위한 조기 및 비움 해제(Early and Empty Release), 조기 완전 수취(Early Full Receipt), 휠들 상에 방치(Leave on Wheels) 및/또는 지체된 완전 수취(Late Full Receipt) 같은 특징. 몇몇 실시예들에서, 사용자는 부킹을 저장, 복사, 재설정 또는 삭제하는 선택권을 갖는다. 관리 부킹 인터페이스의 예시적 도면이 도 22에 도시되어 있다. 몇몇 실시예에서, 사용자는 드롭다운 메뉴로부터 TMF 면제 상태를 선택할 수 있다. 예시적 TMF 면제 상태는 면제조건 없음, 레일 면제, 선박간 면제 등을 포함하지만 이에 한정되지 않는다.
도 22b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 부킹 관리 기능의 흐름도이다. 다수의 이러한 흐름도가 본 명세서의 특정 사용자 인터페이스를 위해 도시되어 있지만, 이러한 기능은 본 명세서에 예시되거나 설명된 사용자 인터페이스 중 임의의 것과 연계하여 구현될 수 있다. 일 예시적 실시예에 따라서, 도 22a 및 도 22b의 관리 부킹 기능은 3 단계를 포함할 수 있다. 먼저, 2260에서, 부킹 관리 기능을 수행하는 예시적 방법은 사용자에게 터미널 운영 시스템 관리 기능을 포함하는 인터페이스를 표시하기 위한 정보를 제공하는 것을 포함하며, 이 정보는 부킹, 취급 및/또는 컨테이너 정보를 포함하는 제 1 정보를 포함한다. 여기서, 그 관련 사용자 인터페이스들에 관한 흐름도 모두에 대하여 그러한 바와 같이, 이러한 제 1 정보는 부킹 유형, 부킹 서비스, 취급 명령들, 허용된 접두사들, SSCO, 플렉스 높이, TMF 설정들 등 같은 도 22a에 도시되고 본 명세서의 다른 위치에서 설명된 정보의 다양한 분야들 중 하나 이상일 수 있다. 예시의 목적으로, 여기서 "부킹, 취급 및/또는 컨테이너 정보"인 제 1 정보의 이러한 예는 본 명세서에서 "양태 A"라 지칭될 수 있다. 두번째로, 이러한 관리 부킹 기능은 2270에서 양태 A를 관리하기 위해 인터페이스를 통해 수신된 입력에 관련된 정보를 프로세싱하는 것을 포함할 수 있다. 마지막으로, 이러한 부킹 관리 기능은 출력/결과를 생성하기 위해, 2280에서, 예를 들어, 인터페이스를 업데이트하기 위해 프로세싱을 수행함으로써 시스템 내에서 및/또는 제 3 파티에게 명령들을 전달하고, 양태 A의 관리의 결과의 출력이 생성되도록 시스템 내에서 양태 A를 실행할 수 있다.
일부 선택적 실시예들에서, 표시를 위한 정보를 제공하는 단계는 2262에서 TOS-비의존성, 저장소 인스턴스 및/또는 사업 대상체 포맷에서의 취급으로 및/또는 그를 통해 프로세싱되는 데이터를 포함할 수 있다. 다른 선택적 실시예들에서, 표시를 위해 제공되는 이러한 정보는 2264에서, 사용자 구성을 통해 제 1 정보 및/또는 제 1 정보 옵션들을 사용자가 형성 및/또는 변경할 수 있게 하도록 구성된 시스템을 통해 제공될 수 있다. 일부 선택적 실시예들에서, 이러한 부킹 관리 기능은 2272에서 제 1 정보와 관련된 TOS-지정 포맷, 저장소 인스턴스 및/또는 사업 대상체를 형성하는 것을 포함할 수 있다. 다른 선택적 실시예들에서, 이러한 부킹 관리 기능은 2274에서 부킹, 취급 및/또는 면제 작용을 결정하기 위해 입력된 제 1 정보 및/또는 제 1 정보 옵션들을 프로세싱하는 것을 포함할 수 있다. 이러한 프로세싱은 일부 선택적 실시예들에서, 2282에서 TOS-특정 포맷 데이터로 TOS-비의존성 포맷 데이터를 변환하는 것, 저장소 인스턴스를 생성하는 것, 사업 대상체를 생성하는 것 및/또는 이러한 포맷들/구성들과 연계된 다른 프로세싱을 수행하는 것을 포함할 수 있다. 또한, 이러한 부킹 관리 기능은 2284에서 구현을 위해 또는 사용자 인터페이스로 및/또는 구현, 작용 또는 표시를 위해 제 3 파티에게 출력하는 것 같이, 부킹 전송, 취급 및/또는 시스템 내의 면제 작용을 전송하는 것을 포함할 수 있다.
다른 예시적 실시예는 부킹 요청에 대한 변경을 실행하는 기능을 포함한다. 부킹 요청 변경 인터페이스의 예시적 도면이 도 23a에 도시되어 있다. 예로서, 특정 부킹을 지정한 이후, 도 23a에 도시된 것 같은 인터페이스에서 부킹 정보를 사용자가 변경할 수 있게 한다. 사용자들은 부킹 변경 버튼(2350) 및 변경 버튼(2358)을 통해 특징들을 액세스할 수 있다. 이는 컨테이너들을 하나의 부킹으로부터 다른 부킹으로 이동하는 것, 필요에 따라 하역 항구 또는 선박 콜을 변경하는 것을 포함할 수 있다. 예로서, 이 인터페이스에서, 컨테이너(2356)는 마찬가지로 상세한 정보가 리스팅될 수 있다. 그리고, W/D 상태(2354) 및 야드 상태(2352)가 포함될 수 있다.
도 23b에 도시된 예와 같은 부킹 변경 보고서가 특정 부킹들에 대한 변경을 검토하기 위해 사용될 수 있다. 도 23a에서, 사용자는 누가 2378로부터 그리고 2378에 변경을 제출하는지를 입력할 수 있다. 또한, CBR#(2360), CBR 유형(2362), 2364로부터, 2366으로, 제출됨(2368), 리뷰됨(2370), 상태(2372), 발주자(2374) 및 주석들(2376)이 모두 관찰될 수 있다.
본 명세서의 시스템들 및 방법들은 또한 VoyagerTrack과 같은 다른 애플리케이션들과 인터페이스하도록 구성될 수 있다. 이를 수행함으로써, 시스템의 사용자들은 문제 사항들의 해결책을 관리 및 촉진할 수 있다. 이는 TOS에 의해 생성된 문제 티켓들을 관리하는 것을 포함한다. SSCO 사용자는 다양한 필터들을 사용하여 문제 티켓들을 관리 및 관찰하는 기능을 갖는다. 문제 티켓들은 이메일, 전화, 기타 경보를 포함하지만 그에 한정되지 않는 임의의 다수의 방식들로 전달될 수 있다.
예로서, 도 24a의 문제 해결 시스템의 예시적인 다이어그램에 도시된 바와 같이, 사용자는 TOS 내의 관련 정보 저장부들을 리뷰하기 위해 TC 해결자 링크를 클릭하고 특정 유형들의 문제를 필터링하는 능력을 갖는다. 문제 카테고리 및 문제 상태가 선택될 수 있다(2480). 다른 아이템들 중에서 문제 정보(2460), SSCO 트럭 코드(2462), 장비 번호(2464), 부킹 빌 번호(2466), TC 해결자(2468), 시작 및 종료 시간들(2470) 및 상태(2472)가 모두 뷰잉될 수 있다. 또한, 이들 문제들은 특정 문제를 해결하는 것을 돕기 위해 더 상세한 인터페이스에 링크될 수 있다. 티켓을 클릭함으로써(예를 들어, 고장수리를 위한 요청), 사용자가 그 티켓에 대한 더 상세한 정보를 수집하는 것이 가능하다.
도 24b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 문제 해결 사용자 인터페이스의 흐름도이다. 일 예시적인 구현에 따르면, 이러한 문제 해결책 사용자 인터페이스는 3개의 단계들을 포함할 수 있다. 첫째로, 2410에서, 이러한 문제 해결책 사용자 인터페이스는 터미널 운영 시스템 관리 기능성을 포함하는 인터페이스의 표시를 위한 정보를 사용자에 제공하는 것을 포함할 수 있고, 정보는 문제 또는 문제 관련 정보를 포함하는 제 1 정보를 포함한다. 예시의 목적들로, 제 1 정보의 예, 여기서 '문제 정보'가 "양태 A"라 칭할 수 있다. 둘째로, 이러한 문제 해결책 사용자 인터페이스는 2420에서, 양태 A를 관리하기 위해, 인터페이스를 거쳐 수신된 입력에 관련된 프로세싱 정보를 포함할 수 있다. 마지막으로, 이러한 문제 해결책 사용자 인터페이스는, 2430에서, 양태 A의 관리의 결과의 출력이 생성되도록, 출력/결과를 생성하도록, 예를 들어 인터페이스를 업데이트하고, 시스템 내의 그리고/또는 제 3 파티에 명령들을 전송하고, 그리고/또는 시스템 내에서 양태 A를 실행하도록 프로세싱을 수행하는 것을 포함할 수 있다.
몇몇 선택적 실시예들에서, 표시를 위해 정보를 제공하는 단계는 2412에서, TOS 비의존성, 저장소 인스턴스 및/또는 비즈니스 대상체 포맷의 취급으로 그리고/또는 취급을 거쳐 프로세싱된 데이터를 포함할 수 있다. 다른 선택적 실시예들에서, 표시를 위해 제공된 이러한 정보는 2414에서, 사용자가 사용자 구성을 거쳐 제 1 정보 및/또는 제 1 정보 옵션들을 설정하고 그리고/또는 변경하게 하도록 구성된 시스템을 거쳐 제공될 수 있다. 몇몇 선택적 실시예들에서, 이러한 문제 해결책 사용자 인터페이스는 2422에서, 제 1 정보와 연계된 TOS 특정 포맷, 저장소 인스턴스 및/또는 비즈니스 대상체를 설정하는 것을 포함할 수 있다. 다른 선택적 실시예들에서, 이러한 문제 해결책 사용자 인터페이스는 2424에서 문제 해결 작용을 결정하기 위해 입력 제 1 정보 및/또는 제 1 정보 옵션들을 프로세싱하는 것을 포함할 수 있다. 이러한 프로세싱은 몇몇 선택적 실시예들에서, TOS 비의존성 포맷 데이터를 TOS 특정 포맷 데이터로 변환하는 것, 저장소 인스턴스를 생성하는 것 및/또는 비즈니스 대상체를 생성하는 것, 또는 2432에서, 임의의 이러한 구성들과 연계된 프로세싱을 수행하는 것을 포함할 수 있다. 더욱이, 이러한 문제 해결책 사용자 인터페이스는 2434에서, 문제 해결책 작용을 구현하는 것 그리고/또는 구현을 위해 시스템 내에 그리고/또는 제 3 파티에 문제 해결책 작용을 전송하는 것을 포함할 수 있다.
링크된 예시적인 인터페이스의 예시적인 구현은 도 25에 도시된다. 여기서, 사용자들은 영향을 받은 파티들(예를 들어, 운전자 및 터미널 사무원)이 문제를 해결할 수 있도록 데이터를 업데이트하고 문제점들을 잠재적으로 보정하기 위해 옵션들을 선택할 수 있다. 예시적인 입력들은 무엇보다도, 문제 카테고리 및 상태(2580), 문제 정보(2560), SSCO 트럭 코드(2562), 장비 번호(2564), 부킹 빌 번호(2566), TC 해결자(2568), 시작 및 종료 시간들(2570) 및 상태(2572)를 포함할 수 있다.
본 발명의 시스템들 및 방법들은 또한 사용자들이 장비 상호 교환들, 장비 상호 교환 보고들(EIR) 및 검사들에 대한 정보를 수신하도록 구성될 수 있다. 이들은 보고의 형태로 시스템에 의해 공급될 수 있다. 예시적인 보고들이 도 26a 및 도 27에 발견된다. 시스템은 TOS로부터 수집된 데이터를 사용하여 장비 상호 교환 및 검사 보고를 생성할 수 있다.
예를 들어, 도 26a에서, 풀인/아웃, 엠티 인/아웃, 섀시 인/아웃 및 레인 인/아웃과 같은 컨테이너 이동 활동에 대한 정보가 체크될 수 있다(2698). 레일 인/아웃은 철도 회사들과의 활동의 가상 표현일 수 있다. 또한, 상세들은 무엇보다도 EIR(2680), 날짜(2682), 트럭커(2684), 이동 유형(2686), Cntr 번호(2688), SSCO(2690), 시일 번호(2692), 섀시 번호(2694) 및 게이트 통과 번호(2696)와 같은 다수의 부킹들을 위해 표시될 수 있다.
도 26b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 장비 상호 교환 보고(EIR) 사용자 인터페이스의 흐름도이다. 일 예시적인 구현에 따르면, 이러한 장비 상호 교환 보고 사용자 인터페이스는 3개의 단계들을 포함할 수 있다. 먼저, 2610에서, 이러한 장비 상호 교환 보고 사용자 인터페이스는 터미널 운영 시스템 관리 기능성을 포함하는 인터페이스의 사용자로의 표시를 위한 정보를 제공하는 것을 포함할 수도 있고, 정보는 보고 정보를 포함하는 제 1 정보를 포함한다. 예시의 목적들로, 제 1 정보의 이 예, 여기서 '보고 정보'는 본 명세서에서 "양태 A"라 칭할 수 있다. 둘째로, 이러한 장비 상호 교환 보고 사용자 인터페이스는 2620에서, 양태 A를 관리하기 위해, 인터페이스를 거쳐 수신된 입력에 관련된 정보를 프로세싱하는 것을 포함할 수 있다. 마지막으로, 이러한 장비 상호 교환 보고 사용자 인터페이스는, 2630에서, 출력/결과를 생성하도록, 예를 들어 인터페이스를 업데이트하고, 시스템 내에 그리고/또는 제 3 파티에 명령들을 전송하고, 그리고/또는 양태 A의 관리의 결과의 출력이 생성되도록 시스템에서 양태 A를 실행하도록 프로세싱을 수행하는 것을 포함할 수 있다.
몇몇 선택적인 실시예들에서, 표시를 위한 정보를 제공하는 단계는 2612에서, TOS 비의존성, 저장소 인스턴스 및/또는 비즈니스 대상체 포맷의 취급으로 그리고/또는 취급을 거쳐 프로세싱된 데이터를 포함할 수 있다. 다른 선택적 실시예들에서, 표시를 위해 제공된 이러한 정보는 2614에서, 사용자가 사용자 구성을 거쳐 제 1 정보 및/또는 제 1 정보 옵션들을 설정하고 그리고/또는 변형하게 하도록 구성된 시스템을 거쳐 제공될 수 있다. 몇몇 선택적 실시예들에서, 이러한 장비 상호 교환 보고 사용자 인터페이스는 2622에서, 제 1 정보와 연계된 TOS 특정 포맷, 저장소 인스턴스, 및/또는 비즈니스 대상체를 설정하는 것을 포함할 수 있다. 다른 선택적 실시예들에서, 이러한 장비 상호 교환 보고 사용자 인터페이스는 2624에서, 제 1 정보 및/또는 제 1 정보 옵션 중 적어도 일부를 선택하기 위해 입력 제 1 정보 및/또는 제 1 정보 옵션들을 프로세싱하는 것을 포함할 수 있다. 이러한 프로세싱은, 몇몇 선택적 실시예들에서, 2632에서, TOS 비의존성 포맷 데이터를 TOS 특정 포맷 데이터로 변환하는 것, 저장소 인스턴스를 생성하는 것, 및/또는 비즈니스 대상체를 생성하는 것, 또는 임의의 이러한 구성들과 연계된 프로세싱을 수행하는 것을 포함할 수 있다. 더욱이, 이러한 장비 상호 교환 보고 사용자 인터페이스는 2634에서, 선택된 데이터를 포함하는 보고를 생성하는 것 및/또는 시스템 내에 그리고/또는 제 3 파티에 보고를 전송하는 것을 포함할 수 있다.
하나의 컨테이너를 위한 예시적인 EIR이 도 27에 도시되어 있다. 본 예에서, 타이틀(2710)은 회사명 및 항구명을 나타낸다. 여기서, 보고의 상세들은 이 특정 컨테이너(2732)를 위해 표시된다. 예를 들어, 이 컨테이너를 이동한 트럭커의 화상이 표시될 수 있다(2720). 게이트 통과 번호(2722)가 또한 제시된다. SSCO의 상세들(2724), 섀시 번호의 상세들(2726) 및 상호 교환을 위한 주석(2728) 및 캐리어 전달을 위한 주석(2730)이 또한 여기서 발견될 수 있다.
시스템의 또 다른 능력은 사용자들이 장비 해제들을 뷰(생성, 변형)하게 하는 것이다. 예시적인 다이어그램은 본 발명의 혁신들의 하나 이상의 양태들에 따른 도 28a의 샘플 장비 해제를 도시한다. 무엇보다도 해제 번호(2820), 길이(2830), 유형(2832), 높이(2834), 소유자(2836), 부킹된 양(2838), 반출량(2840), 미완성량(2842), 플렉스 높이 선택(2844) 및 선택들(2846)을 포함하는 상세들이 이 인터페이스 상에서 체크될 수 있다.
도 28b는 본 발명의 혁신들의 하나 이상의 양태들에 따른 예시적인 장비 해제 사용자 인터페이스의 흐름도이다. 일 예시적인 구현에 따르면, 이러한 장비 해제 사용자 인터페이스는 3개의 단계들을 포함할 수 있다. 첫째로, 2860에서, 이러한 장비 해제 사용자 인터페이스는 터미널 운영 시스템 관리 기능성을 포함하는 인터페이스의 사용자로의 표시를 위해 정보를 제공하는 것을 포함할 수 있고, 정보는 해제 정보를 포함하는 제 1 정보를 포함한다. 예시의 목적들로, 제 1 정보의 이 예, 여기서 '해제 정보'는 본 명세서에서 "양태 A"라 칭할 수 있다. 둘째로, 이러한 장비 해제 사용자 인터페이스는 2870에서, 양태 A를 관리하기 위해, 인터페이스를 거쳐 수신된 입력에 관련된 정보를 프로세싱하는 것을 포함할 수 있다. 마지막으로, 이러한 장비 해제 사용자 인터페이스는, 2880에서, 출력/결과를 생성하도록, 예를 들어 인터페이스를 업데이트하고, 시스템 내에 그리고/또는 제 3 파티에 명령들을 전송하고, 그리고/또는 양태 A의 관리의 결과의 출력이 생성되도록 시스템에서 양태 A를 실행하도록 프로세싱을 수행하는 것을 포함할 수 있다.
몇몇 선택적인 실시예들에서, 표시를 위한 정보를 제공하는 단계는 2862에서, TOS 비의존성, 저장소 인스턴스 및/또는 비즈니스 대상체 포맷의 취급으로 그리고/또는 취급을 거쳐 프로세싱된 데이터를 포함할 수 있다. 다른 선택적 실시예들에서, 표시를 위해 제공된 이러한 정보는 2864에서, 사용자가 사용자 구성을 거쳐 제 1 정보 및/또는 제 1 정보 옵션들을 설정하고 그리고/또는 변형하게 하도록 구성된 시스템을 거쳐 제공될 수 있다. 몇몇 선택적인 실시예들에서, 이러한 장비 해제 사용자 인터페이스는 2872에서, 제 1 정보와 연계된 TOS 특정 포맷, 저장소 인스턴스 및/또는 비즈니스 대상체를 설정하는 것을 포함할 수 있다. 다른 선택적 실시예들에서, 이러한 장비 해제 사용자 인터페이스는 2874에서, 제 1 정보를 위한 만료를 결정하기 위해 입력 제 1 정보 및/또는 제 1 정보 옵션들을 프로세싱하는 것을 포함할 수 있다. 이러한 프로세싱은 몇몇 선택적인 실시예들에서, 2882에서, TOS 비의존성 포맷 데이터를 TOS 특정 포맷 데이터로 변환하는 것, 저장소 인스턴스를 생성하는 것, 및/또는 비즈니스 대상체를 생성하는 것, 또는 임의의 이러한 구성들과 연계된 프로세싱을 수행하는 것을 포함할 수 있다. 더욱이, 이러한 장비 해제 사용자 인터페이스는 2884에서, 만료의 날짜 및/또는 시간이 도달하여 만료를 보고할 때 제 1 정보를 만료하는 것을 포함할 수 있다.
도 29는 샘플 수출 선박 관리자 인터페이스의 예시적인 다이어그램을 도시한다. 수출 선박 관리자는 사용자들이 시스템 내의 모든 선박 수출의 상세들을 관리하게 할 수 있다. 여기서 길이, 부킹됨, 컨테이너들 반입, 도래함 및 지체된 수취 정보를 포함하는 선박/부킹 요약(2930)을 포함하는 상세들이 검사될 수 있다. 또한, 인터페이스는 무엇보다도, 비-부분적(2940), 지체된 수취(2942), 조기 수취(2944), 부킹 번호(2950), 길이(2952), 높이(2954), 유형(2956)에 관련된 정보를 표시할 수 있다.
사용자 인터페이스/GUI
시스템 사용자 인터페이스/GUI의 예시적 구현예는 사용자가 시스템을 네비게이팅하고, 또한, 서식을 효율적으로 완성하고 정보를 수집할 수 있게 하는 특징을 포함할 수 있다. 이러한 사용자 인터페이스/GUI의 예를 도 30a, 도 31, 도 33 및 도 34a에서 찾을 수 있다.
도 30a는 다중 작용 프로세싱을 위한 예시적 장비 제어를 위한 예시적 특징 및 기능을 도시하는 도면이다. 여기서, 예로서, 사용자는 컨테이너 또는 섀시의 세트에 특정 작용 또는 서비스 코드를 적용 또는 제거할 수 있다. 인터페이스는 기존 서비스 코드 및 장비 상태에 대한 정보를 제공하고, 상기 사용자 작용의 허용에 대한 편집 체크를 수행한다. 특히, 장비 번호(3070), 상태(3072) 및 서비스 코드(3074)에 대한 정보가 여기서 접근될 수 있다. 또한, 특정 실시예에서, 사용자는 "컨테이너를 위한 작용" 섹션(3076) 아래의 드롭다운 옵션을 선택할 수 있다. 이러한 예시적 드롭다운 옵션은 컨테이너 수취 승인, 선박을 위한 비움(empty in for vessel), 대여 종료, 판매용, 재배치, 수리를 위한 반출, 빈 상태로 반납 불가, 대여 종료 예정, 판매 예정, 수출 화물차 반출(export dray off), 젠셋 필요(genset required), 핫 해치(hot hatch), 모든 작용 삭제 등 중 하나 이상을 포함하지만 이들에 한정되지는 않는다. 이러한 작용은 인터페이스 상에 지정된 다수의 세트의 컨테이너에 적용될 수 있다.
몇몇 실시예에서, 사용자는 드롭다운 메뉴로부터 서비스 코드를 선택할 수 있다. 예시적 서비스 코드는 없음, 대여종료, 수리를 위한 반출, 판매용, 재배치 등을 포함하지만 이에 한정되지 않는다.
도 30b는 단일 작용 프로세싱을 위한 예시적 장비 제어 페이지를 위한 예시적 사용자 특징 및 기능을 도시하는 도면이다. 다중 작용 프로세싱의 경우에서와 같이, 사용자는 단일 컨테이너 또는 섀시에 특정 작용 또는 서비스 코드를 적용 또는 제거할 수 있다. 이 경우에, 인터페이스는 선택된 장비 피스에 관한 더 많은 정보를 제공하고, 사용자에게 유효 작용 옵션을 제시한다. 장비 유형(3040)이 선택될 수 있으며, 빈 상태로 반환되어야 하는지, 대여 종료되어야 하는지, 판매된 것인지, 핫 해치 등의 여부 같은 컨테이너 정보(3010)도 선택될 수 있다. 핫 해치는 최초로 다루어져야하도록 적재되어야 하며, 선박 상에 또는 야드에서 비-핫 해치 컨테이너 아래에 부적절하게 배치되지 않아야 하는 예이다. 다른 컨테이너 상태(3020), EIR 세부사항(3030) 및 포트 정보(3050)가 또한 관찰될 수 있다.
도 30c는 본 발명의 혁신들의 하나 이상의 양태에 준한 예시적 장비 제어 사용자 인터페이스의 흐름도이다. 일 예시적 실시예에 따라서, 이러한 장비 제어 사용자 인터페이스는 3 단계를 포함할 수 있다. 먼저, 3010에서, 이러한 장비 제어 사용자 인터페이스는 터미널 운영 시스템 관리 기능을 포함하는 인터페이스의 사용자에 대한 표시를 위한 정보, 장비 식별정보를 포함하는 제 1 정보를 포함하는 정보 및/또는 상태 정보를 제공하는 것을 포함할 수 있다. 예시의 목적을 위해, 여기서 "장비 식별정보 및/또는 상태정보"인 제 1 정보의 이 예는 본 명세서에서 "양태 A"라 지칭될 수 있다. 두 번째로, 이러한 장비 제어 사용자 인터페이스는 3020에서 양태 A의 관리를 위해 인터페이스를 통해 수신된 입력에 관한 정보를 프로세싱하는 것을 포함할 수 있다. 마지막으로, 이러한 장비 제어 사용자 인터페이스는 출력/결과를 생성하기 위해, 예를 들어, 인터페이스를 업데이트하기 위해, 시스템 내에 및/또는 제 3의 파티에게 명령을 전송하기 위해, 및/또는 시스템의 양태 A를 실행하기 위해 프로세싱을 수행하는 것을 포함할 수 있으며, 그래서, 양태 A의 관리의 결과의 출력이 3030에서 생성된다.
다른 선택적 실시예에서, 표시를 위한 정보를 제공하는 단계는 3012에서 TOS-비의존성, 저장소 인스턴스 및/또는 사업 대상체 포맷의 취급으로 및/또는 그를 통해 프로세싱되는 데이터를 포함할 수 있다. 다른 선택적 실시예에서, 표시를 위해 제공되는 이러한 정보는 사용자가 3014에서 사용자 구성을 통해 제 1 정보 및/또는 제 1 정보 옵션을 형성 및/또는 변경할 수 있게 하도록 구성된 시스템을 통해 제공될 수 있다. 일부 선택적 실시예에서, 이러한 장비 제어 사용자 인터페이스는 3022에서 TOS 특정 포맷, 저장소 인스턴스, 및/또는 제 1 정보와 연관된 비지니스 대상체 설정하는 것을 포함할 수 있다. 다른 선택적 실시예에서, 이러한 장비 제어 사용자 인터페이스는 3024에서 복수의 엔트리를 포함하는 제 1 정보의 서브세트를 선택하도록 입력된 제 1 정보 및/또는 제 1 정보 옵션을 프로세싱하는 것을 포함할 수 있다. 이러한 프로세싱은 몇몇 선택적 실시예에서, 3032에서 TOS 특정 포맷 데이터로의 TOS 비의존성 포맷 데이터의 변환, 저장소 인스턴스 생성 및/또는 사업 대상체의 생성 또는 임의의 이러한 구성과 연계된 프로세싱의 수행을 포함할 수 있다. 또한, 이러한 장비 제어 사용자 인터페이스는 3034에서 선택된 데이터를 포함하는 보고서를 생성 및/또는 시스템 내에서 및/또는 제 3 파티에게 보고서의 전송을 포함할 수 있다.
도 31은 네비게이팅을 위해 사용될 수 있는 예시적 드롭다운 메뉴의 예를 제공한다. 요소 3130A는 예로서, 부킹, CBR, CBR 보고서, 철도 수출, 선박 관리자, 위험 상품 등을 포함하는 수출 기능을 위해 가용한 드롭다운 옵션들을 예시한다. 요소 3140B는 예로서, 화물 계산서, 컨테이너, 화물차 반입(dray in) 등을 포함하는 수입 기능을 위해 가용한 드롭다운 옵션을 예시한다. 요소 3150C는 예로서, 해제, 장비 제어, 이동 이력 등을 포함하는 장비 기능을 위해 가용한 드롭다운 옵션을 예시한다. 요소 3160D는 예로서, 문제 EIR, 트럭운송 회사, 트럭운송 회사 보고서 등을 포함하는 게이트 기능을 위해 가용한 드롭다운 옵션을 예시한다. 요소 3160E 또는 3170E는 예로서, 터미널, 프로파일, 구성 등을 포함하는 관리자 기능을 위해 가용한 드롭다운 옵션을 예시한다.
도 32a는 예시적 위험 상품 컨테이너 목록 인터페이스이다. 이는 요약 보고서와 업데이트 도구의 조합이다. 이는 사용자가 예로서 요약 보고서의 다수의 편집 가능한 필드를 사용하여 이러한 목적을 달성하기 위해 시스템으로 개별적으로 진행할 필요 없이 부킹의 세부사항을 사용자가 관리할 수 있는 예이다. 예로서, 요약 보고서는 부킹 번호 필드(3202)에 입력된 특정 부킹 번호에 대응하여 부킹 보고서가 생성될 수 있다. 예로서, 사용자는 부킹 번호 필드를 변경함으로써 다양한 부킹을 위해 요약 페이지 사이에서 스위칭할 수 있다. 컨테이너 번호 필드(3204)가 공란으로 남겨질 때, 요약 보고서가 부킹 번호에 대응하여 생성되며, 이는 특정 부킹의 모든 컨테이너를 나열한다. 인터페이스는 컨테이너 번호와 일반적으로 연계하여 특정 부킹 내의 위험 상품 아이템을 위한 요약 페이지를 도시한다. 또한, 특정 부킹의 컨테이너에 대한 정보가 컨테이너(3220)의 목록으로서 사용자에게 제공되고 다수의 편집 가능한 필드를 통해 사용자에 의해 업데이트될 수 있다. 사용자는 새로운 컨테이너 추가 필드(3222)를 통해 부킹에 새로운 컨테이너들을 추가하는 것을 선택할 수 있다. 편집 가능한 필드(3230)는 사용자가 컨테이너 내의 위험 아이템에 관한 정보를 추가 또는 업데이트할 수 있도록 제공된다. 특정 위험 아이템은 역시 편집될 수 있는 위험 아이템 필드(3240)에서 식별된다. 예로서, 컨테이너 XXXU041966에서 위험 아이템(07-1.2 및 0038-1.2)이 지정된다. 나타난 바와 같이, 사용자는 컨테이너 선택 도구(3224)를 통해 특정 부킹을 위해 나열된 모든 컨테이너들 사이에서 특정 컨테이너들을 선택할 수 있다.
도 32b는 예시적 위험 상품 아이템 인터페이스를 도시한다. 이는 이러한 목적을 달성하기 위해 시스템으로 개별적으로 진행할 필요 없이 부킹의 세부사항들을 사용자가 관리할 수 있는 다른 예이다. 본 예에서, 요약 보고서는 다른 레벨에서 생성된다. 여기서, 사용자는 부킹 번호 필드(3202)에 이미 부킹 번호가 명시된 이후 컨테이너 번호 필드(3204)를 사용하여 다양한 컨테이너들 사이에서 추가로 네비게이팅한다. 인터페이스는 다수의 편집 가능한 필드들을 갖는 특정 부킹의 특정 컨테이너 내에 위험 상품 아이템들을 위한 요약 페이지를 도시한다. 예시적 요약 보고서는 지정된 컨테이너(예를 들어, 3212)에 대한 정보를 포함한다. 도 32a에서, 컨테이너 XXXU041966의 위험 아이템(07-1.2)에 관한 정보가 제공된다. 아이템의 설명은 예로서 드롭다운 메뉴(3232)를 통해 제공된다. 비상 접촉 정보, EMS 번호 및 선적자 정보가 3234의 다수의 필드에 의해 제공된다. 여기서, 사용자는 다수의 드롭다운 메뉴 사이에서 선택하거나 특정 정보를 수동 입력할 수 있다. 양, 공해 및 독성 정보가 예를 들어 필드 3238에 명시될 수 있다. 팩킹 정보가 3236에서 다수의 필드들에 제공된다. 예로서, 사용자는 하나 이상의 드롭다운 메뉴로부터 위험 아이템을 수납하는 박스들의 크기들 및 중량들을 명시할 수 있다. 추가적 리스크나 위험 정보는 3240의 다수의 필드들에 제공된다.
도 33은 예를 들어, 다수의 목록들을 위해 사용되는 것 같은 예시적 잘라내기 및 붙여넣기 도구/기능의 예시적 특징들을 도시한다. 이러한 도구들의 사용을 통해, 사용자는 부킹 번호들 또는 컨테이너 번호들의 전체 목록들을 복사하고, 그 후 새로운 팝업 인터페이스를 초래하는 필드 내에 그 목록을 붙여넣을 수 있는 능력을 갖게 된다. 예로서, 컨테이너 번호 필드(3310)로 마우스를 이동시킴으로써, 인터페이스(3320)(예를 들어, 팝업 메뉴)가 제시되며, 이 인터페이스 내에는 다수의 컨테이너 번호(3322)가 입력될 수 있다. 몇몇 실시예들에서, 인터페이스(3320)는 예로서 드롭다운 메뉴를 사용하여 특정 컨테이너의 하선 우선권을 위해 하선 우선권 필드(3324) 같은 추가적 기능 필드들을 추가로 포함할 수 있다. 제출 또는 닫기 같은 추가적 버튼들/작용들이 또한 인터페이스(3320)에 포함될 수도 있다. 컨테이너 번호를 제출한 이후, 사용자는 그 후 도 22a, 도 26a, 도 28a 및 도 33 같은 다수의 편집 인터페이스로 네비게이팅할 수 있거나, 지정된 컨테이너들에 새로운 하선 우선권 설정을 적용할 수 있다. 추가적 실시예들에서, 도 33에 도시된 기능들은 부킹 번호들 및 아이템 번호들에 적용될 수 있다.
도 34a는 역시 다수의 편집 가능한 필드들을 갖는 예시적 화물 계산서 인터페이스를 도시한다. 다수의 기록들이 필드(3410)에 나열된다. 필드(3408)는 사용자에게 아이템들에 대응하는 박스들을 체크함으로써 하나 이상의 기록들을 선택 및 업데이트하는 능력을 제공한다. 관세 상황, 관세 주석들 및 USDA 상태에 관한 정보가 각각 대응하는 편집 가능한 필드들(3414, 3416, 3418)에 포함된다. 수신된 정보에 기초하여, 사용자는 하나 이상의 대응 드롭다운 메뉴를 사용함으로써 하나 이상의 상태를 업데이트할 수 있다. 수송 상태가 필드(3420)에 표시되고, 하나 이상의 드롭다운 메뉴를 사용하여 업데이트될 수 있다. 무료 체선 일수의 수가 필드(3424)를 통해 입력될 수 있다. 체선요율 코드가 필드(3426)에 표시되며, 예로서, 하나 이상의 드롭다운 메뉴를 통해 편집될 수 있다.
도 34b는 역시 다수의 편집 가능한 필드들을 갖는, 다른 예시적 화물 계산서 인터페이스를 도시한다. 여기서, 도 34a에 도시된 인터페이스의 확장이 도시되어 있다. 예로서, 캐리어 상태, 캐리어 카테고리 및 캐리어 주석이 필드들(3432, 3434, 3436)에서 발견된다. 역시, 요약 목록 및 편집 가능한 필드들의 조합을 통해, 사용자는 화물 계산서 및 그와 연계된 컨테이너를 위한 기록들을 보고 변경할 수 있다.
도 34c는 예시적 화물 계산서 인터페이스의 상세한 모습을 도시한다. 예로서, 상세한 요약이 필드(3408)에서 대응 박스를 체크함으로써 선택된 기록에 대해 생성된다. 화물 계산서 기록 T3047945에 관한 상세들이 도시되어 있다. 사용자는 필드(3440)를 사용하여 다른 화물 계산서로 네비게이팅할 수 있다. 예로서, 관세 상태 및 주석, USDA 상태 및 주석 및 캐리어 상태 및 주석이 필드 3442에 도시되어 있다. 출발처, 하선 항구, 목적지처, 인수자, 트럭 할당 및 위험 상품 정보가 필드 3446에 포함된다. 또한, 화물 계산서에서 컨테이너에 관한 정보가 또한 예로서 필드 3444에 제공된다. 사용자는 하나 이상의 편집 가능한 필드들 및/또는 하나 이상의 드롭다운 메뉴를 통해 화물 계산서에 관한 정보를 관찰 및 편집할 수 있다.
도 34d는 본 발명의 혁신들의 하나 이상의 양태들에 준한 예시적 화물(수입) 계산서 사용자 인터페이스의 흐름도이다. 하나의 예시적 실시예에 따라서, 이러한 화물(수입) 계산서 사용자 인터페이스는 3 단계들을 포함할 수 있다. 먼저, 3460에서, 이러한 화물(수입) 계산서 사용자 인터페이스는 사용자에게 터미널 운영 시스템 관리 기능을 포함하는 인터페이스를 표시하기 위한 정보, 복수의 데이터 대상체들을 포함하는 제 1 정보를 포함하는 정보를 제공하는 것을 포함할 수 있다. 예시의 목적을 위해, 여기서, '복수의 데이터 대상체들'인 제 1 정보의 이러한 예는 본 명세서에서 "양태 A"라 지칭될 수 있다. 두 번째로, 이러한 화물(수입) 계산서 사용자 인터페이스는 3470에서 양태 A를 관리하기 위해 인터페이스를 통해 수신된 입력에 관한 정보를 프로세싱하는 것을 포함할 수 있다. 마지막으로, 이러한 화물(수입) 계산서 사용자 인터페이스는 예를 들어, 시스템 내에서 및/또는 제 3 파티에게 명령들을 전송하기 위해 및/또는 양태 A의 관리 결과의 출력이 3480에서 생성되도록 시스템 내의 양태 A를 실행하기 위해 출력/결과를 생성하도록 프로세싱을 수행하는 것을 포함할 수 있다.
일부 선택적 실시예에서, 표시를 위한 정보를 제공하는 단계는 3462에서 TOS-비의존성, 저장소 인스턴스 및/또는 사업 대상체 포맷에서의 취급으로 및/또는 그를 통하여 프로세싱된 데이터를 포함할 수 있다. 다른 선택적 실시예에서, 표시를 위해 제공된 이러한 정보는 3464에서 사용자 구성을 통해 사용자가 제 1 정보 및/또는 제 1 정보 옵션들을 형성 및/또는 변경할 수 있게 하도록 구성된 시스템을 통해 제공될 수 있다. 일부 선택적 실시예에서, 이러한 화물(수입) 계산서 사용자 인터페이스는 3472에서 제 1 정보와 연계된 TOS-지정 포맷, 저장소 인스턴스 및/또는 사업 대상체를 형성하는 것을 포함할 수 있다. 다른 선택적 실시예에서, 이러한 화물(수입) 계산서 사용자 인터페이스는 3474에서 제 1 정보에서 데이터 대상체의 서브세트를 선택하도록 입력된 제 1 정보 및/또는 제 1 정보 옵션들을 프로세싱하는 것을 포함할 수 있다. 일부 선택적 실시예들에서, 이러한 프로세싱은 3482에서 TOS-비의존성 포맷 데이터를 TOS-특정 포맷 데이터로 변환, 저장소 인스턴스의 생성 및/또는 사업 대상체의 생성 또는 이러한 구성들을 포함하는 프로세싱의 수행을 포함할 수 있다. 또한, 이러한 화물(수입) 계산서 사용자 인터페이스는 3484에서 데이터 대상체들의 선택된 서브세트에 대한 변경을 포괄적으로 적용하는 것 및/또는 시스템 내에서 및/또는 제 3 파티에게 변경을 전달하는 것을 포함할 수 있다.
추가적으로, 도 35는 "전체 적용" 기능을 예시하는 샘플 도면을 도시한다. 이 기능을 사용하여, 사용자는 각각을 개별적으로 선택할 필요 없이 다수의 컨테이너에 정보를 할당할 수 있다. 예로서, 다수의 아이템들이 필드 3510에서 대응 박스들을 체크함으로써 선택될 수 있다. 작용, 예를 들어, 로컬 클리어 상태, 관세 상태, 관세 주석들, USDA 상태, 운송 상태, 체선 상태, 무료 일수, 체선 범위 코드 등이 적용 버튼(3514)을 클릭함으로써 선택된 아이템들에 적용될 수 있다. 상단 박스(3512)에 명시된 작용들은 지정된 컨테이너들에 채워진다.
도 36a 및 도 36b는 수입 컨테이너 편집 기능의 예시도를 도시한다. 예시적 인터페이스는 도 34a 및 도 34b에 도시된 샘플 화물 계산서 인터페이스의 것과 유사하다. 여기서, 사용자는 수송, 캐리어 및 관세 같은 다양한 보유사항들의 적용 또는 해제, 체선율 코드들의 변경 및 컨테이너 픽업을 위한 트럭운송 회사들 또는 핀 번호들의 할당을 수행할 수 있다. 수입 컨테이너에 대하여, 필드 3620의 컨테이너 번호 식별 및 필드 3622의 체선 상태, 필드 3624의 관세 상태 및 필드 3626의 캐리어 상태의 표시/편집에 강조가 부여된다. 도 34a 및 도 34b의 화물 계산서 인터페이스를 위해 도시된 기능에 유사하게, 사용자는 자유 텍스트 필드들 또는 하나이상의 드롭다운 메뉴를 사용하여 또는 수동 입력을 통해 정보를 입력, 업데이트 또는 변경할 수 있다.
그리고, 특정 실시예들에서, 드롭다운 메뉴가 사용되어 필드들의 분포를 위한 엔트리들을 선택할 수 있다. 예로서, 사용자는 캐리어 카테고리(3626)에서 SSCO EQ 제어부, FDA 홀드, 어류 및 야생동물, 펜딩 전환 홀드, 최종 무료 일수까지 홀드, 기타, 미국 해안 경비대 등 중 어느 하나 같은 그러나 이들에 한정되지 않는 옵션들을 선택할 수 있다.
도 36c는 샘플 수입 컨테이너 세부사항 사용자 인터페이스의 예시도를 도시한다. 여기서, 예로서, 특정 화물 계산서 내에 컨테이너의 상태에 대한 더욱 상세한 정보를 포함하는 사용자 인터페이스를 제공하도록 구성된 시스템. 사용자는 필드 3630을 사용하여 다양한 컨테이너들 사이에서 네비게이팅할 수 있다. 수송 상태, 관세 상태 및 주석, USDA 상태 및 주석, 그리고, 캐리어 상태 및 주석이 필드 3632에 도시되어 있다. 터미널 홀드, 전달 및 위험 상품 정보가 필드 3634에 포함된다. 서비스 코드, 선적 항구 및 하선 정보가 필드 3636에 표시된다. 컨테이너의 유형, 크기 및 상태 정보가 필드 3638에 도시되어 있다. 캐리어 및 체선 정보가 3640에 표시되어 있다. 야드 및 트럭 정보가 필드 3642에 도시되어 있다. 사용자는 하나 이상의 드롭다운 메뉴 및/또는 하나 이상의 편집 가능한 필드들을 통해 컨테이너에 관한 정보를 관찰 및 편집할 수 있다. 또한, 화물 계산서의 컨테이너에 관한 정보도 예로서 필드 3634에서 참조로 제공된다.
도 37은 자동 제안/자동 완성 및/또는 확인 기능의 일 예를 도시하는 예시적 도면을 도시한다. 자동 제안, 자동 완성 및 확인 기능이 부킹, 컨테이너 또는 화물 계산서와 연계하여 임의의 콘텍스트에 적용될 수 있다. 여기서, 수송 트럭 운송업자와 연계하여 일 예가 제공된다. 사용자가 수송 트럭 운송업자 필드(3710)를 선택할 때(예를 들어, 필드 위로 컴퓨터 마우스를 이동시킴으로써), 확장된 인터페이스가 제공된다. 사용자가 트럭 운송업자 코드를 타이핑할 때, 애플리케이션은 데이터베이스로부터 유효 코드들을 제안하고 트럭운송 회사 상태에 대한 추가적 정보를 제공한다. 명칭들을 포함하는 다수의 트럭운송 회사의 정보가 제공된다. 또한, 사용자가 입력란에 타이핑하기 시작할 때 박스들의 자동 배치가 이루어질 수 있다. 예로서, 사용자는 수송 트럭운송업자(3710) 박스에서 네 개의 문자 지명들을 갖는 하나 이상의 트럭운송 회사를 선택할 수 있다. 예로서, LTKC가 Luck Transportation Inc.에 대응하는 경우, 이때, 박스에 "LU"를 타이핑하면 제안들과 함께 박스를 자동 배치하고, Luck Transportation이 먼저 출현함으로써, 사용자가 타이핑을 완료할 필요 없이 회사 선택을 선택할 수 있게 한다. 또한, 다수의 다른 제안들(3712)이 시스템에 의해 제안됨으로써 사용자가 마찬가지로 이들로부터 선택할 수 있게 한다.
추가적으로, 링크 버튼이 또한 제공될 수 있다. 링크 버튼을 통해, 사용자는 도 38a에 도시된 것 같은 트럭운송업자 관리 페이지에서 트럭운송 회사에 관한 정보에 접근할 수 있다. 필드 3714에 야드 정보를 포함하지만 이에 한정되지 않는 추가적 정보가 제공된다. 또한, 사용자는 링크 버튼을 통해 특정 트럭운송 회사에 관한 정보를 업데이트 및 수정할 수 있다. 역시, 사용자는 하나 이상의 드롭다운 메뉴 및/또는 하나 이상의 편집 가능한 필드들을 통해 트럭운송 회사에 관한 정보를 관찰 및 편집할 수 있다.
도 38a는 예로서, 도 37에 도시된 것 같은 드롭다운 또는 확장 인터페이스 상의 링크 버튼으로부터 접근 가능한 샘플 트럭운송 업자 관리 인터페이스의 예시적 도면을 도시한다. 여기서, 사용자는 회사 할당 상태를 업데이트하고, 특정 Steamship Company를 위한 컨테이너들을 서비스하기 위해 트럭운송 회사의 기능에 다양한 홀드를 부여할 수 있다. 사용자는 필드 3802를 통해 다양한 트럭운송 회사들 사이에서 네비게이팅할 수 있다. 트럭운송 회사가 지정되고 나면, 요약 보고서가 생성되고, 이는 전화, 팩스 및 이메일 접촉 정보와 회사의 명칭 및 주소를 위한 위치 필드들(3810, 3812) 같은 다수의 편집 가능한 필드들을 포함하는 요약 보고서가 생성된다. 트럭운송 회사를 위한 할당 정보(예를 들어, SSCO 승인 및 홀드)가 필드들(3818, 3820, 3822 및 3824)에 도시되어 있으며, 따라서, 특정 시간 프레임 내에 트럭운송 회사의 가용성 및 위치의 추적을 유지하기 위한 사용자를 위한 도구를 제공한다. 여기서, 사용자는 또한 하나 이상의 드롭다운 메뉴 및/또는 하나 이상의 편집 가능한 필드들을 통해 트럭운송 회사에 관한 정보를 관찰 및 편집할 수 있다.
도 38b는 샘플 새로운 트럭운송업자 관리 인터페이스 생성의 예시도를 도시한다. 트럭운송 회사가 데이터베이스에 이전에 입력되어있지 않을 때, 사용자는 도 38b에 도시된 도구를 통해 트럭운송의 새로운 기록을 생성할 수 있다. 위치 필드들 3810 및 3812는 전화, 팩스 및 이메일 접촉정보와 회사의 명칭 및 주소 같은 정보를 입력하기 위해 사용될 수 있다. 트럭운송 회사를 위한 할당 정보(예를 들어, SSCO 승인 및 홀드)도 입력될 수 있다.
도 38c는 샘플 트럭운송 회사 보고서 페이지의 예시적 스크린샷을 도시한다. 여기서, 사용자는 SSCO 트럭운송업자 코드(예를 들어, 필드 3818), STC 코드(예를 들어, 필드 3830), SCAC 코드(예를 들어, 필드 3840), 트럭운송업자 명칭(예를 들어, 필드 3850), 제출 및 검토 시간(예를 들어, 필드들 3852, 3854) 및 터미널 상태(예를 들어, 필드 3856)를 사용하여 하나 이상의 트럭운송 회사들의 상태를 질의하거나, 새로운 트럭운송 회사 요청들을 삭제하거나 또는 계류중인 트럭운송업자 코드들을 편집할 수 있다.
도 39a는 샘플 관리 사용자 검색 페이지의 예시도를 도시한다. 여기서, 관리 사용자는 이름(예를 들어, 필드 3910), 회사 유형(예를 들어, 필드 3912), 장소, 상선 회사 또는 명칭으로 사용자를 문의하거나, 사용자를 삭제 또는 로킹하거나, 사용자의 권한 및 허용사항을 편집할 수 있다. 로그인 명칭(예를 들어, 필드 3914), 사용자 명칭(예를 들어, 필드 3916, 3918) 및 사용자의 접촉 정보(예를 들어, 필드 3920)를 포함하는 관련 결과들이 도시된다.
도 39b는 샘플 관리 사용자 권한 페이지의 예시적 도면을 도시한다. 여기서, 관리 사용자들은 필드들(3930, 3932, 3934, 3936, 3938, 3940, 3942 및 3944)같은 다양한 모듈들 및 필드들에 대한 사용자 권한을 할당할 수 있다. 사용자들은 전체 권한, 진행 권한, 읽기 전용 권한을 가지거나, 특정 기능들에 대한 어떠한 권한들도 갖지 않을 수 있다. 특히, 편집 가능한 필드들은 관리자 기능들에 의해 제어된다. 예로서, 대부분의 사용자들은 관공서 승인, 예로서, 관세 및 USDA 상태 등을 필요로 하는 정보를 편집하는 권한을 갖지 않는다. 데이터 입력의 정확성은 다수의 레벨들로 허가를 부여하여 보증된다. 몇몇 실시예들에서, 최종 사용자는 사용자가 그에 대한 친숙한 지식을 가지는 필드들만을 편집할 권한이 보증된다. 예로서, 장비 제어 SSCO 대표자는 그 SSCO로 사업을 수행하는 트럭운송 회사들을 위한 정보를 포함하는 하나 이상의 필드들을 편집할 권한이 보증된다. 부킹 부서 SSCO 사용자는 다른 한편 출발 위치, 목적지, 상품 유형 및 양 등에 관한 것들 같은 부킹의 정보를 포함하는 하나 이상의 필드들을 편집할 권한들이 보증된다. 몇몇 실시예들에서, 입력된 데이터의 정확도는 관련 정보-예로서, 수송 회사의 데이터베이스, 컨테이너들의 데이터베이스, 위험 상품들의 데이터베이스, 트럭운송 회사들의 데이터베이스 등을 포함하는 데이터베이스에 대한 백엔드 에러 점검 메커니즘에 의해 추가로 확인된다. 몇몇 실시예들에서, 사용자는 에러가 식별되는 경우 통지를 수신한다. 몇몇 실시예들에서, 사용자는 정확도를 보증하기 위해 데이터 엔트리들을 고찰하도록 권한들을 승인받는다. 몇몇 실시예들에서, 사용자는 데이터 엔트리들에서 에러들을 수정할 권한들을 승인받는다.
도 40은 샘플 화물차 반입 컨테이너 페이지의 예시도를 도시한다. 여기서, 사용자는 추후 수입품으로서 픽업되도록 화물차 반입으로서 터미널에 대한 허용을 위해 컨테이너를 지정할 수 있다. 대안적으로, 사용자는 이미 수취된 이러한 컨테이너들을 문의하고 공지된 홀드들을 적용함으로써 그 상태를 편집할 수 있다. 역시, 사용자는 컨테이너 필드 4010을 사용하여 컨테이너들을 검색할 수 있다. 대응 SSCO 정보(예를 들어, 필드 4022), 위험 정보(예를 들어, 필드 4024), 수송 트럭운송 정보(예를 들어, 필드 4026), 관세 상태(예를 들어, 필드 4028) 등을 나열하는 하나 이상의 컨테이너들에 관한 정보가 필드 4020에 포함된다. 수송 트럭운송업자 필드(4026)에 관하여, 이 시스템은 각각의 또는 선택된 트럭운송 회사 코드들을 위한 링크 버튼을 제공할 수 있다. 사용자가 링크를 선택하는 경우, 시스템은 위에서 도 38a에서 발견되는 것 같은 트럭운송업자 정비 스크린으로 네비게이팅할 수 있다. 그리고, 몇몇 실시예들은 시스템이 제출이 저장되기 이전에 특정 필드를 채울 수 있게 한다. 예로서, 사용자가 "위험 화물"(4024) 선택을 선택하기를 잊거나 실패하는 경우, 시스템은 이를 적색으로 부각시키고 사용자에게 더 상세히 채울 것을 요청할 수 있다. 추가적으로, 사용자는 또한 하나 이상의 드롭다운 메뉴 및/또는 하나 이상의 편집 가능한 필드들을 통해 컨테이너에 관한 정보를 관찰 및 편집할 수 있다.
추가적 서비스들/서비스 층 양태들
상술한 기초적 아키텍처 특징들에 추가로, 서비스 층은 여기서는 TOS 인터페이스/터미널 운영 시스템과 연계될 수 있는 다양한 예시적 구성요소들을 위한/다양한 예시적 구성요소들, 예를 들어, 그에 관하여 다양한 실시예들이 여기서 통신될 수 있는 M21 같은 다른 웹 애플리케이션들 및 터미널 운영 시스템, 사이의 통합을 위한 베이스라인으로서 기능할 수 있다. 여기서, 예로서, 첨부 A, C 및 D와 여기에서 CD 상에 제공된 컴퓨터 프로그램 코드는 다양한 기능 및 정보가 서비스 층을 통해 또는 서비스 층 전반에 걸쳐 웹 애플리케이션들 및 M21 사이에서 전달 및 프로세싱되는 방식을 보여준다. 예로서, 이러한 특징들을 예시하는 것을 돕는 M21과 연계된 컴퓨터 프로그램 코드가 첨부된 CD의 "TOS 데이터 액세스 라이브러리"에 포함되어 있다.
장비 상호교환 보고서(EIR) 특징들에 관하여, EIR의 생성은 데이터 및 사업 로직 집약적 프로세스이다. 다수의 데이터는 M21 데이터베이스 및 아카이브 데이터베이스(들) 같은 하나 이상의 TOS 데이터베이스들로부터 수집된다. 이들 데이터는 다양한 프로세스에서 조절되고, 인쇄된 포맷으로 제시되도록 사업 로직에 적용된다. 또한, 다른 시스템들 또는 웹 애플리케이션들의 게이트 활동 모듈들은 이러한 프로세스들을 구현하고 이들을 별개로 유지할 수 있다. 몇몇 실시예들에서, 리포트 서비스 기능은 제시를 위해 사용되는 EIR을 위한 모든 데이터를 제공하지만, 사업 로직 및 데이터 액세스 프로세스들의 세부사항들은 은폐할 수 있다. 이는 애플리케이션의 유지성 및 확장성을 향상시킨다.
실시예 및 다른 차이점들
본 발명의 혁신들은 하나 이상의 구성요소들, 시스템들, 서버들, 기기들, 회로들, 다른 서브구성요소들을 통해 구현되거나 이러한 요소들 사이에서 분산될 수 있다. 시스템으로서 구현될 때, 이러한 시스템은 특히 범용 목적 컴퓨터들에서 발견되는 소프트웨어 모듈들, 범용 목적 CPU, RAM 등 및 더 특수화된 연한 장치들에서 발견되는 FPGA 및또는 ASIC 같은 구성요소들을 포함할 수 있다. 본 혁신들이 서버 상에 존재하는 실시예에서, 이러한 서버는 범용 목적 컴퓨터들에서 발견되는 것들 같은 CPU, RAM 등 같은 구성요소들을 포함하거나 수반할 수 있다.
추가적으로, 본 혁신들은 상술한 것을 초월하여, 이종의 또는 전체적으로 다른 소프트웨어, 하드웨어 및/또는 펌웨어 구성요소들을 갖는 실시예들을 통해 달성될 수 있다. 본 혁신들, 예로서, 본 발명의 혁신들의 양태들을 구현하는 또는 그와 연계된 이러한 다른 구성요소들(예를 들어, 소프트웨어, 프로세싱 구성요소 등) 및/또는 컴퓨터 판독가능 매체는 다수의 범용 목적 또는 특수 목적 연산 시스템 또는 구성들에 준하여 구현될 수 있다. 본 발명의 혁신들과 함께 사용하기에 적합할 수 있는 다양한 예시적 연산 시스템들, 환경들 및/또는 구성들은 라우팅/연결 구성요소들, 핸드헬드 또는 랩탑 디바이스들, 마이크로프로세서 시스템들, 마이크로프로세서 기반 시스템들, 셋탑 박스들, 소비자 전자장치, 네트워크 PC, 다른 기존 컴퓨터 플랫폼들, 상기 시스템들 또는 장치들 중 하나 이상을 포함하는 분산식 연산 환경들 등 같은 퍼스널 컴퓨터들, 서버들 또는 서버 연산 장치들 상에서 구현되거나 그 내부에 있는 소프트웨어 또는 다른 구성요소들을 포함하지만 그에 한정되지 않는다.
일부 예들에서, 본 발명의 혁신들의 양태들은 예로서, 이러한 구성요소들 또는 회로와 연계되어 실행되는 프로그램 모듈들을 포함하는 로직 및/또는 로직 명령들에 의해 수행되거나 그를 통해 달성될 수 있다. 일반적으로, 프로그램 모듈들은 본 명세서의 특정 명령들을 구현하거나 특정 임무들을 수행하는 루틴들, 프로그램들, 대상체들, 구성요소들, 데이터 구조들 등을 포함할 수 있다. 본 발명은 또한 회로가 통신 버스들, 회로 링크들을 통해 연결되는 분산식 소프트웨어, 컴퓨터 또는 회로 설정들에 관하여 실시될 수도 있다. 분산식 설정들에서, 제어/명령들은 메모리 저장 장치들을 포함하는 로컬 및 원격 컴퓨터 저장 매체 양자 모두로부터 수행될 수 있다.
본 발명의 혁신적 소프트웨어, 회로 및 구성요소들은 컴퓨터 판독가능 매체의 하나 이상의 유형을 포함 및/또는 사용할 수 있다. 컴퓨터 판독가능 매체는 이러한 회로들 및/또는 연산 구성요소들 상에 존재하는, 그와 연계될 수 있는 또는 그에 의해 액세스될 수 있는 임의의 가용 매체일 수 있다. 예로서, 그리고, 비제한적으로, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 다른 매체를 포함할 수 있다. 그러나, 본 명세서의 컴퓨터 판독가능 매체는 일시적 매체를 포함/포괄하지 않는다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령들, 데이터 구조들, 프로그램 모듈들 또는 다른 데이터 같은 정보의 저장을 위한 임의의 방법 또는 기술에서 구현된 휘발성 및 비휘발성, 이동식 및 고정식 매체를 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, 디지털 다용도 디스크(DVD) 또는 다른 광학 저장부, 자기 테이프, 자기 디스크 저장부 또는 다른 자기 저장 장치들 또는 원하는 정보를 저장하기 위해 사용될 수 있고 연산 구성요소에 의해 액세스될 수 있는 다른 광학 매체를 포함하지만 이에 한정되지 않는다. 통신 매체는 일부 비일시적 포맷으로 구현되는, 컴퓨터 판독가능 명령들, 데이터 구조들, 프로그램 모듈들 또는 본 명세서의 기능을 구성하는 다른 데이터를 포함할 수 있다. 또한, 통신 매체는 유선 네트워크 또는 직접 유선 연결 같은 유선 매체 및 음향, RF, 적외선 및 다른 무선 매체 같은 무선 매체를 포함할 수 있다. 상술한 바 중 임의의 것의 조합들도 컴퓨터 판독가능 매체의 범주 내에 포함된다.
본 설명에서, 용어 구성요소, 모듈, 디바이스 등은 다양한 방식으로 구현될 수 있는 임의의 유형의 논리적 또는 기능적 소프트웨어 요소들, 회로들, 블록들 및/또는 프로세스들을 언급할 수 있다. 예로서, 다양한 회로 및/또는 블록들의 기능들은 임의의 다른 수의 모듈들로 서로 조합될 수 있다. 각 모듈은 본 발명의 혁신들의 기능들을 구현하기 위해 중앙 프로세싱 유닛에 의해 판독되는 유형의 메모리(예를 들어, 임의 접근 메모리, 판독 전용 메모리, CD-ROM 메모리, 하드 디스크 드라이브 등) 상에 저장된 소프트웨어 프로그램으로서 구현될 수도 있다. 또는, 모듈들은 전송을 통해 프로세싱/그래픽 하드웨어에 또는 범용 목적 컴퓨터에 전송된 프로그래밍 명령들을 포함할 수 있다. 또한, 모듈들은 본 발명의 혁신들에 의해 포함되는 기능들을 구현하는 하드웨어 로직 회로로서 구현될 수 있다. 마지막으로, 모듈들은 특수 목적 명령들(SIMD 명령들), 현장 프로그램가능 로직 어레이들 또는 이들이나 원하는 레벨 성능 및 비용을 제공하는 다른 적절한 요소들의 혼합들을 사용하여 구현될 수 있다.
본 명세서에 설명된 바와 같이, 본 발명에 준하는 특징들은 컴퓨터-하드웨어, 소프트웨어 및/또는 펌웨어를 통해 구현될 수 있다. 예로서, 본 명세서에 개시된 시스템들 및 방법들은 예로서, 또한 데이터베이스, 디지털 전자 회로, 펌웨어, 소프트웨어 또는 이들의 조합을 포함하는 컴퓨터 같은 데이터 프로세서를 포함하는 다양한 형태들로 구현될 수 있다. 또한, 개시된 실시예들 중 일부를 설명하지만, 본 발명의 혁신들에 준하는 특정 하드웨어 구성요소들, 시스템들 및 방법들은 하드웨어, 소프트웨어 및/또는 펌웨어의 임의의 조합으로 구현될 수 있다. 또한, 본 발명의 혁신들의 원리들 및 다른 양태들과 상술한 특징들은 다양한 환경들에서 구현될 수 있다. 이러한 환경들 및 관련 애플리케이션들은 본 발명에 따른 다양한 루틴들, 프로세스들 및/또는 동작들을 수행하기 위해 특수하게 구성될 수 있거나, 이들은 필요한 기능을 제공하기 위해 코드에 의해 재구성되거나 선택적으로 활성화되는 범용 목적 컴퓨터 또는 연산 플랫폼을 포함할 수 있다. 본 명세서에 개시된 프로세스들은 고유하게 임의의 특정 컴퓨터, 네트워크, 아키텍처, 환경 또는 다른 장치에 관련되지 않으며, 하드웨어, 소프트웨어 및/또는 펌웨어의 적절한 조합에 의해 구현될 수 있다. 예로서, 다양한 범용 목적 기계가 본 발명의 교시들에 따라 기록된 프로그램들과 함께 사용될 수 있거나 필요한 방법들 및 기술들을 수행하기 위해 특수화된 장치 또는 시스템을 구성하기에 더욱 편리할 수 있다.
로직 같은 본 명세서에 설명된 방법 및 시스템의 양태들은 또한 현장 프로그램가능한 게이트 어레이들("FPGA"), 프로그램가능한 어레이 로직("PAL") 디바이스들, 전기적으로 프로그램가능한 로직 및 메모리 디바이스들 및 표준 셀-기반 디바이스들과 용례 특정 집적 회로들 같은 프로그램가능한 로직 디바이스들("PLD")을 포함하는 다양한 회로 중 임의의 것으로 프로그램된 기능으로서 구현될 수도 있다. 양태들을 구현하기 위한 일부 다른 가능성들은 메모리 디바이스들, 메모리를 갖는 마이크로콘트롤러들(EEPROM 같은), 매립형 마이크로프로세서들, 펌웨어, 소프트웨어 등을 포함한다. 또한, 양태들은 소프트웨어 기반 회로 에뮬레이션, 이산 로직(순차 및 조합), 맞춤형 디바이스들, 퍼지(뉴럴) 로직, 퀀텀 디바이스들 및 상술한 장치 유형들 중 임의의 것의 혼성물들을 갖는 마이크로프로세서들에서 구현될 수 있다. 기저 디바이스 기술들이 다양한 구성요소 유형들로, 예를 들어, 금속 산화물 반도체 전계 효과 트랜지스터("MOSFET") 기술 같은 상보형 금속 산화물 반도체("CMOS"), 바이폴라 기술 같은 에미터-결합 로직("ECL"), 폴리머 기술들(예를 들어, 실리콘-컨주게이트 폴리머 및 금속-컨주게이트 폴리머 금속 구조들), 혼합형 아날로그 및 디지털 등으로 제공될 수 있다.
또한, 본 명세서에 개시된 다양한 로직 및/또는 기능들은 그 거동, 레지스터 전달, 로직 구성요소 및/또는 다른 특성들에 관하여 다양한 기계 판독가능 또는 컴퓨터 판독가능 매체에 구현된 명령들 및/또는 데이터로서 및/또는 하드웨어, 펌웨어의 임의의 다수의 조합을 사용하여 가능화될 수 있다는 것을 인지하여야 한다. 본 명세서에서 컴퓨터 판독가능 매체가 일시적 매체를 포함/수반하지 않지만, 이러한 포맷된 데이터 및/또는 명령들이 구현될 수 있는 컴퓨터 판독가능 매체는 다양한 형태들의 비휘발성 저장 매체(예를 들어, 광학, 자기 또는 반도체 저장 매체)를 포함한다.
문맥상 명시적으로 달리 요구되지 않는 한, 본 설명 전반에 걸쳐, 단어 "포함하다", "포함하는" 등은 전적이거나 배제적인 개념에 반대되는 포함적 개념, 다시 말하면, "포함하지만 이에 한정되지 않는"의 개념으로 해석되어야 한다. 또한, 단수 또는 복수의 수를 사용하는 단어들은 복수 또는 단수의 수 각각을 포함한다. 추가적으로, 단어 "본 명세서에서", "이하에", "상술한", "후술된" 및 유사한 의미의 단어들은 본 출원에서 전체를 나타내고 본 출원의 임의의 특정 부분들을 나타내는 것이 아니다. 단어 "또는"이 둘 이상의 아이템의 목록에 관하여 사용될 때, 이 단어는 이 단어의 이하의 해석들 모두를 포함한다: 목록 내의 아이템들 중 임의의 것, 목록 내의 아이템들 모두, 그리고, 목록 내의 아이템들의 임의의 조합.
비록, 본 발명의 특정한 현재 양호한 실시예들이 본 명세서에 특정하게 설명되었지만, 본 명세서에 예시 및 설명된 다양한 실시예들의 변형들 및 변경들이 본 발명의 개념 및 범주로부터 벗어나지 않고 이루어질 수 있다는 것을 본 발명이 속하는 본 기술 분야의 숙련자들은 명백히 알 수 있을 것이다. 따라서, 본 발명은 단지 적용가능한 법 규칙에 의해 요구되는 범위에만 한정되는 것을 의도한다.
부록 1
1. RepositoryFactory
저장소는 생성자(constructor) 파라미터들로서 정의된 의존성들을 갖는 단일 생성자를 가질 수 있다. 저장소는 어떻게 이들 구성요소들이 생성되는지에 대해 반드시 인식하고 있을 필요는 없을 수도 있고, 저장소는 어느 구현 및/또는 기능성이 생성자 내로 주입되어야 하는지를 인지할 수도 있다.
저장소 유형은 공급된 TOS 유형에 기초하여 해결될 수 있다. 이 해결책을 용이하게 하기 위해, 저장소 팩토리, 예를 들어 "IRepositoryFactory"가 사용될 수 있다. 저장소 팩토리의 구현은 몇몇 조건에 기초하여 적절한 인스턴스를 리턴하는 구성요소를 포함할 수 있다.
public interface IRepositoryFactory
{
TRepository GetRepositoryInstance<TRepository> () where TRepository : class;
}
예를 들어, 디폴트 저장소 팩토리, 예를 들어 "DefaultRepositoryFactory"가 제공될 수 있다. 디폴트 저장소 팩토리는 반영, 헬퍼 속성들 및/또는 규약들의 세트들을 사용하여 저장소 유형들을 해결할 수 있다. 이는 애플리케이션 셧다운까지 공지의 저장소 유형들을 저장하기 위해, 유틸리티 클래스, 예를 들어 "ReflectRepositoryTypeCache" 유틸리티 클래스를 사용할 수 있다.
public class DefaultRepositoryFactory : IRepositoryFactory
{
private static readonly Ref lectedRepositoryTypeCache _repositoryTypeCache = new ReflectedRepositoryTypeCache();
public DefaultRepositoryFactory(IServiceResolver serviceResolver , UserData userData)
{
ServiceResolver = serviceResolver;
CurrentUserData = userData;
}
protected IServiceResolver ServiceResolver { get ; set ; }
public UserData CurrentUserData { get; protected set; }
public string TosType
{
get
{
return tosType;
}
}
public object GetRepositoryInstance(Type interfaceType)
{
// Ensure the type-cache is initialized for given TOS type
_repositoryTypeCache.EnsurelnitializedFor(TosType);
// Get implementation type
var implementationType = _repositoryTypeCache
.GetRepositoryImplementationType(interfaceType, TosType);
if (implementationType == null)
throw new InvalidOperationException(
"No implementations of " + interfaceType.Name + " found for \" " + TosType + " \" " );
// Resolve instance of obtained type through Service Resolver
return ServiceResolver.GetService(implementationType);
}
public TRepository GetRepositoryInstance<TRepository>() where TRepository : class
{
return GetRepositorylnstance(typeof(TRepository)) as TRepository;
}
}
일단 RepositoryFactory가 인터페이스 유형 및 TOS 유형을 위한 RepositoryTypeCache로부터 구현 유형을 검색하면, 팩토리는 서비스 해결자, 예를 들어 "IServiceResolver"에 질문하여, 인스턴스를 구축할 수 있다. 따라서, 팩토리는 어느 인스턴스 유형이 인스턴스화될지를 규정할 수 있지만, 실제 생성은 IServiceResolver에 위임될 수 있다. 이는 의존성들이 자동으로 구성될 수 있기 때문에 탄력성을 제공할 수 있다.
2. RepositoryTypeCache
DefaultRepositoryFactory는 인스턴스화될 저장소 유형을 해결하기 위한 책임이 있을 수 있다. 해결책은 공급된 터미널 TOS 유형에 기초할 수 있다. 실제 유형 발견을 위해, 규약들 및 헬퍼 속성들의 세트가 사용될 수 있다.
내부적으로, 반영은
· IoC-컨테이너를 갖고 구성된 인터페이스들을 구현하고;
· "smartWeb" 이름공간 내부에 포함되고;
· 규정된 선택적 TOS-유형 속성을 갖고(선택적) 또는 (어떠한 TOS-유형 속성도 없는 경우에) TOS-유형 후에 명명된 서브-이름공간에 배치되어 있는
유형들을 발견하는데 사용될 수 있다.
속성 또는 이름공간을 사용하기 위해, 팩토리는 규정된 TosTypeAttribute가 존재하는지 여부를 확인하도록 시도할 수 있다. 어떠한 속성도 존재하지 않으면, 이름공간에 의해 주어진 TOS 유형에 관해 해결하려고 시도할 수 있다. 이름공간-규약은 강력한 규약일 수도 있어, 따라서 속성은 특정 경우들에만 사용될 수 있다.
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = true)]
public class TosTypeAttribute : Attribute
{
public TosTypeAttribute(string tosType)
{
TosType = tosType;
}
public string TosType { get; protected set; }
}
예로서, TosTypeAttribute에 대한 2개의 편리한 서브클래스들: TOSlAttribute 및 T0S2Attribute를 고려한다. 이들은 [TOS1] 또는 [TOS2]를 허용하기 위한 숏컷들일 수 있다.
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = true)]
public class TOS1Attribute : TosTypeAttribute
{
public TOSlAttribute() : base( "T0S1" ) { }
}
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = true)]
public class T0S2Attribute : TosTypeAttribute
{
public T0S2Attribute() : base( "TOS2" ) { }
}
TOS1을 위한 부킹 저장소는 속성으로 마킹되거나 이름공간 내에 배치될 수 있다(또는 양자 모두). 본 예에서, 이름공간이 사용된다:
[TOS1]
public class BookingRepository : iBookingRepository { ... }
- or -
namespace smartWeb.Export.Repositories.TOS1
{
public class BookingRepository : IBookingRepository { ... }
}
유형들은 발견될 때 ReflectedRepositoryTypeCache에 의해 스레드-안전 사전에 저장될 수 있다. 이는 모든 요청에 대한 실행시간 반영을 위한 필요성을 감소시키거나 제거할 수 있고, 이에 의해 시스템 성능을 향상시킬 수 있다. 지연 로딩(lazy loading) 기술이 몇몇 실시예들에서 TOS-유형당 기초로 레버리징될 수 있지만, 레버리징을 위한 다른 기술들 및/또는 기초들이 사용될 수 있다.
internal sealed class ReflectedRepositoryTypeCache
{
private volatile Dictionary<string, Dictionary<Type, Type>> _cache = new Dictionary<string, Dictionary<Type, Type>>();
private static readonly object _locker = new object ();
public IEnumerable<Assembly> Assemblies
{
get { return AppDomain.CurrentDomain.GetAssemblies() .Where(a => a.FullName.StartsWith(" smartweb")); }
}
public IEnumerable<Type> LoadedTypes
{
get { return Assemblies.SelectMany(a => a.GetTypes()); }
}
public Type GetRepositoryImplementationType(Type interfaceType, string tosType)
{
if ( !_cache.ContainsKey(tosType))
return null;
Dictionary<Type, Type> typeDict;
if ( !_cache.TryGetValue(tosType, out typeDict) || typeDict == null)
return null;
if ( !typeDict.ContainsKey(interfaceType))
return null;
Type implementationType;
if ( !typeDict.TryGetValue(interfaceType, out implementation Type))
return null;
return implementationType;
}
public void EnsureInitializedFor(string tosType)
{
if (!_cache.ContainsKey(tosType))
{
lock (_locker)
{
if (!_cache.ContainsKey(tosType))
{
Ensurelnitializedlnternal(tosType);
}
}
}
}
public bool IsRepositoryInterface(Type t)
{
return t != null
&& t.IsInterface
&& t.IsPublic
&& t.Name.StartsWith("I", StringComparison.OrdinalIgnore Case);
&& t.Name.EndsWith("Repository", StringComparison.Ordinal IgnoreCase);
}
public bool IsRepositoryImplementation(Type t)
{
return t != null
&& t.IsClass
&& !t.IsAbstract
&& t.IsPublic
&& t.Name.EndsWith("Repository", StringComparison.Ordinal IgnoreCase);
}
public bool IsImplementationOf(Type interfaceType, Type t)
{
return t != null
&& interfaceType != null
&& interfaceType.IsAssignableFrom(t);
}
public bool IsTosTypeAttributeMatch(Type t, string tosType)
{
var tosTypeAttr = t.GetCustomAttributes(typeof(TosTypeAttri bute),true).FirstOrDefault() as TosTypeAttribute;
return tosTypeAttr != null && tosTypeAttr.TosType.Equals (tosType);
}
public bool IsNamespaceMatch(Type t, string tosType)
{
return t != null
&& ! string.IsNullOrEmpty(t.Namespace)
&& (t.Namespace.EndsWith("." + tosType,
StringComparison.OrdinalIgnoreCase) ||
t. Namespace. IndexOf("." + tosType + ".") >= 0);
}
private void EnsureInitializedInternal(string tosType)
{
var interfaceTypes = LoadedTypes.Where(IsRepositoryInterface) .ToList();
var typeDict = new Dictionary<Type, Type>();
foreach (var ifc in interfaceTypes)
{
var interfaceType = ifc;
var implementationTypes = LoadedTypes
.Where(t =>
IsRepositorylmplementation(t)
&& IsImplementationOf (interfaceType, t)
&& (IsTosTypeAttributeMatch(t,tosType) || IsName spaceMatch(t,tosType))). ToList();
if (implementationTypes.Count == 1)
{
var implementationType = implementationTypes.First();
typeDict.Add(interfaceType, implementationType);
}
else if (implementationTypes.Count > 1)
{
throw new InvalidOperationException(string.Format(
"Ambiguous implementations of {θ} found for
\"{1}\": {2}", interfaceType, tosType,
implementationTypes.Select(s => Environment.NewLine + "[" + s + T)));
}
}
if (typeDict.Count > 0)
_cache.Add(tosType, typeDict );
}
3. ServiceResolver
일반적인 서비스 해결책 문제를 처리하고 의존성 반전 원리를 따르는 능력을 얻기 위해, 서비스 해결자, 예를 들어, "IServiceResolver"가 사용될 수 있다. IServiceResolver는 공급된 유형을 위한 임의의 서비스를 해결할 수 있고[인터페이스 또는 구체성 유형], 그 특정 구현의 임의의 하나가 의존성 주입의 1차 기술인 "생성자 주입"을 수행하는 것이 가능할 수도 있다.
public interface IServiceResolver
{
object GetService(Type serviceType);
IEnumerable<object> GetServices(Type serviceType);
}
IServiceResolver는 몇몇 특정 인프라구조 부분을 표현할 필요는 없다는 것을 주목하라. 몇몇 실시예들에서, 서비스 해결자는 .NET 유형 레벨에서 작업할 수 있다. ServiceResolver는 일반적일 수 있고, 임의의 종류의 프로그램 구성요소들을 해결하는 것이 가능할 수 있다.
public class ServiceResolver
{
private static readonly ServiceResolver _instance = new Service Resolver();
private IServiceResolver _innerResolver = new DefaultService Resolver();
public static IServiceResolver Current
{
get { return _instance. lnnerResolver; }
}
public IServiceResolver InnerResolver
{
get { return _innerResolver; }
}
public static void SetResolver(IServiceResolver resolver)
{
_instance.InnerSetResolver(resolver);
}
public void InnerSetResolver(IServiceResolver resolver)
{
if ( resolver == null)
throw new ArgumentNullException( "resolver" );
_innerResolver = resolver;
}
private class DefaultServiceResolver : IServiceResolver
{
public object GetService (Type serviceType)
{
try
{
return Activator.Createlnstance(serviceType);
}
catch
{
return null;
}
}
public IEnumerable<object> GetServices (Type serviceType)
{
return Enumerable.Empty<object>();
}
}
}
프로그램 구성요소들은 구성된 인스턴스들을 이들의 생성자들을 통해 수신할 수 있다. 따라서, 프로그램 구성요소들은 이들의 의존성들을 위한 임의의 인스턴스화 코드를 포함하도록 요구되지 않을 수도 있고, 어디서 이들 인스턴스들이 오는지는 관심이 없을 수도 있다. 이는 함께 커플링하는 것을 감소하거나 제거할 수도 있다. "애플리케이션 아키텍처 허브"가 모든 구성요소들이 상호 접속되는 시스템 내에 중앙 배치로서 기능할 수 있다. 몇몇 실시예들에서, 다양한 구성요소들은 달리 링크되지 않을 수 있다.
4. StructureMap
StructureMap 라이브러리는 IServiceResolver 배후의 "백킹" 기술로서 사용될 수 있다. 이는 몇몇 실시예들에서 IServiceResolver 디자인에 기인하여 StructureMap에 대한 임의의 의존성을 소개하지 않을 수 있다. IServiceResolver의 임의의 다른 구현이 현존하는 코드를 변경하지 않고 용이하게 공급될 수 있다.
저장소 구체성 유형은 레지스트리, 예를 들어 "IoC 컨테이너 레지스트리"에 구성될 수 있다. 컨테이너 레지스트리는 IRepositoryFactory를 위한 구성된 구체성 유형을 인식할 수 있다. ServiceAppRegistry 클래스는 StructureMap을 사용하여 "IoC 컨테이너 레지스트리"이고, 저장소들 및 저장소 랙토리들을 구성하는데 사용된다. 몇몇 실시예들에서, 단지 컨테이너 레지스트리만이 구성된 유형을 인식할 수 있다.
public class ServiceAppRegistry : Registry
{
public ServiceAppRegistry()
{
// Core infrastructure registrations
CoreRegistrations();
// Repositories
// Export
RegisterTerminalRepository<lBookingRepository>();
RegisterTerminalRepository<IBookingOperationRepository>();
RegisterTerminalRepository<IExportContainerRepository>();
RegisterTerminalRepository<ITransshipBookingRepository>();
RegisterTerminalRepository<IPreStageHazardousRepository>();
RegisterTerniinalRepository<IVesselManagerRepository>();
RegisterTerminalRepository<IRailBookingRepository>();
RegisterTerminalRepository<IBookingNonHazardousRepository>();
// Gate
RegisterTerminalRepository<ITruckingCompanyRepository>();
RegisterTerminalRepository<IEIRRepository>();
RegisterTerminalRepository<ITroubleGateRepository>();
// Admin repositories
RegisterAdminRepository<ISiteRepository, SiteRepository>();
RegisterAdminRepository<ISscoRepository, SscoRepository>();
// Services
For<IExportService>().Use<ExportService>();
For<IGateService>(),Use<GateService>();
// Gateway service (only interface is known at design time)
For(typeof(ISuperService)).Use(
new
GatewayServiceTypeFactory().GetImplementationTypeFor<ISuperService>());
}
public void CoreRegistrations()
{
// Default database (resolved based on Terminal ID passed by requestor user)
For<OracleDataService>().Use(c =>
c.GetInstance<UserDataBasedDataServiceFactory>().GetDataService());
// Repository factory (default one resolves instances based on TOS type for user Terminal)
For<IRepositoryFactory>().Use<DefaultRepositoryFactory>();
// Whatever needs the UserData will take it from container
// For<UserData>().Use(() => RequestMessageHeader.Current.To UserData());
For<UserData>().Use(() => new UserData { TerminalId = "PAOH" }); // Mockup (for usage with WCF Test Client)
}
public void RegisterTerminalRepository<TInterface>() where TInterface : class
{
// Every non-admin repository is created by registered factory.
// DefaultRepositoryFactory registered above resolves types
// based on TOS type and uses conventions (attributes and namespaces).
For<TInterface>().Use(c =>
c.GetInstance<IRepository Factory>().GetRepositoryInstance<TInterface> ());
}
public void RegisterAdminRepository<TInterface, TImplementation> ()
where TImplementation : TInterface
{
// This states that for every interface-class registered here as a constructor
// parameter of type OracleDataService we use OracleData Service resolved by
// AdminDataServiceFactory.
For<TInterface>().Use<TImplementation>()
.Ctor<OracleDataService>().Is(c => { return new
AdminDataServiceFactory().GetDataService(); });
}
}
부록 2
상이한 데이터 소스들을 사용하여 상이한 TOS들로부터 부킹 대상체를 구성하기 위해
· TOS1 - 데이터베이스
· TOS2 - 파일 시스템
· TOS3 - API
저장소 내에 비즈니스 대상체를 구성함
1. 데이터 소스에 액세스
저장소가 요청들을 수신할 때, 데이터 소스에 접속할 수 있다. 어떻게 TOS가 외부 시스템과 통합하는지에 따라, 데이터 소스는 데이터베이스, 파일 시스템, API 등일 수 있다. 저장소는 각각의 특정 데이터 소스에 접속하도록 구성될 수 있는데, 이는 통신 프로토콜(들), 데이터 소스의 위치, 인증, 승인 등을 인지할 수 있다는 것을 의미한다.
2. 데이터 판독 및 검색
데이터 소스에 액세스한 후에, 저장소는 단일 또는 다수의 리소스들로부터 데이터를 판독할 수 있다. 데이터를 판독하는데 사용된 방식은 데이터 소스의 유형에 의존할 수 있다. 저장소는 데이터를 판독하기 위해 정확한 방식을 사용할 수 있고, 요청들을 충족시키기 위해 데이터를 검색할 수 있다.
3. 비즈니스 대상체 구성
저장소는 검색된 데이터를 사용하여 비즈니스 대상체(들)를 구성할 수 있다. 데이터 포맷 또는 유형들은 각각의 데이터 소스에 대해 상이할 수 있다. 저장소는 수신된 데이터를 비즈니스 대상체로 변환할 수 있다. 동일한 비즈니스 대상체가 서비스, 비즈니스 및/또는 제시 레이어들에 사용될 수 있지만, 데이터는 이들의 고유의 데이터 소스들에서 상이한 방식들로 저장되거나 포맷?? 있을 수 있다.
부킹, 즉 부킹 대상체를 수반하는 예시적인 프로세싱:
/// Domain entity that represents "Booking" record and contains the logic
/// associated with booking operations.
/// </summary>
[DataContract]
public class Booking
{
private IList<BookingLine> bookingLines = new List<BookingLine>();
private IList<ExportContainer> exportContainers = new List<Export Container>();
/// <summary>
/// Initializes a new instance of the < see cref="Booking"/> class.
/// </summary>
/// < param name=" number">Booking number.</param>
/// <param name="vessel">The <see cref="Vessel"/> booking is created for.</param> public Booking(string number, Vessel vessel)
{
Number = number;
VesselCall = vessel;
}
/// <summary>
/// Initializes a new instance of the <see cref="Booking"/> class.
/// </summary>
/// <param name="number">Booking number.</param>
/// <param name="vessel">The <see cref="Vessel"/> booking is created for.</param>
/// <param name="ssco" >The <see cref="SteamShipCompany"/> booking is created for.</param> public Booking(string number. Vessel vessel, SteamShip Company ssco)
: this(number, vessel)
{
SteamShipCompany = ssco;
}
/// <summary>
/// Gets the main identifier for <see cref="Booking"/>. Often used as surrogate Id key.
/// </summary>
[DataMember]
public string Number { get; private set; }
/// <summary>
/// Gets or sets the <see cref="SteamShipCompany"/> entity associated with <see cref="Booking"/>.
/// </summary>
[DataMember]
public SteamShipCompany SteamShipCompany { get; set; }
/// <summary>
/// Gets the <see cref="Vessel"/> call for a <see cref="Booking"/>.
/// </summary>
[DataMember]
public Vessel VesselCall { get; set; } //Vessel Call need to be updated for CVC process
[DataMember]
public IList<Vessel> Vessels { get; set; }
/// <summary>
/// Gets or sets the name of actual shipper who is going to perform <see cref="Booking"/>.
/// </summary>
[DataMember]
public string Shipper { get; set; }
/// <summary>
/// Gets or sets the short description of cargo to be transported.
/// </summary>
[DataMember]
public string CargoDescription { get; set; }
#region Ports/Discharges
/// <summary>
/// Gets or sets the <see cref="Port"/> of receipt.
/// </summary>
[DataMember]
public Port ReceiptPort { get; set; }
/// <summary>
/// Gets or sets the <see cref=" Port"/> where cargo is loaded.
/// </summary>
[DataMember]
public Port LoadingPort { get; set; }
/// <summary>
/// Gets or sets the <see cref="Port"/> where cargo is discharged.
/// </summary>
/// <seealso cref="FinalDischargePort"/>
[DataMember]
public Port OischargePort { get ; set; }
// Attention ! There is another form property called "Port Of Receipt". What is the difference with this one?
/// <summary>
/// Gets or sets the <see cref="Port"/> where cargo is "finally" discharged
/// (i.e. from this point cargo is not supposed to be transported by sea).
/// </summary>
[DataMember]
public Port FinalDischargePort { get ; set; }
/// <summary>
/// Gets or sets the location of final destination of cargo. It is supposed to be
/// any geographical location, not necessarily a port.
/// </summary>
[DataMember]
public string FinalDestination { get; set; }
#endregion
/// <summary>
/// Gets or sets the desired <see cref=" BookingType"/> that
/// represents the actual <see cref="Booking"/> type which is used to resolve
/// whether the addition information should be provided.
/// </summary>
[DataMember]
public BookingType BookingType { get; set; }
/// <summary>
/// Gets or sets the desired <see cref="BookingServiceInfo"/> that
/// represents an actual service to be provided with a <see cref="Booking"/>.
/// </summary>
[DataMember]
public BookingServicelnfo BookingServicelnfo { get ; set; }
/// <summary>
/// Gets or sets the <see cref="CargoHandlingInstruction"/>
/// to be taken into account while transporting <see c ref="Booking"/> cargo.
/// </summary>
[DataMember]
public CargoHandlinglnstruction Handlinglnstruction { get; set; }
/// <summary>
/// Gets or sets the prefixes by which allowed <see cref="Container"/>s are constrained.
/// </summary>
[DataMember]
public string AllowedPrefixes { get; set; }
/// <summary>
/// Gets or sets a value indicating whether fumigation is required for <see cref="Booking"/> cargo.
/// </summary>
[DataMember]
public bool IsFumigationRequired { get; set; }
/// <summary>
/// Gets or sets a value indicating whether the cargo is declared "hot-hatch".
/// </summary>
[DataMember]
public bool IsHotHatch { get; set; }
/// <summary>
/// Gets or sets a value indicating whether the reefer is required for <see cref="Booking"/>
/// (therefore <see cref="ReeferInfo"/> is required).
/// </summary>
public bool IsReeferRequired
{
get
{
// TODO: Refactor to reuse this "knowledge of codes"
return BookingType ! = null
&& (BookingType.Code == "RE"|| BookingType.Code == "DR");
}
}
/// <summary>
/// Gets or sets a value indicating whether the cargo is declared hazardous
/// (therefore <see cref="HazardousCargoInfo"/> is required).
/// </summary>
public bool IsDeclaredHazardous
{
get
{
// TODO: Refactor to reuse this "knowledge of codes"
return BookingType ! = null
&& (BookingType.Code == "DG"|| BookingType.Code == "DR");
}
}
#region Gate activities
[DataMember]
public bool IsEarlyEmptyRelease { get; set; }
[DataMember]
public bool IsEarlyFullReceipt { get; set; }
/// <summary>
/// Gets or sets a value indicating whether cargo should be left on wheels
/// until loading (?).
/// </summary>
[DataMember]
public bool DoLeaveOnWheels { get; set; }
[DataMember]
public bool IsLateFullReceipt { get; set; }
#endregion
#region TMF/CTP Fee status data
/// <summary>
/// Gets or sets the TMF (Traffic Mitigation Fee) exempt type for <see cref="Booking"/>.
/// </summary>
[DataMember]
public TmfExemptType TmfExemptType { get; set; }
/// <summary>
/// Gets or sets the TMF (Traffic Mitigation Fee) status for <see cref="Booking"/>.
/// </summary>
[DataMember]
public TmfStatus TmfStatus { get; set; }
/// <summary>
/// Gets or sets the status of CTP (Clean Truck Program) fee for <see cref="Booking"/>.
/// </summary>
[DataMember]
public CtpFeeStatus CtpFeeStatus { get; set; }
#endregion
/// <summary>
/// Gets or sets the simple memo field for user keystrokes.
/// </summary>
[DataMember]
public string UserMemo { get; set; }
/// <summary>
/// Gets or sets the simple memo field containing EDI information.
/// </summary>
[DataMember]
public string EdiMemo { get; set; }
/// <summary>
/// Gets or sets the optional <see cref="Common.DataContract.Common. ReeferInfo"/> that describes
/// the reefer options for corresponding container types.
/// </summary>
[DataMember]
public Reeferlnfo Reeferlnfo { get; set; }
/// <summary>
/// Gets or sets the optional <see cref="HazardousCargoInfo"/> objects
/// sequence which describe the hazardous cargo danger levels and options.
/// </summary>
[DataMember]
public IEnumerable<HazardousInfo> HazardousCargoInfo { get; set; }
/// <summary>
/// Gets or sets the date and time <see cref="Booking"/> was last updated.
/// </summary>
[DataMember]
public DateTime? TimeUpdated { get; set; }
/// <summary>
/// Gets or sets the flag to indicate whether both hazardous and non-hazardous containers are allowed on same hazardous booking.
/// </summary>
[DataMember]
public bool IsAllowedMixedHazardousBooking { get; set; }
/// <summary>
/// Gets or sets the flag to indicate whether entry of hazardous data for container is allowed before it reaches the in-gate.
/// </summary>
[DataMember]
public bool IsPrestagedHazardous { get; set; }
/// <summary>
/// Gets or sets the sequence of <see cref="BookingLine"/>s that represent
/// actual containers set in a <see cref="Booking"/>, describing <see
cref="ContainerType"/>,
/// <see cref="ContainerHeight"/>, <see cref="ContainerLength"/ > and other
/// <see cref="Container"/>-related <see cref="Booking"/> options.
/// </summary>
[DataMember]
public IEnumerable<BookingLine> BookingLines
{
get { return bookingLines; }
set { bookingLines = value as IList<BookingLine>; }
}
[DataMember]
public IEnumerable<ExportContainer> ExportContainers
{
get { return exportContainers; }
set { exportContainers = value as IList<ExportContainer>; }
}
/// <summary>
/// Gets or sets the list of <see cref=" ExportContainer"/>s processed for this <see cref ="Booking"/>.
/// </summary>
[DataMember]
public IEnumerable<ExportContainer> Containers { get; set; }
public void AddBookingLine(BookingLine line)
{
bookingLines.Add( line);
}
public void RemoveBookingLine(BookingLine line)
{
bookingLines.Remove(line);
}
public void AddExportContainer(ExportContainer exportContainer)
{
exportContainers.Add(exportContainer);
}
public void RefreshTmfStatus()
{
Tmf Status = Tmf Exempt Type != null ? Tmf Status.CreateFrom(Tmf Exempt Type) : new
TmfStatus(TmfStatus.Hold);
}
}
번호로 부킹 발견 - 데이터 소스로서 오라클 DB를 사용하는 M21 저장소에 대해
/// <summary>
/// Searches the <see cref="Booking"/> by number.
/// </summary>
/// <param name="bookingNumbers">Booking numbers to search by.</param>
/// <returns>The list of <see cref="Booking"/>s with given number if any; empty list otherwise. </returns>
public IEnumerable<Booking> Find(IList<string> bookingNumbers)
{
if (bookingNumbers == null || bookingNumbers. Count == 0) return null;
// Remove SSCOList from params but remember - it will be needed for another query const string SQL_STATEMENT = @"
SELECT
b.booking_no, b.vsl_cd, v.vsl_nm, bp.out_voy, b.call_year, b.call_seq,
b.ptnr_code as ssco_code, ssco.eng_snm as ssco_name, b. shipper_nm, c.cmdt_desc,
b.POR, b.POL, b.FPOD, b.POD, b.FDEST,
b.cargo_type as booking_type_code, bt.gnrl_nm as booking_type_name,
b.booking_service as booking_service_code, bs.gnrl_nm as booking_service_name,
b.handle_instr as handling_instruction_codej hi.gnrl_nm as
handling_instruction_name,
b.fumigate_chk, b.hot_hatch,
b.reefer_service as reefer_type_code ,, rf.gnrl_nm as reefer_type_name, b.genset as genset_required,
b.set_temp as head_temp, b.min_temp as head_min_temp, b.max_temp as head_max_temp,
b.set_temp_tail as tail_temp, b.min_temp_tail as tail_min_temp, b.max_temp_tail as tail_max_temp,
b.vent as vent_open_code, vtn.gnrl_nm as vent_open_name,
b.air_qty,
b.air_qty_unit as air_qty_unit_code, aqu.gnrl_nm as air_qty_unit_name,
b.emty_override_chk as early_empty_release, b.override_flag as early_full_receipt,
b.leave_on_wheels_flag as leave_on_wheels, b.hot_list_flag as late_full_receipt,
b.remarkl, b.remark2,
b.tmf_export_status, b.tmf_export_exempt_type, b.ctp_fee_status,
b.update_time, ssco.prestagedjiazardous, ssco.allow_mixed_hazardous_ booking
FROM tb_berthplan bp, tb_booking b
LEFT JOIN tb_vsl v ON(v.vsl_cd = b.vsl_cd)
LEFT JOIN tb_booking_cmdt c 0N(
NLS_UPPER(c.booking_no) = NLS_UPPER(b.booking_no)
AND c.vsl_cd = b.vsl_cd
AND c.call_year = b.call__year
AND c.call_seq = b.call_seq
AND c.cmdt_seq = '001' )
LEFT JOIN tb_std_ptnr ssco ON(ssco.ptnr_code = b.ptnr_code AND ssco.ptnr_type = 'SHP')
LEFT JOIN tb_gnrl_code bt ON(
bt.gnrl_code = b.cargo_type
AND bt.gnrl_type = 'CAR')
LEFT JOIN tb_gnrl_code rf ON(
rf.gnrl_code = b.reefer_service
AND rf.gnrl_type = 'RES')
LEFT JOIN tb_gnrl_code bs 0N(
bs.gnrl_code = b.booking_service
AND bs.gnrl_type = 'BSV')
LEFT JOIN tb_gnrl_code hi 0N(
hi.gnrl_code = b.handle_instr
AND hi.gnrl_type = 'HND')
LEFT JOIN tb_gnrl_code aqu 0N(
aqu.gnrl_code = b.air_qty_unit
AND aqu.gnrl_type = 'AQU')
LEFT JOIN tb_gnrl_code vtn 0N(
vtn.gnrl_code = b.vent
AND vtn.gnrl_type = 'VTN')
WHERE
NLS_UPPER(b.booking_no) in ({θ})
AND b. adjustment <> 'D'
AND b.vsl_cd = bp.vsl_cd
AND b.call_year = bp.call_year
AND b.call_seq = bp.call_seq
AND b.vsl_cd = v.vsl_cd
AND b.vsl_cd <> 'DUMY'
ORDER BY b.update_time DESC";
var bookings = Database.SelectQuery(string.Format(SQL_STATEMENT,
bookingNumbers.ToQuotedCsv(true)), CreateBookinglnternal, null). ToList();
foreach (var booking in bookings)
{
booking.HazardousCargoInfo = GetHazardousInfo(booking);
booking.BookingLines = GetBookingLines(booking.Number, booking. VesselCall);
booking.LoadingPort.PrivateCode =
m_lookupRepository.GetPrivatePortCode(booking.SteamShipCompany. Code, booking.LoadingPort.Code);
booking.DischargePort.PrivateCode =
m_lookupRepository.GetPrivatePortCode(booking,SteamShipCompany. Code, booking.DischargePort.Code);
booking.FinalDischargePort.PrivateCode =
m_lookupRepository.GetPrivatePortCode(booking.SteamShipCompany. Code, booking.FinalDischargePort.Code);
booking.ReceiptPort.PrivateCode =
m_lookupRepository.GetPrivatePortCode(booking.SteamShipCompany. Code, booking.ReceiptPort.Code);
// Allowed prefixes
booking.AllowedPrefixes = string.Join(", GetAllowedPrefixes (booking));
}
return bookings;
}
데이터베이스로부터 데이터를 사용하여 부킹 대상체를 구성하는 방법
/// <summary>
/// Helper method that materializes the <see cref="Booking"/> from raw database data.
/// </summary>
/// <param name="record">An <see cref ="IDataRecord"/> containing primary <see cref="Booking"/> data/</param>
/// <returns>The <see cref="Booking'7> instance if possible.</returns>
private static Booking CreateBookingInternal(IDataRecord record)
{
var vesselCall = new Vessel
{
VesselCode = Convert.ToString(record["vsl_cd"]),
Name = Convert.ToString(record["vsl_nm"]),
CallYear = Convert.ToString(record["call_year"]),
CallSequence = Convert.ToString(record["call_seq"]),
OutVoyageNumber = Convert.ToString(record["out_voy"])
};
var ssco = new SteamShipCompany
{
Code = Convert.ToString(record["ssco_code"]),
Name = Convert.ToString(record["ssco_name"])
};
var booking = new Booking(Convert.ToString(record["booking_no"]) , vesselCall, ssco);
// Booking general data
booking.Shipper = Convert.ToString(record["shipper_nm"]);
booking.CargoDescription = Convert.ToString(record["cmdt_desc"])
// Ports/discharge information
booking.ReceiptPort = new Port { Code = Convert.ToString(record ["POR"])};
booking.LoadingPort = new Port { Code = Convert.ToString(record ["POL"])};
booking.DischargePort = new Port { Code = Convert.ToString (record["POD"])};
booking.FinalDischargePort = new Port { Code = Convert.ToString (record["FPOD"])};
booking.FinalOestination = Convert.ToString(record ["FDEST"]);
// Booking properties/options
booking.BookingType = new BookingType
{
Code = Convert.ToString(record["booking_type_code"]),
Name = Convert.ToString(record["booking_type name"])
};
booking.BookingServicelnfo = new BookingServicelnfo
{
Code = Convert.ToString(record["booking_service_code"]),
Name = Convert.ToString(record["booking_service_name"])
};
booking.Handlinglnstruction = new CargoHandlnglnstruction
{
Code = Convert.ToString(record["handling_instruction_ code"]),
Description = Convert.ToString(record["handling_ instruction_name"])
};
booking.IsFumigationRequired = Convert.ToString(record["fumigate _chk"]) == "Y";
booking.IsHotHatch = Convert.ToString(record["hot_hatch"]) == "Y";
// Gate activities
booking.IsEarlyEmptyRelease = Convert.ToString(record["early_ empty_release"]) == "Y <">;
booking.IsEarlyFullReceipt = Convert.ToString(record["early_ full_receipt"]) == "Y";
booking.DoLeaveOnWheels = Convert.ToString(record["leave_on_ wheels"]) == "Y";
booking.IsLateFullReceipt = Convert.ToString(record["late_full_ receipt" ] ) == "Y";
// TMF/CTP statuses
booking.TmfExemptType = new
TmfExemptType(Convert.ToString(record["tmf_export_exempt_type"] ));
booking.TmfStatus = new TmfStatus(Convert.ToString(record["tmf_ export_status"]));
booking.CtpFeeStatus = new
CtpFeeStatus(Convert.ToString(record["ctp_fee_status"]));
// Reefer information
if (booking.BookingType.Code == "RE" || booking.BookingType.Code == "DR")
{
// To extract the scale
var originalHeadTemperature = Convert.ToString(record ["head_temp"]);
var originalTailTemperature = Convert.ToString(record ["tail_temp"]);
booking.Reeferlnfo = new Reeferlnfo
{
ReeferType = new ReeferType
{
Code = Convert.ToString(record["reefer_type_ code"]),
Name = Convert.ToString(record["reefer_type_ name"])
},
IsGensetRequired = Convert.ToString(record["genset_ required"]) == "Y",
HeadTetnperature = FormatReeferTempForEntity (originalHeadTemperature),
HeadMaxTemperature =
FormatReeferTempForEntity(Convert.ToString(record ["head_max_temp"])),
HeadMinTemperature =
FormatReeferTempForEntit(Convert.ToStrin(record ["head_min_temp"])),
TailTemperature = FormatReeferTempForEntity (originalTailTemperature),
TailMaxTemperature =
FormatReeferTempForEntity(Convert.ToString(record ["tail_max_temp"])),
TailMinTemperature =
Format ReeferTempForEntity(Convert.ToString(record ["tail_min_temp"]))
};
var airQuantityStr = Convert.ToString(record["air_qty"]);
booking.Reeferlnfo.AirExchangeQuantity
= ! string.IsNullOrEmpt(airQuantityStr)
? airQuantitySt.ToValue<int>()
: (int?) null;
// Set reefer temp scales (based on HeadTemperature and TailTemperature properties)
booking.Reeferlnfo.HeadScale = originalHeadTemperature. EndsWith("C")
? ReeferScale.Celsius
: ReeferScale.Fahrenheit;
booking.Reeerlnfo.TailScale = originalTailTemperature. EndsWith("C")
? ReeferScale.Celsius
: ReeferScale.Fahrenheit;
// Vent percent open setting
var ventPercentOpenCode = Convert.ToString(record["vent_ open_code"]);
if (!string.IsNullOrEitipty(ventPercentOpenCode))
{
var ventPercentOpenName = Convert.ToString(record ["vent_open_name"]);
booking.ReeferInfo.VentPercentOpen =
new VentPercentOpenSetting
{
Code = ventPercentOpenCode,
Name = !string.IsNullOrEmpty(ventPercent OpenName) ?
ventPercentOpenName : ventPercentOpenCode
};
}
// Air quantity unit
var airQuanityUnitCode = Convert.ToString(record["air_qty _unit_code"]);
if (!string.IsNullOrEmpty(airQuanityUnitCode))
{
var airQuantityName = Convert.ToString(record["air_ qty_unit_name"]);
booking.Reeferlnfo.AirQuantityUnit =
new AirQuantityUnit
{
Code = airQuanityUnitCode,
Name = !string.IsNullOrEmpty(airQuantity Name) ?
airQuantityName : airQuanityUnitCode
};
}
}
booking.UserMemo = Convert.ToString(record["remarkl"]);
booking.EdiMemo = Convert.ToString(record["remark2"]);
// Time updated
booking.TimeUpdated =
Convert.ToString(record["update_time"]).ToNullableDateTime ("yyyyMMddHHmmss", "yyyyMMddHHmm");
booking.IsAllowedMixedHazardousBooking =
record["allow_mixed_hazardous_booking"].ToValue<string>() == DomainConstants.YES;
booking.IsPrestagedHazardous = record["prestaged_hazardous"]. ToValue<string>() == DomainConstants.YES;
return booking;
}

Claims (218)

  1. 터미널 운영 시스템들을 수반하는 정보 프로세싱 방법으로서,
    터미널 운영 시스템 관리 기능성을 포함하는 인터페이스의 표시를 위한 정보를 사용자에 제공하는 정보 제공 단계로서, 상기 정보는 부킹, 취급 및/또는 컨테이너 정보를 포함하는 제 1 정보를 포함하는, 상기 정보 제공 단계;
    상기 터미널 운영 시스템 관리 기능성을 관리하기 위해, 상기 인터페이스를 거쳐 수신된, 입력에 관련된 정보를 프로세싱하는 단계;
    상기 시스템 내에 그리고/또는 제 3 파티에 명령들을 전송하기 위해 출력/결과를 생성하고 그리고/또는 상기 관리된 터미널 운영 시스템 관리 기능성의 결과의 출력이 생성되도록 상기 시스템 내의 상기 터미널 운영 시스템 관리 기능성을 실행하기 위해 프로세싱을 수행하는 단계를 포함하는 정보 프로세싱 방법.
  2. 제 1 항 또는 임의의 청구항에 있어서, 상기 제 1 정보는 TOS 비의존성(agnostic), 저장소 인스턴스(repository instance) 및/또는 비즈니스 대상체 포맷(business object format)으로 취급으로 그리고/또는 취급을 거쳐 프로세싱된 데이터를 포함하는 정보 프로세싱 방법.
  3. 제 1 항 또는 임의의 청구항에 있어서, 상기 시스템은 사용자가 사용자 구성을 거쳐 상기 제 1 정보 및/또는 제 1 정보 옵션들을 설정하고 그리고/또는 수정할 수 있게 하도록 구성되는 정보 프로세싱 방법.
  4. 제 1 항 또는 임의의 청구항에 있어서,
    TOS 특정 포맷을 설정하는 단계;
    저장소 인스턴스를 설정하는 단계; 및/또는
    상기 제 1 정보와 연계된 비즈니스 대상체를 설정하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  5. 제 1 항 또는 임의의 청구항에 있어서,
    부킹, 취급 및/또는 면제 작용을 결정하기 위해 입력된 상기 제 1 정보 및/또는 제 1 정보 옵션들을 프로세싱하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  6. 제 1 항 또는 임의의 청구항에 있어서, 상기 프로세싱은
    상기 TOS 비의존성 포맷 데이터를 TOS 특정 포맷 데이터로 변환하는 단계;
    저장소 인스턴스를 생성하는 단계; 및/또는
    비즈니스 대상체를 생성하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  7. 제 1 항 또는 임의의 청구항에 있어서,
    상기 시스템 내에 그리고/또는 제 3 파티로 구현을 위해 상기 부킹, 취급 및/또는 면제 작용을 전송하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  8. 터미널 운영 시스템들을 수반하는 정보 프로세싱 방법으로서,
    터미널 운영 시스템 관리 기능성을 포함하는 인터페이스의 표시를 위한 정보를 사용자에 제공하는 정보 제공 단계로서, 상기 정보는 문제 정보를 포함하는 제 1 정보를 포함하는, 상기 정보 제공 단계;
    상기 터미널 운영 시스템 관리 기능성을 관리하기 위해, 상기 인터페이스를 거쳐 수신된, 입력에 관련된 정보를 프로세싱하는 단계;
    상기 시스템 내에 그리고/또는 제 3 파티에 명령들을 전송하기 위해 출력/결과를 생성하고 그리고/또는 상기 터미널 운영 시스템 관리 기능성의 결과의 출력이 생성되도록 상기 시스템 내의 상기 터미널 운영 시스템 관리 기능성을 실행하기 위해 프로세싱을 수행하는 단계를 포함하는 정보 프로세싱 방법.
  9. 제 8 항 또는 임의의 청구항에 있어서, 상기 제 1 정보는 TOS 비의존성, 저장소 인스턴스 및/또는 비즈니스 대상체 포맷으로 취급으로 그리고/또는 취급을 거쳐 프로세싱된 데이터를 포함하는 정보 프로세싱 방법.
  10. 제 8 항 또는 임의의 청구항에 있어서, 상기 시스템은 사용자가 사용자 구성을 거쳐 상기 제 1 정보 및/또는 제 1 정보 옵션들을 설정하고 그리고/또는 수정할 수 있게 하도록 구성되는 정보 프로세싱 방법.
  11. 제 8 항 또는 임의의 청구항에 있어서,
    TOS 특정 포맷을 설정하는 단계;
    저장소 인스턴스를 설정하는 단계; 및/또는
    상기 제 1 정보와 연계된 비즈니스 대상체를 설정하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  12. 제 8 항 또는 임의의 청구항에 있어서,
    문제 해결 작용을 결정하기 위해 입력된 상기 제 1 정보 및/또는 제 1 정보 옵션들을 프로세싱하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  13. 제 8 항 또는 임의의 청구항에 있어서, 상기 프로세싱은
    상기 TOS 비의존성 포맷 데이터를 TOS 특정 포맷 데이터로 변환하는 단계;
    저장소 인스턴스를 생성하는 단계; 및/또는
    비즈니스 대상체를 생성하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  14. 제 8 항 또는 임의의 청구항에 있어서,
    상기 문제 해결 작용을 구현하고 그리고/또는 상기 시스템 내에 그리고/또는 제 3 파티로 구현을 위해 상기 문제 해결 작용을 전송하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  15. 터미널 운영 시스템들을 수반하는 정보 프로세싱 방법으로서,
    터미널 운영 시스템 관리 기능성을 포함하는 인터페이스의 표시를 위한 정보를 사용자에 제공하는 정보 제공 단계로서, 상기 정보는 보고 정보를 포함하는 제 1 정보를 포함하는, 상기 정보 제공 단계;
    상기 터미널 운영 시스템 관리 기능성을 관리하기 위해, 상기 인터페이스를 거쳐 수신된 입력에 관련된 정보를 프로세싱하는 단계;
    상기 시스템 내에 그리고/또는 제 3 파티에 명령들을 전송하기 위해 출력/결과를 생성하고 그리고/또는 상기 터미널 운영 시스템 관리 기능성의 결과의 출력이 생성되도록 상기 시스템 내의 상기 터미널 운영 시스템 관리 기능성을 실행하기 위해 프로세싱을 수행하는 단계를 포함하는 정보 프로세싱 방법.
  16. 제 15 항 또는 임의의 청구항에 있어서, 상기 제 1 정보는 TOS 비의존성, 저장소 인스턴스 및/또는 비즈니스 대상체 포맷으로 취급으로 그리고/또는 취급을 거쳐 프로세싱된 데이터를 포함하는 정보 프로세싱 방법.
  17. 제 15 항 또는 임의의 청구항에 있어서, 상기 시스템은 사용자가 사용자 구성을 거쳐 상기 제 1 정보 및/또는 제 1 정보 옵션들을 뷰잉(view)하고 그리고/또는 수정할 수 있게 하도록 구성되는 정보 프로세싱 방법.
  18. 제 15 항 또는 임의의 청구항에 있어서,
    TOS 특정 포맷을 설정하는 단계;
    저장소 인스턴스를 설정하는 단계; 및/또는
    상기 제 1 정보와 연계된 비즈니스 대상체를 설정하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  19. 제 15 항 또는 임의의 청구항에 있어서,
    상기 제 1 정보 및/또는 제 1 정보 옵션들 중 적어도 일부를 선택하기 위해 상기 입력된 제 1 정보 및/또는 제 1 정보 옵션들을 프로세싱하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  20. 제 15 항 또는 임의의 청구항에 있어서, 상기 프로세싱은
    상기 TOS 비의존성 포맷 데이터를 TOS 특정 포맷 데이터로 변환하는 단계;
    저장소 인스턴스를 생성하는 단계; 및/또는
    비즈니스 대상체를 생성하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  21. 제 15 항 또는 임의의 청구항에 있어서,
    상기 선택된 데이터를 포함하는 보고를 생성하고 그리고/또는 상기 시스템 내에 그리고/또는 제 3 파티로 상기 보고를 전송하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  22. 터미널 운영 시스템들을 수반하는 정보 프로세싱 방법으로서,
    터미널 운영 시스템 관리 기능성을 포함하는 인터페이스의 표시를 위한 정보를 사용자에 제공하는 정보 제공 단계로서, 상기 정보는 해제 정보를 포함하는 제 1 정보를 포함하는, 상기 정보 제공 단계;
    상기 터미널 운영 시스템 관리 기능성을 관리하기 위해, 상기 인터페이스를 거쳐 수신된, 입력에 관련된 정보를 프로세싱하는 단계;
    상기 시스템 내에 그리고/또는 제 3 파티에 명령들을 전송하기 위해 출력/결과를 생성하고 그리고/또는 관리된 상기 터미널 운영 시스템 관리 기능성의 결과의 출력이 생성되도록 상기 시스템 내의 상기 터미널 운영 시스템 관리 기능성을 실행하기 위해 프로세싱을 수행하는 단계를 포함하는 정보 프로세싱 방법.
  23. 제 22 항 또는 임의의 청구항에 있어서, 상기 제 1 정보는 TOS 비의존성, 저장소 인스턴스 및/또는 비즈니스 대상체 포맷으로 취급으로 그리고/또는 취급을 거쳐 프로세싱된 데이터를 포함하는 정보 프로세싱 방법.
  24. 제 22 항 또는 임의의 청구항에 있어서, 상기 시스템은 사용자가 사용자 구성을 거쳐 상기 제 1 정보 및/또는 제 1 정보 옵션들을 설정하고 그리고/또는 수정할 수 있게 하도록 구성되는 정보 프로세싱 방법.
  25. 제 22 항 또는 임의의 청구항에 있어서,
    TOS 특정 포맷을 설정하는 단계;
    저장소 인스턴스를 설정하는 단계; 및/또는
    상기 제 1 정보와 연계된 비즈니스 대상체를 설정하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  26. 제 22 항 또는 임의의 청구항에 있어서,
    상기 제 1 정보에 대한 만료를 결정하기 위해 상기 입력된 제 1 정보 및/또는 제 1 정보 옵션들을 프로세싱하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  27. 제 22 항 또는 임의의 청구항에 있어서, 상기 프로세싱은
    상기 TOS 비의존성 포맷 데이터를 TOS 특정 포맷 데이터로 변환하는 단계;
    저장소 인스턴스를 생성하는 단계; 및/또는
    비즈니스 대상체를 생성하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  28. 제 22 항 또는 임의의 청구항에 있어서,
    상기 만료의 날짜 및/또는 시간이 도달할 때 상기 제 1 정보를 만료하고 그리고/또는 상기 만료를 보고하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  29. 터미널 운영 시스템들을 수반하는 정보 프로세싱 방법으로서,
    터미널 운영 시스템 관리 기능성을 포함하는 인터페이스의 표시를 위한 정보를 사용자에 제공하는 정보 제공 단계로서, 상기 정보는 장비 식별 및/또는 상태 정보를 포함하는 제 1 정보를 포함하는, 상기 정보 제공 단계;
    상기 터미널 운영 시스템 관리 기능성을 관리하기 위해, 상기 인터페이스를 거쳐 수신된, 입력에 관련된 정보를 프로세싱하는 단계;
    상기 시스템 내에 그리고/또는 제 3 파티에 명령들을 전송하기 위해 출력/결과를 생성하고 그리고/또는 관리된 상기 터미널 운영 시스템 관리 기능성의 결과의 출력이 생성되도록 상기 시스템 내의 상기 터미널 운영 시스템 관리 기능성을 실행하기 위해 프로세싱을 수행하는 단계를 포함하는 정보 프로세싱 방법.
  30. 제 29 항 또는 임의의 청구항에 있어서, 상기 제 1 정보는 TOS 비의존성, 저장소 인스턴스 및/또는 비즈니스 대상체 포맷으로 취급으로 그리고/또는 취급을 거쳐 프로세싱된 데이터를 포함하는 정보 프로세싱 방법.
  31. 제 29 항 또는 임의의 청구항에 있어서, 상기 시스템은 사용자가 사용자 구성을 거쳐 상기 제 1 정보 및/또는 제 1 정보 옵션들을 뷰잉하고 그리고/또는 수정할 수 있게 하도록 구성되는 정보 프로세싱 방법.
  32. 제 29 항 또는 임의의 청구항에 있어서,
    TOS 특정 포맷을 설정하는 단계;
    저장소 인스턴스를 설정하는 단계; 및/또는
    상기 제 1 정보와 연계된 비즈니스 대상체를 설정하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  33. 제 29 항 또는 임의의 청구항에 있어서,
    복수의 엔트리들을 포함하는 제 1 정보의 서브세트를 선택하기 위해 입력된 상기 제 1 정보 및/또는 상기 제 1 정보 옵션들을 프로세싱하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  34. 제 29 항 또는 임의의 청구항에 있어서, 상기 프로세싱은
    상기 TOS 비의존성 포맷 데이터를 TOS 특정 포맷 데이터로 변환하는 단계;
    저장소 인스턴스를 생성하는 단계; 및/또는
    비즈니스 대상체를 생성하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  35. 제 29 항 또는 임의의 청구항에 있어서,
    상기 선택된 데이터를 포함하는 보고를 생성하고 그리고/또는 상기 시스템 내에 및/또는 제 3 파티로 상기 보고를 전송하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  36. 터미널 운영 시스템들을 수반하는 정보 프로세싱 방법으로서,
    터미널 운영 시스템 관리 기능성을 포함하는 인터페이스의 표시를 위한 정보를 사용자에 제공하는 정보 제공 단계로서, 상기 정보는 복수의 데이터 대상체들을 포함하는 제 1 정보를 포함하는, 상기 정보 제공 단계;
    상기 터미널 운영 시스템 관리 기능성을 관리하기 위해, 상기 인터페이스를 거쳐 수신된, 입력에 관련된 정보를 프로세싱하는 단계;
    상기 시스템 내에 그리고/또는 제 3 파티에 명령들을 전송하기 위해 출력/결과를 생성하고 그리고/또는 관리된 상기 터미널 운영 시스템 관리 기능성의 결과의 출력이 생성되도록 상기 시스템 내의 상기 터미널 운영 시스템 관리 기능성을 실행하기 위해 프로세싱을 수행하는 단계를 포함하는 정보 프로세싱 방법.
  37. 제 36 항 또는 임의의 청구항에 있어서, 상기 제 1 정보는 TOS 비의존성, 저장소 인스턴스 및/또는 비즈니스 대상체 포맷으로 취급으로 그리고/또는 취급을 거쳐 프로세싱된 데이터를 포함하는 정보 프로세싱 방법.
  38. 제 36 항 또는 임의의 청구항에 있어서, 상기 시스템은 사용자가 사용자 구성을 거쳐 상기 제 1 정보 및/또는 제 1 정보 옵션들을 설정하고 그리고/또는 수정할 수 있게 하도록 구성되는 정보 프로세싱 방법.
  39. 제 36 항 또는 임의의 청구항에 있어서,
    TOS 특정 포맷을 설정하는 단계;
    저장소 인스턴스를 설정하는 단계; 및/또는
    상기 제 1 정보와 연계된 비즈니스 대상체를 설정하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  40. 제 36 항 또는 임의의 청구항에 있어서,
    상기 제 1 정보 내의 데이터 대상체들의 서브세트를 선택하기 위해 입력된 상기 제 1 정보 및/또는 제 1 정보 옵션들을 프로세싱하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  41. 제 36 항 또는 임의의 청구항에 있어서, 상기 프로세싱은
    상기 TOS 비의존성 포맷 데이터를 TOS 특정 포맷 데이터로 변환하는 단계;
    저장소 인스턴스를 생성하는 단계; 및/또는
    비즈니스 대상체를 생성하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  42. 제 36 항 또는 임의의 청구항에 있어서,
    상기 데이터 대상체들의 선택된 서브세트에 변경을 포괄적으로 인가하고 그리고/또는 상기 시스템 내에 및/또는 제 3 파티로 상기 변경을 전송하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  43. 제 1 항 또는 임의의 청구항에 있어서, 부킹 유형의 선택은 취급주의, 일반화물, 번들, 위험, 도어오프, 위험한 리퍼(Reefer), 은폐, 비어 있음, 리퍼 및/또는 표준을 포함하는 선택들을 갖는 드롭다운 메뉴(drop down menu)를 포함하는 정보 프로세싱 방법.
  44. 제 1 항 또는 임의의 청구항에 있어서, 부킹 유형의 선택은 취급주의, 일반화물, 번들, 위험, 도어오프, 위험한 리퍼, 은폐, 비어 있음, 리퍼 및/또는 표준 중 8개 이상을 포함하는 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  45. 제 1 항 또는 임의의 청구항에 있어서, 부킹 유형의 선택은 취급주의, 일반화물, 번들, 위험, 도어오프, 위험한 리퍼, 은폐, 비어 있음, 리퍼 및 표준으로 이루어지는 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  46. 제 1 항 또는 임의의 청구항에 있어서, 부킹 서비스의 선택은 캐리어 유닛, 면, 데이킨 리퍼, 더러운 리퍼, 도어오프, 플랫래크, 식품 등급, 의류, 고 용량, 리스 전용, 메시 스크린 리퍼, 멘탈 스크랩, 및/또는 신규 리퍼를 포함하는 옵션 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  47. 제 1 항 또는 임의의 청구항에 있어서, 부킹 서비스의 선택은 캐리어 유닛, 면, 데이킨 리퍼, 더러운 리퍼, 도어오프, 플랫래크, 식품 등급, 의류, 고 용량, 리스 전용, 메시 스크린 리퍼, 멘탈 스크랩, 및/또는 신규 리퍼 중 13개 이상을 포함하는 옵션 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  48. 제 1 항 또는 임의의 청구항에 있어서, 부킹 서비스의 선택은 캐리어 유닛, 면, 데이킨 리퍼, 더러운 리퍼, 도어오프, 플랫래크, 식품 등급, 의류, 고 용량, 리스 전용, 메시 스크린 리퍼, 멘탈 스크랩 및 신규 리퍼로 이루어진 옵션 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  49. 제 1 항 또는 임의의 청구항에 있어서, 다수의 SSCO들의 선택은 CMA, COS, CSC, CSH, EGS, HAN, MAE, MSC, SLX 및/또는 YML을 포함하는 옵션 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  50. 제 1 항 또는 임의의 청구항에 있어서, 다수의 SSCO들의 선택은 CMA, COS, CSC, CSH, EGS, HAN, MAE, MSC, SLX 및/또는 YML 중 8개 이상을 포함하는 옵션 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  51. 제 1 항 또는 임의의 청구항에 있어서, 다수의 SSCO들의 선택은 CMA, COS, CSC, CSH, EGS, HAN, MAE, MSC, SLX 및 YML로 이루어진 옵션 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  52. 제 1 항 또는 임의의 청구항에 있어서, 취급 명령들의 선택은 액세스 가능한 위험 물질, 식품들로부터 분리, 생활 공간들로부터 분리, 열로부터 분리, 블록 적재, 데크탑 제외, 요구된 훈증, 부유 크레인 취급, GEN, 저온 유지, LAT, 과적 금지, 갑판 위 보호, 갑판 위 적재, 데스크탑 위, 갑판 위 적재, 데크탑 위, 온데크 적재, 오버사이드 전달, 부두 크레인에 의한 오버사이드 전달, 온도 제어, 상단 적재, 언더 데크, 열로부터 분리하여 언더 데크, 언더 데크탑, 수위 아래 및/또는 환기 명령들을 포함하는 옵션 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  53. 제 1 항 또는 임의의 청구항에 있어서, 취급 명령들의 선택은 액세스 가능한 위험 물질, 식품들로부터 분리, 생활 공간들로부터 분리, 열로부터 분리, 블록 적재, 데크탑 제외, 요구된 훈증, 부유 크레인 취급, GEN, 저온 유지, LAT, 과적 금지, 갑판 위 보호, 갑판 위 적재, 데스크탑 위, 갑판 위 적재, 데크탑 위, 온데크 적재, 오버사이드 전달, 부두 크레인에 의한 오버사이드 전달, 온도 제어, 상단 적재, 언더 데크, 열로부터 분리하여 언더 데크, 언더 데크탑, 수위 아래 및/또는 환기 명령들 중 26개 이상을 포함하는 옵션 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  54. 제 1 항 또는 임의의 청구항에 있어서, 취급 명령들의 선택은 액세스 가능한 위험 물질, 식품들로부터 분리, 생활 공간들로부터 분리, 열로부터 분리, 블록 적재, 데크탑 제외, 요구된 훈증, 부유 크레인 취급, GEN, 저온 유지, LAT, 과적 금지, 갑판 위 보호, 갑판 위 적재, 데스크탑 위, 갑판 위 적재, 데크탑 위, 온데크 적재, 오버사이드 전달, 부두 크레인에 의한 오버사이드 전달, 온도 제어, 상단 적재, 언더 데크, 열로부터 분리하여 언더 데크, 언더 데크탑, 수위 아래 및 환기 명령들로 이루어진 옵션 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  55. 제 1 항 또는 임의의 청구항에 있어서, 허용된 접두사들의 틀은 이전에 사용되었던 접두사들만을 입력하도록 사용자에게 안내하기 위해 부가의 프로세싱 기능성을 상기 시스템에 제공하는 명령들을 실행하도록 상기 시스템에 통지하는 정보 프로세싱 방법.
  56. 제 1 항 또는 임의의 청구항에 있어서, 부킹된 컨테이너 유형들 및 크기들의 테이블은 선택될 때, 대략 동일한 높이의 컨테이너들을 수용하도록 부가의 프로세싱 기능성을 상기 시스템에 제공하는 명령들을 실행하기 위해 상기 시스템에 통지하는 플렉스 높이 선택 버튼을 포함하는 정보 프로세싱 방법.
  57. 제 1 항 또는 임의의 청구항에 있어서, 부킹된 컨테이너 유형들 및 크기들의 테이블은 선택될 때, 대략 동일한 높이의 컨테이너들을 수용하도록 부가의 프로세싱 기능성을 상기 시스템에 제공하는 명령들을 실행하기 위해 상기 시스템에 통지하는 플렉스 높이 선택 체크 박스를 포함하는 정보 프로세싱 방법.
  58. 제 1 항 또는 임의의 청구항에 있어서, TMF 면제의 선택은 면제 없음, 레일 면제 및/또는 선박간 면제를 포함하는 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  59. 제 1 항 또는 임의의 청구항에 있어서, TMF 면제의 선택은 면제 없음, 레일 면제 및/또는 선박간 면제 중 3개 이상을 포함하는 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  60. 제 1 항 또는 임의의 청구항에 있어서, TFM 면제의 선택은 면제 없음, 레일 면제 및/또는 선박간 면제로 이루어진 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  61. 제 1 항 또는 임의의 청구항에 있어서, 리퍼 유형의 선택은 제어 분위기, 절연, 맥스텐드, 변경 분위기 및/또는 리퍼를 포함하는 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  62. 제 1 항 또는 임의의 청구항에 있어서, 리퍼 유형의 선택은 제어 분위기, 절연, 맥스텐드, 변경 분위기 및/또는 리퍼 중 5개 이상을 포함하는 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  63. 제 1 항 또는 임의의 청구항에 있어서, TFM 면제의 선택은 제어 분위기, 절연, 맥스텐드, 변경 분위기, 및 리퍼로 이루어진 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  64. 제 1 항 또는 임의의 청구항에 있어서, 서비스 코드의 선택은 대여 종료, 수리들을 위한 반출, 판매용 및/또는 재배치를 포함하는 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  65. 제 1 항 또는 임의의 청구항에 있어서, 서비스 코드의 선택은 대여 종료, 수리들을 위한 반출, 판매용 및/또는 재배치 중 4개 이상을 포함하는 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  66. 제 1 항 또는 임의의 청구항에 있어서, 서비스 코드의 선택은 대여 종료, 수리들을 위한 반출, 판매용 및 재배치로 이루어진 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  67. 제 1 항 또는 임의의 청구항에 있어서, 컨테이너를 위한 작용의 선택은 컨테이너 수취 승인, 선박을 위한 비움, 대여 종료, 재배치, 수리들을 위한 반출, 빈 상태로 반납 불가, 대여 종료 예정, 판매 예정, 수출 화물차 반출, 젠셋 필요, 핫 해치, 및/또는 모든 작용들 삭제를 포함하는 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  68. 제 1 항 또는 임의의 청구항에 있어서, 컨테이너를 위한 작용의 선택은 컨테이너 수취 승인, 선박을 위한 비움, 대여 종료, 재배치, 수리들을 위한 반출, 빈 상태로 반납 불가, 대여 종료 예정, 판매 예정, 수출 화물차 반출, 젠셋 필요, 핫 해치, 및/또는 모든 작용들 삭제 중 13개 이상을 포함하는 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  69. 제 1 항 또는 임의의 청구항에 있어서, 컨테이너를 위한 작용의 선택은 컨테이너 수취 승인, 선박을 위한 비움, 대여 종료, 재배치, 수리들을 위한 반출, 빈 상태로 반납 불가, 대여 종료 예정, 판매 예정, 수출 화물차 반출, 젠셋 필요, 핫 해치, 및/또는 모든 작용들 삭제로 이루어진 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  70. 제 1 항 또는 임의의 청구항에 있어서, 캐리어 카테고리의 선택은 콘택트 SSCO EQ 제어부, FDA 홀드, 어류 및 야생동물, 펜딩 전환 홀드, 기타, 및/또는 미국 해안 경비대를 포함하는 옵션 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  71. 제 1 항 또는 임의의 청구항에 있어서, 캐리어 카테고리의 선택은 콘택트SSCO EQ 제어부, FDA 홀드, 어류 및 야생동물, 펜딩 전환 홀드, 기타, 및/또는 미국 해안 경비대 중 7개 이상을 포함하는 옵션 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  72. 제 1 항 또는 임의의 청구항에 있어서, 캐리어 카테고리의 선택은 콘택트SSCO EQ 제어부, FDA 홀드, 어류 및 야생동물, 펜딩 전환 홀드, 기타 및 미국 해안 경비대로 이루어진 옵션 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  73. 제 1 항 또는 임의의 청구항에 있어서, 화물 트럭커의 선택은 온 홀드 및/또는 만료된 동의를 포함하는 트럭커의 상태를 자동으로 파퓰레이팅(populate)하도록 상기 시스템에 통지하는 자동 파퓰레이션 기능성을 합체하는 트럭킹 회사 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  74. 제 1 항 또는 임의의 청구항에 있어서, 시험 트럭커의 선택은 온 홀드 및/또는 만료된 동의를 포함하는 트럭커의 상태를 자동으로 파퓰레이팅하도록 상기 시스템에 통지하는 자동 파퓰레이션 기능성을 합체하는 트럭킹 회사 선택들을 갖는 드롭다운 메뉴를 포함하는 정보 프로세싱 방법.
  75. 제 1 항 또는 임의의 청구항에 있어서, 화물 트럭커의 선택은 파퓰레이팅될 때 상태의 보정을 위해 사용된 페이지로 리디렉트하기 위한 부가의 프로세싱 기능성을 상기 시스템에 제공하는 명령들을 실행하도록 상기 시스템에 통지하는 틀을 포함하는 정보 프로세싱 방법.
  76. 제 1 항 또는 임의의 청구항에 있어서, 컨테이너 요청을 위한 테이블은 강제 필드들이 완료되지 않을 때, 사용자가 진행하기 전에 적색으로 필드들을 마킹하기 위한 부가의 프로세싱 기능성을 상기 시스템에 제공하는 명령들을 실행하도록 상기 시스템에 통지하는 틀을 포함하는 정보 프로세싱 방법.
  77. 터미널 운영 시스템들을 수반하는 정보를 프로세싱하기 위한 방법으로서,
    터미널 운영 시스템(TOS) 비의존성 포맷으로 프로세싱 요청을 포함하는 데이터를 수신하는 단계;
    상기 데이터와 연계된 TOS 유형을 식별하도록 상기 데이터를 분석하는 단계;
    상기 데이터를 상기 식별된 TOS 유형과 연계된 TOS 포맷으로 변환하는 단계; 및
    상기 TOS 유형과 연계된 TOS 환경에서 상기 TOS 포맷된 데이터를 사용하여 프로세싱을 수행하는 단계를 포함하는 정보 프로세싱 방법.
  78. 터미널 운영 시스템들을 수반하는 정보를 프로세싱하기 위한 방법으로서,
    TOS 유형과 연계된 TOS 포맷으로 데이터를 수신하는 단계;
    상기 데이터를 TOS 비의존성 포맷으로 변환하는 단계; 및
    상기 TOS 비의존성 데이터를 사용하여 프로세싱을 수행하는 단계를 포함하는 정보 프로세싱 방법.
  79. 터미널 운영 시스템들을 수반하는 정보를 프로세싱하기 위한 방법으로서,
    제 1 TOS 유형의 대응 터미널 운영 시스템으로부터 정보 요청에 응답하여 데이터를 검색하는 단계;
    상기 제 1 TOS 유형을 위한 제 1 저장소 인스턴스를 구성하는 단계;
    특정 사이트를 위한 데이터 소스에 액세스하기 위해 상기 제 1 저장소 인스턴스를 사용하여 제 1 데이터를 요청하는 단계;
    상기 제 1 데이터를 사용하여 비즈니스 대상체를 구성하는 단계;
    상기 비즈니스 대상체의 함수로서, 상기 저장소를 거쳐 프로세싱하고 사용자에 표시하기 위해 TOS 비의존성 출력을 제공하는 단계를 포함하는 정보 프로세싱 방법.
  80. 제 77 항 내지 제 79 항 중 어느 한 항 또는 임의의 청구항에 있어서, 상기 데이터와 연계된 TOS 유형을 식별하기 위해 상기 데이터를 분석하는 단계는 상기 요청과 연계된 터미널을 식별하는 단계 및 상기 터미널에 의해 사용된 TOS 유형을 결정하는 단계를 포함하는 정보 프로세싱 방법.
  81. 제 77 항 내지 제 79 항 중 어느 한 항 또는 임의의 청구항에 있어서, 상기 프로세싱을 수행하는 단계는
    제 1 TOS 유형을 위한 제 1 저장소 인스턴스를 인스턴스화하는 단계;
    특정 사이트에 대한 데이터 소스에 액세스하기 위해 상기 제 1 저장소 인스턴스를 사용하여 제 1 데이터를 요청하는 단계;
    상기 제 1 데이터를 사용하여 비즈니스 대상체를 구성하는 단계;
    상기 비즈니스 대상체의 함수로서, 상기 저장소를 거쳐 프로세싱하고 사용자에 표시하기 위해 TOS 비의존성 출력을 제공하는 단계를 포함하는 정보 프로세싱 방법.
  82. 제 77 항 내지 제 79 항 중 어느 한 항 또는 임의의 청구항에 있어서, 상기 데이터를 수신하는 단계는 제 1 비즈니스 대상체를 표현하는 정보를 수신하는 단계를 포함하는 정보 프로세싱 방법.
  83. 제 77 항 내지 제 79 항 중 어느 한 항 또는 임의의 청구항에 있어서, 상기 데이터와 연계된 TOS 유형을 식별하기 위해 상기 데이터를 분석하는 단계는 상기 수신된 데이터에 기초하여 터미널 및 대응 TOS를 결정하는 단계를 포함하는 정보 프로세싱 방법.
  84. 제 77 항 내지 제 79 항 중 어느 한 항 또는 임의의 청구항에 있어서, 상기 데이터를 변환하는 단계는
    저장소 프로세싱을 수행하는 단계를 포함하고, 상기 저장소 프로세싱 수행 단계는
    상기 TOS 포맷에 대응하는 저장소 인스턴스를 구성하는 단계;
    상기 수신된 정보를 TOS 포맷된 제 1 데이터로 프로세싱하는 단계; 및
    상기 제 1 데이터를 상기 TOS 환경에 전송하는 단계를 포함하는 정보 프로세싱 방법.
  85. 제 77 항 또는 제 84 항 또는 임의의 청구항에 있어서, 상기 TOS 환경은 터미널인 정보 프로세싱 방법.
  86. 제 77 항 내지 제 79 항 중 어느 한 항 또는 임의의 청구항에 있어서, 상기 프로세싱을 수행하는 단계는
    상기 TOS 유형에 기초하는 저장소 유형을 결정하는 단계;
    상기 저장소 유형 및 상기 TOS 유형에 기초하여 저장소 인스턴스를 인스턴스화하는 단계를 포함하는 정보 프로세싱 방법.
  87. 제 77 항 내지 제 79 항 또는 제 84 항 중 어느 한 항 또는 임의의 청구항에 있어서,
    상기 프로세싱을 수행하는 단계는
    상기 제 1 데이터에 응답하여 TOS 포맷된 제 2 데이터를 수신하는 단계;
    상기 제 2 데이터를 상기 비즈니스 대상체로 프로세싱하는 단계를 포함하고,
    상기 방법은 상기 수신된 제 2 데이터에 기초하여 추가의 프로세싱을 수행하는 단계를 포함하는 정보 프로세싱 방법.
  88. 제 77 항 내지 제 79 항 또는 제 84 항 중 어느 한 항 또는 임의의 청구항에 있어서, 상기 TOS 환경은 상기 제 1 데이터를 프로세싱하여 제 2 데이터를 생성하는 정보 프로세싱 방법.
  89. 제 77 항 내지 제 79 항 또는 제 84 항 중 어느 한 항 또는 임의의 청구항에 있어서,
    상기 TOS 환경으로부터 상기 제 1 데이터의 수신의 확인을 수신하는 단계를 더 포함하는 정보 프로세싱 방법.
  90. 제 77 항 내지 제 79 항 또는 제 84 항 중 어느 한 항 또는 임의의 청구항에 있어서,
    상기 프로세싱을 수행하는 단계는
    상기 제 1 데이터에 응답하여 TOS 포맷된 제 2 데이터를 수신하는 단계;
    상기 제 2 데이터를 프로세싱하는 단계; 및
    상기 제 2 데이터를 상기 TOS 환경에 전송하는 단계를 더 포함하는 정보 프로세싱 방법.
  91. 제 77 항 내지 제 79 항 또는 제 90 항 중 어느 한 항 또는 임의의 청구항에 있어서,
    상기 TOS 환경으로부터 상기 제 2 데이터의 수신의 확인을 수신하는 단계를 더 포함하는 정보 프로세싱 방법.
  92. 제 77 항 내지 제 79 항 중 어느 한 항 또는 임의의 청구항에 있어서, 상기 데이터는 터미널 식별자 및 요청을 포함하는 정보 프로세싱 방법.
  93. 제 77 항 내지 제 79 항 중 어느 한 항 또는 임의의 청구항에 있어서, 상기 데이터는 사용자 인터페이스를 거쳐 수신되는 정보 프로세싱 방법.
  94. 제 77 항 내지 제 79 항 중 어느 한 항 또는 임의의 청구항에 있어서, 상기 TOS 유형은 복수의 TOS 유형들 중 하나이고, 상기 복수의 TOS 유형들은 TOS 시스템과 인터페이스하도록 구성된 임의의 TOS 시스템 및/또는 임의의 시스템을 포함하는 정보 프로세싱 방법.
  95. 제 77 항 내지 제 79 항 중 어느 한 항 또는 임의의 청구항에 있어서, 복수의 저장소 인스턴스들을 균형화하는 부하를 더 포함하는 정보 프로세싱 방법.
  96. 제 77 항 내지 제 79 항 중 어느 한 항 또는 임의의 청구항에 있어서, 상기 변환 단계는
    저장소 인스턴스의 함수로서 공통 비즈니스 대상체/엔티티/명령 구조의 구성 및 하나 이상의 저장소 인스턴스(들)의 사용 및/또는 생성을 수반하는 변환을 거쳐 제 1 TOS에서 제 1 TOS 포맷의 제 1 컨테이너 데이터를 TOS 비의존성 포맷으로 변환하는 단계를 포함하는 정보 프로세싱 방법.
  97. 제 20 항 또는 임의의 청구항에 있어서, 상기 저장소 인스턴스는 TOS 특정 데이터 소스들로부터 데이터를 얻는 정보 프로세싱 방법.
  98. 제 77 항 내지 제 79 항 중 어느 한 항 또는 임의의 청구항에 있어서, 상기 변환 단계는
    저장소 인스턴스의 함수로서 공통 비즈니스 대상체/엔티티/명령 구조의 구성 및 하나 이상의 저장소 인스턴스(들)의 사용 및/또는 생성을 수반하는 변환을 거쳐 제 2 TOS에서 제 2 TOS 포맷의 제 2 컨테이너 데이터를 TOS 비의존성 포맷으로 변환하는 단계를 포함하고,
    상기 방법은 상기 저장소를 거쳐 원본 포맷으로 출력(들)을 상기 제 1 TOS 및 상기 제 2 TOS에 전송하면서 상기 TOS 비의존성 포맷으로 사용자 인터페이스를 거쳐 프로세싱을 하기 위해 상기 제 1 데이터 및 상기 제 2 데이터를 제공하는 단계를 더 포함하는 정보 프로세싱 방법.
  99. 저장소 정보를 수반하는 TOS 프로세싱을 수행하기 위한 방법으로서,
    저장소 및/또는 TOS 유형을 결정하기 위한 정보를 프로세싱하는 단계;
    상기 저장소 및/또는 TOS 유형과 연계된 캐싱된 속성 데이터를 얻기 위해 프로세싱을 수행하는 단계; 및
    상기 캐싱된 속성 데이터에 기초하여 저장소 인스턴스를 인스턴스화하기 위해 프로세싱을 수행하는 단계를 포함하는 TOS 프로세싱 수행 방법.
  100. 제 99 항 또는 임의의 청구항에 있어서, 상기 저장소 및/또는 상기 TOS 유형을 결정하기 위한 정보를 프로세싱하는 단계는 저장소 팩토리를 거쳐 저장소 유형을 검색하는 단계를 포함하는 TOS 프로세싱 수행 방법.
  101. 제 99 항 또는 임의의 청구항에 있어서, 상기 캐싱된 속성 데이터를 얻기 위해 프로세싱을 수행하는 단계는 상기 캐싱된 속성 데이터와 상기 TOS 유형 사이의 관계를 결정하는 단계를 포함하는 TOS 프로세싱 수행 방법.
  102. 제 101 항 또는 임의의 청구항에 있어서, 상기 캐싱된 속성 데이터와 상기 TOS 유형 사이의 관계를 결정하는 단계는 반영 동작, 헬퍼 속성, 및/또는 관계를 결정하기 위한 규약 중 적어도 하나를 사용하는 단계를 포함하는 TOS 프로세싱 수행 방법.
  103. 제 102 항 또는 임의의 청구항에 있어서, 상기 반영 동작을 사용하는 단계는
    제어 컨테이너의 반전을 갖고 구성된 인터페이스들을 구현하도록 구성되고;
    관심 이름공간 내에 포함되고; 그리고/또는
    관심 TOS 유형 속성을 포함하고 그리고/또는 관심 TOS 유형 후에 명명된 서브-이름공간에 포함되는
    TOS 유형을 발견하는 단계를 포함하는 TOS 프로세싱 수행 방법.
  104. 제 99 항 또는 임의의 청구항에 있어서, 상기 저장소 및/또는 TOS 유형과 연계된 상기 캐싱된 속성 데이터를 생성하는 단계를 추가로 포함하는 TOS 프로세싱 수행 방법.
  105. 제 99 항 또는 임의의 청구항에 있어서, 상기 캐싱된 속성 데이터에 기초하여 상기 저장소 인스턴스를 인스턴스화하기 위해 프로세싱을 수행하는 단계는 상기 저장소 인스턴스를 인스턴스화하기 위해 상기 캐싱된 속성 데이터와 연계된 서비스를 해결하는 단계를 포함하는 TOS 프로세싱 수행 방법.
  106. 제 105 항 또는 임의의 청구항에 있어서, 상기 서비스를 해결하는 단계는
    상기 캐싱된 속성 데이터로부터 저장소 및/또는 TOS 유형을 추출하는 단계; 및
    상기 추출된 저장소 및/또는 TOS 유형과 연계된 서비스를 해결하는 단계를 포함하는 TOS 프로세싱 수행 방법.
  107. 제 99 항 또는 임의의 청구항에 있어서, 상기 인스턴스화된 저장소 인스턴스를 원격 컴퓨터에 송신하기 위해 프로세싱을 수행하는 단계를 추가로 포함하는 TOS 프로세싱 수행 방법.
  108. 제 99 항 또는 임의의 청구항에 있어서, 상기 인스턴스화된 저장소 인스턴스는 TOS 비의존성 인스턴스인 TOS 프로세싱 수행 방법.
  109. 저장소를 초기화하기 위한 방법으로서,
    TOS 유형을 포함하는 데이터를 수신하는 단계;
    상기 TOS 유형에 기초하여 저장소 유형을 결정하는 단계;
    상기 저장소 유형 및 TOS 유형에 기초하여 저장소 인스턴스를 인스턴스화하는 단계를 포함하는 저장소 초기화 방법.
  110. 제 109 항 또는 임의의 청구항에 있어서, 상기 TOS 유형을 결정하는 단계를 추가로 포함하는 저장소 초기화 방법.
  111. 제 110 항 또는 임의의 청구항에 있어서, 상기 TOS 유형을 결정하는 단계는 프로세서 회로와 통신하여 서비스 모듈로 수행되는 저장소 초기화 방법.
  112. 제 109 항 또는 임의의 청구항에 있어서, 상기 저장소 유형 및 TOS 유형에 기초하여 상기 저장소 인스턴스를 인스턴스화하는 단계는 저장소 유형 캐시로부터 상기 저장소 유형 및/또는 TOS 유형과 연계된 캐싱된 속성 데이터를 얻는 단계를 포함하는 저장소 초기화 방법.
  113. 제 109 항 또는 임의의 청구항에 있어서, 상기 TOS 유형에 기초하여 상기 저장소 유형을 결정하는 단계는 저장소 유형 캐시 내의 TOS 유형에 관련된 저장소 유형을 식별하는 단계를 포함하는 저장소 초기화 방법.
  114. 제 113 항 또는 임의의 청구항에 있어서, 상기 TOS 유형에 관련된 상기 저장소 유형을 식별하는 단계는 반영 동작, 헬퍼 속성 및/또는 관계를 결정하기 위한 규약 중 적어도 하나를 사용하는 단계를 포함하는 저장소 초기화 방법.
  115. 제 114 항 또는 임의의 청구항에 있어서, 상기 반영 동작을 사용하는 단계는
    제어 컨테이너의 반전을 갖고 구성된 인터페이스들을 구현하도록 구성되고;
    관심 이름공간 내에 포함되고; 그리고/또는
    관심 TOS 유형 속성을 포함하고 그리고/또는 관심 TOS 유형 후에 명명된 서브-이름공간에 포함되는
    TOS 유형을 발견하는 단계를 포함하는 저장소 초기화 방법.
  116. 제 109 항 또는 임의의 청구항에 있어서, 저장소 유형 캐시 내의 결정된 저장소 유형과 연계된 데이터를 저장하는 단계를 추가로 포함하는 저장소 초기화 방법.
  117. 제 109 항 또는 임의의 청구항에 있어서, 상기 저장소 인스턴스를 인스턴스화하는 단계는 서비스를 해결하는 단계를 포함하는 저장소 초기화 방법.
  118. 제 117 항 또는 임의의 청구항에 있어서, 상기 서비스를 해결하는 단계는
    저장소 유형 캐시로부터 저장소 및/또는 TOS 유형을 추출하는 단계; 및
    상기 추출된 저장소 및/또는 TOS 유형과 연계된 서비스를 해결하는 단계를 포함하는 저장소 초기화 방법.
  119. 제 109 항 또는 임의의 청구항에 있어서, 프로세서 회로로, 상기 인스턴스화된 저장소 인스턴스를 원격 컴퓨터에 송신하는 단계를 추가로 포함하는 저장소 초기화 방법.
  120. 제 109 항 또는 임의의 청구항에 있어서, 상기 인스턴스화된 저장소 인스턴스는 TOS 비의존성 인스턴스인 저장소 초기화 방법.
  121. 제 99 항 또는 임의의 청구항에 있어서,
    상기 수신 단계는 프로세서 회로로 수행되고;
    상기 결정 단계는 상기 프로세서 회로와 통신하여 저장소 팩토리 모듈을 거쳐 수행되고;
    상기 인스턴스화는 상기 프로세서 회로와 통신하여 서비스 해결자 모듈로 수행되는 저장소 초기화 방법.
  122. 터미널 운영 시스템들을 수반하는 정보를 프로세싱하기 위한 방법으로서,
    제 1 비즈니스 대상체를 표현하는 정보를 수신하는 정보 수신 단계로서, 상기 제 1 비즈니스 대상체는 터미널 운영 시스템(TOS) 비의존성 포맷의 복수의 비즈니스 특성들 및 연계된 기능들을 포함하는, 상기 정보 수신 단계;
    상기 수신된 정보에 기초하여 터미널 및 대응 TOS를 결정하는 단계;
    저장소 프로세싱을 수행하는 단계를 포함하고,
    상기 저장소 프로세싱을 수행하는 단계는
    상기 결정된 터미널, 상기 TOS에 대응하는 저장소 인스턴스를 구성하는 단계;
    상기 수신된 정보를 TOS 포맷된 제 1 데이터로 프로세싱하는 단계; 및
    상기 제 1 데이터를 상기 결정된 터미널에 전송하는 단계를 포함하는 정보 프로세싱 방법.
  123. 제 122 항 또는 임의의 청구항에 있어서,
    상기 저장소 프로세싱을 수행하는 단계는
    상기 제 1 데이터에 응답하여 TOS 포맷된 제 2 데이터를 수신하는 단계;
    상기 제 2 데이터를 상기 비즈니스 대상체로 프로세싱하는 단계를 추가로 포함하고,
    상기 방법은 상기 수신된 제 2 데이터에 기초하여 상기 비즈니스 대상체를 프로세싱하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  124. 제 122 항 또는 임의의 청구항에 있어서, 상기 결정된 터미널은 상기 제 1 데이터를 프로세싱하여 제 2 데이터를 생성하는 정보 프로세싱 방법.
  125. 제 122 항 또는 임의의 청구항에 있어서,
    상기 결정된 터미널로부터 상기 제 1 데이터의 수신의 확인을 수신하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  126. 제 122 항 또는 임의의 청구항에 있어서,
    상기 저장소 프로세싱을 수행하는 단계는
    상기 제 1 데이터에 응답하여 TOS 포맷된 제 2 데이터를 수신하는 단계;
    상기 제 2 데이터를 상기 비즈니스 대상체로 프로세싱하는 단계; 및
    상기 제 2 데이터를 상기 결정된 터미널에 전송하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  127. 제 126 항 또는 임의의 청구항에 있어서,
    상기 결정된 터미널로부터 상기 제 2 데이터의 수신의 확인을 수신하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  128. 제 122 항 또는 임의의 청구항에 있어서, 상기 정보는 터미널 식별자 및 요청을 포함하는 정보 프로세싱 방법.
  129. 제 122 항 또는 임의의 청구항에 있어서, 상기 정보는 사용자 인터페이스를 거쳐 수신되는 정보 프로세싱 방법.
  130. 제 122 항 또는 임의의 청구항에 있어서, 상기 저장소 인스턴스는 복수의 TOS 유형들 중 하나에 접속되는 정보 프로세싱 방법.
  131. 제 130 항 또는 임의의 청구항에 있어서, 상기 복수의 TOS 유형들은 TOS 시스템과 인터페이스하도록 구성된 임의의 TOS 시스템 및/또는 임의의 시스템을 포함하는 정보 프로세싱 방법.
  132. 제 122 항 또는 임의의 청구항에 있어서,
    복수의 저장소 인스턴스들을 균형화하는 부하를 추가로 포함하는 정보 프로세싱 방법.
  133. 서버로서,
    비즈니스 대상체들을 수신하고 표시하는 사용자 인터페이스를 포함하는 제시 레이어;
    저장소 로케이터, 상기 비즈니스 대상체들에 대응하는 복수의 저장소 인스턴스들 및 터미널 운영 시스템(TOS)을 포함하는 서비스 레이어;
    복수의 데이터 소스들을 포함하는 데이터 액세스 레이어로서, 각각의 데이터베이스 서비스는 상이한 TOS와 통신하는, 상기 데이터 액세스 레이어를 포함하고,
    상기 저장소 인스턴트들은 대응 데이터베이스 서비스를 거쳐 상기 TOS를 갖는 데이터 소스에 액세스하는 서버.
  134. 제 132 항 또는 임의의 청구항에 있어서, 상기 복수의 데이터 소스들은 적어도 하나의 데이터베이스 서비스를 포함하는 정보 프로세싱 방법.
  135. 터미널 운영 시스템들을 수반하는 정보를 프로세싱하기 위한 방법으로서,
    상기 터미널 운영 시스템들 중 적어도 하나에 정보 요청을 수신하는 단계;
    상기 정보 요청을 상기 터미널 운영 시스템에 대응하는 저장소에 질의하는 단계;
    상기 대응 터미널 운영 시스템으로부터 상기 정보 요청에 응답하여 데이터를 검색하는 단계;
    상기 검색된 정보를 터미널 운영 시스템 비의존성(TOS 비의존성) 데이터 내에 맵핑하는 것과 연계된 프로세싱을 수행하는 단계; 및
    상기 정보 요청에 응답하여 전송하기 위해 상기 TOS 비의존성 데이터를 프로세싱하는 단계를 포함하는 정보 프로세싱 방법.
  136. 터미널 운영 시스템들을 수반하는 정보를 프로세싱하기 위한 방법으로서,
    상기 터미널 운영 시스템들 중 적어도 하나에 정보 요청을 수신하는 단계;
    상기 정보 요청에 대응하는 캐싱된 데이터에 대해 상기 터미널 운영 시스템에 대응하는 저장소에 질의하는 단계;
    상기 저장소로부터 상기 정보 요청에 응답하는 캐싱된 저장소 인스턴스 데이터를 검색하는 단계로서, 상기 캐싱된 저장소 인스턴스 데이터는 터미널 운영 시스템 비의존성(TOS 비의존성) 데이터로서 맵핑되는, 캐싱된 저장소 인스턴스 데이터 검색 단계; 및
    상기 정보 요청에 응답하여 전송하기 위해 TOS 비의존성 데이터를 프로세싱하는 단계를 포함하는 정보 프로세싱 방법.
  137. 터미널 운영 시스템들을 수반하는 정보를 프로세싱하기 위한 방법으로서,
    상기 터미널 운영 시스템들 중 적어도 하나에 정보 요청을 수신하는 단계;
    복수의 저장소들 중으로부터 상기 정보 요청의 상기 터미널 운영 시스템에 대응하는 저장소를 로케이팅하는 단계;
    상기 로케이팅된 저장소로부터 상기 정보 요청에 응답하는 캐싱된 저장소 인스턴스 데이터를 검색하는 단계로서, 상기 캐싱된 저장소 인스턴스 데이터는 터미널 운영 시스템 비의존성(TOS 비의존성) 데이터 내에 맵핑되는, 상기 캐싱된 저장소 인스턴스 데이터 검색 단계; 및
    상기 정보 요청에 응답하여 상기 TOS 비의존성 데이터를 전송하는 단계를 포함하는 정보 프로세싱 방법.
  138. 터미널 운영 시스템들을 수반하는 정보를 프로세싱하기 위한 방법으로서,
    캐싱된 터미널 사이트 리스트에 기초하여 터미널 사이트 정보를 검색하는 단계;
    상기 검색된 터미널 사이트 정보에 기초하여 터미널 운영 시스템 및 상기 터미널 사이트로의 접속 정보를 결정하는 단계;
    현존하는 저장소 인스턴스가 상기 터미널 사이트에 대응하는지 여부를 결정하는 단계;
    저장소가 상기 터미널 사이트에 대응하지 않는다는 결정 후에, 상기 터미널 사이트 및 대응 터미널 운영 시스템을 위한 저장소 인스턴스를 생성하는 단계;
    상기 저장소 인스턴스를 리턴하는 단계를 포함하는 정보 프로세싱 방법.
  139. 터미널 운영 시스템들을 수반하는 정보를 프로세싱하기 위한 방법으로서,
    복수의 터미널 운영 시스템들 중 적어도 하나에 사용자 입력 요청 정보를 수신하는 단계;
    상기 정보 요청에 관련된 복수의 저장소들에 질의하는 단계;
    대응 터미널 운영 시스템으로부터 상기 정보 요청에 응답하여 데이터를 검색하는 단계;
    상기 대응 TOS 내에 저장을 위해 상기 터미널 운영 시스템 비의존성 데이터 내에 상기 검색된 데이터를 맵핑하는 단계; 및
    상기 데이터 요청에 응답하여 상기 터미널 운영 시스템 비의존성 데이터를 전송하는 단계를 포함하는 정보 프로세싱 방법.
  140. 제 139 항 또는 임의의 청구항에 있어서,
    상기 터미널 운영 시스템 비의존성 데이터의 전송에 응답하여 제 2 데이터를 수신하는 단계; 및
    상기 제 2 데이터를 프로세싱하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  141. 제 139 항 또는 임의의 청구항에 있어서,
    상기 대응 TOS로부터 상기 제 1 데이터의 수신의 확인을 수신하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  142. 제 140 항 또는 임의의 청구항에 있어서,
    상기 제 2 데이터를 상기 대응 TOS에 전송하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  143. 제 142 항 또는 임의의 청구항에 있어서,
    상기 결정된 터미널로부터 상기 제 2 데이터의 수신의 확인을 수신하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  144. 터미널 운영 시스템들을 수반하는 정보를 프로세싱하기 위한 방법으로서,
    제 1 터미널 및 제 2 터미널에 사용자 입력 요청 정보를 수신하는 단계;
    상기 제 1 터미널 및 상기 제 2 터미널에 대응하는 터미널 사이트 정보를 검색하는 단계;
    상기 검색된 터미널 사이트 정보에 기초하여 상기 제 1 터미널 및 상기 제 2 터미널의 각각에 대응하는 접속 정보를 결정하는 접속 정보 결정 단계로서, 상기 제 1 터미널은 제 1 터미널 운영 시스템을 포함하고, 상기 제 2 터미널은 상기 제 1 터미널 운영 시스템과 비호환성인 제 2 터미널 운영 시스템을 포함하는, 상기 접속 정보 결정 단계;
    상기 제 1 터미널에 대응하는 제 1 저장소 인스턴스 및 상기 제 2 터미널에 대응하는 제 2 저장소 인스턴스를 구성하는 단계;
    상기 제 1 터미널 운영 시스템 및 상기 제 2 터미널 운영 시스템으로부터 대응 제 1 저장소 인스턴스 및 제 2 저장소 인스턴스에 데이터로서 상기 요청된 정보를 검색하는 단계;
    상기 검색된 데이터를 상기 터미널 운영 시스템 비의존성(TOS 비의존성) 데이터로 프로세싱하는 단계;
    상기 제 1 저장소 인스턴스 및 상기 제 2 저장소 인스턴스로부터 TOS 비의존성 데이터를 출력하는 단계를 포함하는 정보 프로세싱 방법.
  145. 제 79 항 또는 임의의 청구항에 있어서,
    상기 대응 터미널 운영 시스템으로부터 웹 서비스를 거쳐 상기 데이터를 검색하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  146. 제 79 항 또는 임의의 청구항에 있어서,
    상기 대응 터미널 운영 시스템의 파일 또는 관련 데이터베이스로부터 상기 데이터를 검색하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  147. 제 79 항 또는 임의의 청구항에 있어서,
    상기 대응 터미널 운영 시스템의 비즈니스 라인(LOB) 애플리케이션으로부터 상기 데이터를 검색하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  148. 제 79 항 또는 임의의 청구항에 있어서, 상기 정보 요청은 운영 서비스, EIR 서비스, 부킹 서비스, 선하증권 서비스, 지불 서비스, 통지 서비스, 및 보고 서비스 중 적어도 하나를 포함하는 정보 프로세싱 방법.
  149. 제 148 항 또는 임의의 청구항에 있어서, 상기 운영 서비스는 수입, 수출, 장비 제어 및 게이트 활동 중 적어도 하나를 포함하는 정보 프로세싱 방법.
  150. 제 148 항 또는 임의의 청구항에 있어서, 상기 EIR 서비스, 부킹 서비스, 및/또는 선하증권 서비스는 수입 풀아웃, 수출 풀인/엠티-아웃, 엠티-인 체커, 및 섀시 인/아웃 중 적어도 하나를 포함하는 정보 프로세싱 방법.
  151. 제 148 항 또는 임의의 청구항에 있어서, 상기 통지 서비스는 게이트 활동, 컨테이너 상태, 예약 상태, 초과정박, 및 부킹 중 적어도 하나를 포함하는 정보 프로세싱 방법.
  152. 제 148 항 또는 임의의 청구항에 있어서, 상기 보고 서비스는 수입 컨테이너, 선박 스케쥴, 수출 부킹, 예약 및 게이트 활동 중 적어도 하나를 포함하는 정보 프로세싱 방법.
  153. 제 148 항 또는 임의의 청구항에 있어서, 상기 지불 서비스는 초과정박, 관세 및 지불 중 적어도 하나를 포함하는 정보 프로세싱 방법.
  154. 제 79 항 또는 임의의 청구항에 있어서,
    사용자를 인증하는 단계; 및
    상기 인증된 사용자에 대응하는 사용자 허가에 기초하여 상기 데이터로의 액세스를 제공하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  155. 제 154 항 또는 임의의 청구항에 있어서, 상기 사용자 허가는 사용자 관리자, 예약 관리자, 게이트 사무원, 수퍼 관리자, 제한된 예약 관리자, 트럭킹 회사 사용자, 고체적 사용자, 기선 회사 사용자 및 터미널 사용자를 포함하는 인증된 사용자에 대응하는 역할에 기초하는 정보 프로세싱 방법.
  156. 제 79 항 또는 임의의 청구항에 있어서, 상기 저장소는 사용자 데이터 및 터미널 식별자에 기초하여 질의되는 정보 프로세싱 방법.
  157. 제 79 항 또는 임의의 청구항에 있어서,
    상기 복수의 터미널 운영 시스템들의 각각에 대한 저장소를 생성하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  158. 제 79 항 또는 임의의 청구항에 있어서,
    복수의 정보 요청 유형들을 위한 저장소를 생성하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  159. 제 77 항 또는 임의의 청구항에 있어서,
    TOS 유형과 연계된 TOS 포맷의 데이터를 수신하는 단계;
    상기 데이터를 TOS 비의존성 포맷으로 변환하는 단계; 및
    상기 TOS 비의존성 데이터를 사용하여 프로세싱을 수행하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  160. 제 77 항 또는 임의의 청구항에 있어서,
    제 1 TOS 유형의 대응 터미널 운영 시스템으로부터 정보 요청에 응답하여 데이터를 검색하는 단계;
    상기 제 1 TOS 유형을 위한 제 1 저장소 인스턴스를 구성하는 단계;
    특정 사이트를 위한 데이터 소스에 액세스하기 위해 상기 제 1 저장소 인스턴스를 사용하여 제 1 데이터를 요청하는 단계;
    상기 제 1 데이터를 사용하여 비즈니스 대상체를 구성하는 단계;
    상기 비즈니스 대상체의 함수로서, 상기 저장소를 거쳐 프로세싱 및 사용자로의 표시를 위해 TOS 비의존성 출력을 제공하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  161. 제 77 항 또는 임의의 청구항에 있어서,
    저장소 및/또는 TOS 유형을 결정하기 위해 정보를 프로세싱하는 단계;
    상기 저장소 및/또는 TOS 유형과 연계된 캐싱된 속성 데이터를 얻기 위해 프로세싱을 수행하는 단계; 및
    상기 캐싱된 속성 데이터에 기초하여 저장소 인스턴스를 인스턴스화하기 위해 프로세싱을 수행하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  162. 제 77 항 또는 임의의 청구항에 있어서,
    제 1 비즈니스 대상체를 표현하는 정보를 수신하는 정보 수신 단계로서, 상기 제 1 비즈니스 대상체는 터미널 운영 시스템(TOS) 비의존성 포맷의 복수의 비즈니스 특성들 및 연계된 기능들을 포함하는, 상기 정보 수신 단계;
    상기 수신된 정보에 기초하여 터미널 및 대응 TOS를 결정하는 단계;
    저장소 프로세싱을 수행하는 단계를 추가로 포함하고, 상기 저장소 프로세싱을 수행하는 단계는
    상기 결정된 터미널, TOS에 대응하는 저장소 인스턴스를 구성하는 단계;
    상기 수신된 정보를 TOS 포맷된 제 1 데이터로 프로세싱하는 단계; 및
    상기 제 1 데이터를 상기 결정된 터미널에 전송하는 단계를 포함하는 정보 프로세싱 방법.
  163. 제 77 항 또는 임의의 청구항에 있어서,
    비즈니스 대상체들을 수신하고 표시하는 사용자 인터페이스를 포함하는 제시 레이어;
    저장소 로케이터, 상기 비즈니스 대상체들에 대응하는 복수의 저장소 인스턴스들 및 터미널 운영 시스템(TOS)을 포함하는 서비스 레이어;
    복수의 데이터 소스들을 포함하는 데이터 액세스 레이어로서, 각각의 데이터베이스 서비스는 상이한 TOS와 통신하는, 상기 데이터 액세스 레이어를 추가로 포함하고,
    상기 저장소 인스턴스는 대응 데이터베이스 서비스를 거쳐 상기 TOS를 갖는 데이터 소스에 액세스하는 정보 프로세싱 방법.
  164. 제 77 항 또는 임의의 청구항에 있어서,
    상기 터미널 운영 시스템들 중 적어도 하나에 정보 요청을 수신하는 단계;
    상기 정보 요청의 상기 터미널 운영 시스템에 대응하는 저장소에 질의하는 단계;
    상기 대응 터미널 운영 시스템으로부터 상기 정보 요청에 응답하여 데이터를 검색하는 단계;
    상기 검색된 정보를 터미널 운영 시스템 비의존성(TOS 비의존성) 데이터 내에 맵핑하는 것과 연계된 프로세싱을 수행하는 단계; 및
    상기 정보 요청에 응답하여 전송하기 위해 상기 TOS 비의존성 데이터를 프로세싱하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  165. 제 77 항 또는 임의의 청구항에 있어서,
    상기 터미널 운영 시스템들 중 적어도 하나에 정보 요청을 수신하는 단계;
    상기 정보 요청에 대응하는 캐싱된 데이터에 대해 상기 터미널 운영 시스템에 대응하는 저장소에 질의하는 단계;
    상기 저장소로부터 상기 정보 요청에 응답하는 캐싱된 저장소 인스턴스 데이터를 검색하는 단계로서, 상기 캐싱된 저장소 인스턴스 데이터는 터미널 운영 시스템 비의존성(TOS 비의존성) 데이터로서 맵핑되는, 상기 캐싱된 저장소 인스턴스 데이터 검색 단계; 및
    상기 정보 요청에 응답하여 전송하기 위해 상기 TOS 비의존성 데이터를 프로세싱하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  166. 제 77 항 또는 임의의 청구항에 있어서,
    상기 터미널 운영 시스템들 중 적어도 하나에 정보 요청을 수신하는 단계;
    복수의 저장소들 중으로부터 상기 정보 요청의 상기 터미널 운영 시스템에 대응하는 저장소를 로케이팅하는 단계;
    상기 로케이팅된 저장소로부터 상기 정보 요청에 응답하는 캐싱된 저장소 인스턴스 데이터를 검색하는 단계로서, 상기 캐싱된 저장소 인스턴스 데이터는 터미널 운영 시스템 비의존성(TOS 비의존성) 데이터 내에 맵핑되는, 상기 캐싱된 저장소 인스턴스 데이터 검색 단계; 및
    상기 정보 요청에 응답하여 상기 TOS 비의존성 데이터를 전송하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  167. 제 77 항 또는 임의의 청구항에 있어서,
    캐싱된 터미널 사이트 리스트에 기초하여 터미널 사이트 정보를 검색하는 단계;
    상기 검색된 터미널 사이트 정보에 기초하여 터미널 운영 시스템 및 상기 터미널 사이트로의 접속 정보를 결정하는 단계;
    현존하는 저장소 인스턴스가 상기 터미널 사이트에 대응하는지 여부를 결정하는 단계;
    저장소가 상기 터미널 사이트에 대응하지 않는다는 결정 후에, 상기 터미널 사이트 및 대응 터미널 운영 시스템을 위한 저장소 인스턴스를 생성하는 단계;
    상기 저장소 인스턴스를 리턴하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  168. 제 77 항 또는 임의의 청구항에 있어서,
    복수의 터미널 운영 시스템들 중 적어도 하나에 사용자 입력 요청 정보를 수신하는 단계;
    상기 정보 요청에 관련된 복수의 저장소들에 질의하는 단계;
    상기 대응 터미널 운영 시스템으로부터 상기 정보 요청에 응답하여 데이터를 검색하는 단계;
    상기 대응 TOS 내에 저장을 위해 상기 터미널 운영 시스템 비의존성 데이터 내에 상기 검색된 데이터를 맵핑하는 단계; 및
    상기 데이터 요청에 응답하여 상기 터미널 운영 시스템 비의존성 데이터를 전송하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  169. 제 77 항 또는 임의의 청구항에 있어서,
    제 1 터미널 및 제 2 터미널에 사용자 입력 요청 정보를 수신하는 단계;
    상기 제 1 터미널 및 상기 제 2 터미널에 대응하는 터미널 사이트 정보를 검색하는 단계;
    상기 검색된 터미널 사이트 정보에 기초하여 상기 제 1 터미널 및 상기 제 2 터미널의 각각에 대응하는 접속 정보를 결정하는 접속 정보 결정 단계로서, 상기 제 1 터미널은 제 1 터미널 운영 시스템을 포함하고, 상기 제 2 터미널은 상기 제 1 터미널 운영 시스템과 비호환성인 제 2 터미널 운영 시스템을 포함하는, 상기 접속 정보 결정 단계;
    상기 제 1 터미널에 대응하는 제 1 저장소 인스턴스 및 상기 제 2 터미널에 대응하는 제 2 저장소 인스턴스를 구성하는 단계;
    상기 제 1 터미널 운영 시스템 및 상기 제 2 터미널 운영 시스템으로부터 대응 제 1 저장소 인스턴스 및 제 2 저장소 인스턴스에 데이터로서 요청된 정보를 검색하는 단계;
    상기 검색된 데이터를 상기 터미널 운영 시스템 비의존성(TOS 비의존성) 데이터로 프로세싱하는 단계;
    상기 제 1 저장소 인스턴스 및 상기 제 2 저장소 인스턴스로부터 상기 TOS 비의존성 데이터를 출력하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  170. 제 77 항 또는 임의의 청구항에 있어서,
    터미널 운영 시스템(TOS) 비의존성 포맷의 프로세싱 요청을 포함하는 데이터를 수신하는 단계;
    상기 데이터와 연계된 TOS 유형을 식별하도록 상기 데이터를 분석하는 단계;
    상기 데이터를 상기 식별된 TOS 유형과 연계된 TOS 포맷으로 변환하는 단계; 및
    상기 TOS 유형과 연계된 TOS 환경에서 상기 TOS 포맷된 데이터를 사용하여 프로세싱을 수행하는 단계를 추가로 포함하는 정보 프로세싱 방법.
  171. 선적 터미널 동작들을 관리하기 위한 방법으로서,
    네트워크를 거쳐 사용자에 표시를 위한 관리 스크린을 제공하기 위해 정보를 프로세싱하는 정보 프로세싱 단계로서, 상기 관리 스크린은 사용자가 제 1 정보를 선택하게 하도록 구성되는, 상기 정보 프로세싱 단계;
    터미널 정보 및/또는 터미널 동작을 관리하기 위해, 사용자에 의해 입력되고 상기 네트워크를 거쳐 수신된 제 2 정보를 프로세싱하는 단계; 및
    상기 제 2 정보 및/또는 관리된 터미널 정보 및/또는 터미널 동작과 연계된 출력/결과를 생성하기 위해 프로세싱을 수행하는 단계를 포함하는 선적 터미널 동작들 관리 방법.
  172. 제 171 항 또는 임의의 청구항에 있어서, 상기 제 1 정보는 SSCO, 카고 기술, 부킹 유형, 부킹 서비스, 취급 명령들, 핫 해치, 컨테이너를 위한 허용된 접두사들, 컨테이너들의 치수들, 게이트 활동들, TMF 면제들 및/또는 EDI 메모 중 하나 이상을 포함하는 선적 터미널 동작들 관리 방법.
  173. 제 171 항 또는 임의의 청구항에 있어서, 상기 부킹 상세들은 전자 데이터 상호 교환(EDI) 메시지의 프로세스를 거쳐 제공되는 선적 터미널 동작들 관리 방법.
  174. 제 171 항 또는 임의의 청구항에 있어서, 상기 방법은 하나 이상의 서버들, 프로세싱 구성요소들 및/또는 프로세싱 회로를 거쳐 수행되는 선적 터미널 동작들 관리 방법.
  175. 제 171 항 또는 임의의 청구항에 있어서, 상기 부킹 상세들은 네트워크를 거쳐 직접 사용자 입력을 거쳐 수신되는 선적 터미널 동작들 관리 방법.
  176. 제 171 항 또는 임의의 청구항에 있어서, 상기 SSCO는 선적 회사 두문자어들로 파퓰레이팅되는 선적 터미널 동작들 관리 방법.
  177. 제 171 항 또는 임의의 청구항에 있어서, 상기 카고 기술의 선택은 편집 가능한 텍스트를 입력하는 능력을 포함하는 선적 터미널 동작들 관리 방법.
  178. 제 171 항 또는 임의의 청구항에 있어서, 상기 부킹 유형의 선택은 표준, 은폐를 포함하는 선택들을 갖는 드롭다운 메뉴를 포함하는 선적 터미널 동작들 관리 방법.
  179. 제 171 항 또는 임의의 청구항에 있어서, 상기 부킹 서비스의 선택은 포함하는 선적 터미널 동작들 관리 방법.
  180. 제 171 항 또는 임의의 청구항에 있어서, 상기 취급 명령들의 선택은 포함하는 선적 터미널 동작들 관리 방법.
  181. 제 171 항 또는 임의의 청구항에 있어서, 상기 핫 해치의 선택은 조기에 오프로딩될 지정된 컨테이너들을 배치하기 위한 명령들을 포함하는 선적 터미널 동작들 관리 방법.
  182. 제 171 항 또는 임의의 청구항에 있어서, 상기 컨테이너당 허용된 접두사들의 선택은 사용자 지정 컨테이너 유형으로부터 수신된 접두사들을 포함하는 선적 터미널 동작들 관리 방법.
  183. 제 171 항 또는 임의의 청구항에 있어서, 상기 컨테이너의 치수들의 선택은 높이, 길이 및 플렉스 높이 중 적어도 하나를 포함하는 선적 터미널 동작들 관리 방법.
  184. 제 183 항 또는 임의의 청구항에 있어서, 상기 플렉스 높이는 이용 가능성에 기초하여 컨테이너 높이들의 선택을 포함하는 선적 터미널 동작들 관리 방법.
  185. 제 171 항 또는 임의의 청구항에 있어서, 상기 게이트 활동들의 선택은 조기 비움 해제, 조기 완전 수취, 휠들 상에 방치, 및 지체된 완전 수취 중 적어도 하나를 포함하는 선적 터미널 동작들 관리 방법.
  186. 제 171 항 또는 임의의 청구항에 있어서, 상기 TMF 면제들의 선택은 사용자 정의된 면제들을 포함하는 선적 터미널 동작들 관리 방법.
  187. 제 171 항 또는 임의의 청구항에 있어서, 상기 EDI 메모의 선택은 편집 가능한 텍스트를 입력하는 능력을 포함하는 선적 터미널 동작들 관리 방법.
  188. 제 171 항 또는 임의의 청구항에 있어서,
    서버를 거쳐,
    상기 네트워크를 거쳐 부킹 변경 스크린의 표시를 유발하는 단계로서, 상기 부킹 변경 스크린은 상기 네트워크를 거쳐 사용자들이 선택들을 변경할 수 있게 하도록 구성되는, 상기 부킹 변경 스크린의 표시를 유발하는 단계; 및
    카고 파라미터들을 자동으로 체크하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  189. 제 188 항 또는 임의의 청구항에 있어서, 상기 선택들을 변경하는 단계는 상기 관리 스크린 선택들에 관한 사용자 엔트리들을 수신하는 단계를 포함하는 선적 터미널 동작들 관리 방법.
  190. 제 188 항 또는 임의의 청구항에 있어서, 상기 카고 파라미터들을 자동으로 체크하는 단계는 컨테이너 유형을 포함하는 선적 터미널 동작들 관리 방법.
  191. 제 188 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    변경된 선택들 및 상기 변경된 선택들을 제출하는 사용자의 아이덴티티를 포함하는 부킹 변경 보고를 생성하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  192. 제 171 항 또는 임의의 청구항에 있어서,
    서버를 거쳐,
    상기 네트워크를 거쳐 문제 해결 스크린의 표시를 야기하는 단계로서, 상기 문제 해결 스크린은 사용자들이 문제 티켓들을 보정하게 하도록 구성되는, 상기 문제 해결 스크린의 표시를 야기하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  193. 제 192 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    문제 유형, 문제 날짜, 문제 장비 유형, EIR 데이터, 및 상기 문제 티켓을 픽스하기 위해 어디로 가야하는지의 명령들중 적어도 하나를 사용자에게 통지하도록 구성된 링크된 문제 해결자 스크린의 표시를 야기하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  194. 제 193 항 또는 임의의 청구항에 있어서, 문제 유형은
    컨테이너/부킹 크기 및 유형 오정합(인/아웃), 부킹이 풀임, 부킹이 파일에 있지 않음, 부킹을 위한 비움 한계가 도달됨, 전달 비움을 위해 너무 조기임 및 하중들을 수취하기에 너무 조기임으로 구성된 유형들의 그룹으로부터 선택된 적어도 하나의 유형; 또는
    유형들의 그룹으로부터 선택된 2개 이상의 유형들; 또는
    유형들의 그룹으로부터 선택된 3개 이상의 유형들; 또는
    유형들의 그룹으로부터 선택된 4개 이상의 유형들; 또는
    유형들의 그룹으로부터 선택된 5개 이상의 유형들; 또는
    유형들의 그룹으로부터 선택된 모든 유형들을 포함하는 선적 터미널 동작들 관리 방법.
  195. 제 171 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    원본 EIR을 포함하여 장비 상호 교환 보고의 표시를 야기하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  196. 제 195 항 또는 임의의 청구항에 있어서, 상기 원본 EIR은 상기 카고에 할당된 트럭 운전자의 적어도 하나의 이미지를 포함하는 선적 터미널 동작들 관리 방법.
  197. 제 171 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    사용자가 리퍼 유형을 선택하게 하도록 구성된 장비 해제 스크린의 표시를 야기하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  198. 제 197 항 또는 임의의 청구항에 있어서, 리퍼 유형의 선택은 드롭다운 메뉴를 거치는 선적 터미널 동작들 관리 방법.
  199. 제 197 항 또는 임의의 청구항에 있어서, 상기 장비 해제 스크린은 사용자가 텍스트 엔트리를 거쳐 메시지를 입력하게 하도록 또한 구성되는 선적 터미널 동작들 관리 방법.
  200. 제 171 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    사용자가 부킹 정보를 맞춤화하게 하도록 구성된 수출 선박 관리자 스크린의 표시를 야기하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  201. 제 171 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    사용자가 카고 취급을 위한 명령들을 통신하게 하도록 구성된 장비 제어 스크린의 표시를 야기하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  202. 제 201 항 또는 임의의 청구항에 있어서, 상기 명령들은 카고의 세트들에 대한 다수의 작용들을 포함하는 선적 터미널 동작들 관리 방법.
  203. 제 201 항 또는 임의의 청구항에 있어서, 상기 장비 제어 스크린은 확인 정보를 포함하는 카고 취급 명령들의 표시를 야기하도록 또한 구성되는 선적 터미널 동작들 관리 방법.
  204. 제 171 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    사용자가 상태의 함수로서 카고 작용들을 선택하게 하도록 구성된 장비 제어 단일 작용 스크린의 표시를 야기하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  205. 제 171 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    상기 부킹 정보에 액세스하는 사용자들에 부킹 정보를 제공하도록 구성된 홈 스크린의 표시를 야기하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  206. 제 205 항 또는 임의의 청구항에 있어서, 상기 홈 스크린은 카고 부킹들의 장비, 수입, 게이트 및 관리 중 적어도 하나에 관한 정보를 포함하는 선적 터미널 동작들 관리 방법.
  207. 제 171 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    위험한 카고 부킹들에 관한 정보를 표시하도록 구성된 위험 상품 컨테이너 페이지의 표시를 야기하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  208. 제 207 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    사용자가 위험 상품 컨테이너 페이지 상의 위험 상품 컨테이너들의 리스트로부터 아이템을 선택하면 위험 상품 아이템 페이지의 표시를 야기하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  209. 제 171 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    상기 사용자가 탐색 수입 컨테이너들 박스로부터 적어도 하나의 컨테이너 번호를 잘라내기 및 붙여넣기하게 하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  210. 제 171 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    화물 트럭커, 시험 트럭커, 서비스 코드, 로컬 클리어, 관세 상태, 관세 주석, USDA 상태, 화물 상태, 초과정박, 프리데이들, 초과정박 레이트 코드, 캐리어 상태, 캐리어 카테고리 및 캐리어 주석 중 적어도 하나에 관한 정보를 표시하도록 구성된 선하증권 페이지의 표시를 야기하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  211. 제 210 항 또는 임의의 청구항에 있어서, 상기 선하증권 페이지는 컨테이너 업데이트 페이지로의 링크를 포함하는 상기 컨테이너들의 상세들을 표시하도록 또한 구성되는 선적 터미널 동작들 관리 방법.
  212. 제 171 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    체크 박스를 통한 프로세싱을 위해, 사용자가 컨테이너들의 리스트 내에 하나 초과의 컨테이너를 선택하게 하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  213. 제 171 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    각각의 컨테이너를 위한 옵션들을 제안하도록 구성된 수입 컨테이너 페이지의 표시를 야기하는 단계; 및
    사용자가 상기 옵션들에 관한 주석들을 입력하게 하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  214. 제 213 항 또는 임의의 청구항에 있어서,
    상기 서버를 거쳐,
    사용자가 상기 수입 컨테이너 페이지 상의 컨테이너들의 리스트로부터 하나의 컨테이너를 선택하게 하는 단계;
    상기 선택된 컨테이너의 상세들을 표시하도록 구성된 수입 컨테이너 상세 페이지의 표시를 야기하는 단계를 추가로 포함하는 선적 터미널 동작들 관리 방법.
  215. 제 213 항 또는 임의의 청구항에 있어서, 상기 옵션들은 화물 트럭커에 관한 옵션들을 포함하는 선적 터미널 동작들 관리 방법.
  216. 터미널 운영 시스템들을 수반하는 정보를 프로세싱하기 위한 방법으로서,
    제 1 TOS 유형의 터미널 운영 시스템과 연계된 정보 요청에 관한 정보를 프로세싱하는 단계;
    상기 제 1 TOS 유형을 위한 제 1 저장소 인스턴스와 연계된 프로세싱을 수행하는 단계;
    특정 사이트를 위한 데이터 소스에 액세스하기 위해 상기 제 1 저장소 인스턴스를 사용하여 제 1 데이터를 요청하는 단계;
    상기 제 1 데이터를 사용하여 비즈니스 대상체를 구성하는 단계; 및
    상기 저장소 인스턴스 및/또는 상기 비즈니스 대상체의 함수로서, 상기 저장소를 거친 프로세싱 및/또는 상기 사용자로의 표시를 위해 TOS 비의존성 출력을 제공하는 단계를 포함하는 정보 프로세싱 방법.
  217. 제 1 항 내지 제 216 항 중 어느 한 항의 방법들의 하나 이상의 단계들 및/또는 본 명세서에 개시된 다른 특징들을 수행하기 위해 하나 이상의 프로세서들에 의해 실행 가능한 컴퓨터 판독가능 명령들을 포함하거나 실행하는 하나 이상의 컴퓨터 판독가능 매체, 컴퓨팅 디바이스들/회로 및/또는 하나 이상의 저장 디바이스들을 포함하는 시스템.
  218. 제 1 항 내지 제 216 항 중 어느 한 항의 방법들의 하나 이상의 단계들 및/또는 본 명세서에 개시된 다른 특징들을 수행하기 위해 하나 이상의 프로세서들에 의해 실행 가능한 컴퓨터 판독가능 명령들을 구체화하는 하나 이상의 컴퓨터 판독가능 매체.
KR1020157004653A 2012-07-24 2013-07-24 사용자 인터페이스 및/또는 다른 특징들을 포함하는 터미널 운영의 특징들을 수반하는 시스템들 및 방법들 KR20150052843A (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201261741647P 2012-07-24 2012-07-24
US201261741668P 2012-07-24 2012-07-24
US201261741666P 2012-07-24 2012-07-24
US61/741,666 2012-07-24
US61/741,668 2012-07-24
US61/741,647 2012-07-24
PCT/US2013/000171 WO2014018089A1 (en) 2012-07-24 2013-07-24 Systems and methods involving features of terminal operation including user interface and/or other features

Publications (1)

Publication Number Publication Date
KR20150052843A true KR20150052843A (ko) 2015-05-14

Family

ID=49997700

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157004653A KR20150052843A (ko) 2012-07-24 2013-07-24 사용자 인터페이스 및/또는 다른 특징들을 포함하는 터미널 운영의 특징들을 수반하는 시스템들 및 방법들

Country Status (5)

Country Link
US (2) US9978034B1 (ko)
KR (1) KR20150052843A (ko)
CN (1) CN104737095A (ko)
CA (1) CA2919151A1 (ko)
WO (1) WO2014018089A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150286663A1 (en) * 2014-04-07 2015-10-08 VeDISCOVERY LLC Remote processing of memory and files residing on endpoint computing devices from a centralized device
US10970297B2 (en) * 2014-04-07 2021-04-06 Heureka, Inc. Remote processing of memory and files residing on endpoint computing devices from a centralized device
US10628787B2 (en) * 2014-09-17 2020-04-21 Albert James Benedict Apparatus for managing transportation vehicles
CN107909170B (zh) * 2017-11-06 2021-12-21 中交第二航务工程勘察设计院有限公司 一种基于bim技术的智能客货滚装系统
CN111432265B (zh) * 2020-03-31 2021-08-31 腾讯科技(深圳)有限公司 一种处理视频画面的方法、相关装置及存储介质

Family Cites Families (126)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5917925A (en) 1994-04-14 1999-06-29 Moore; Lewis J. System for dispensing, verifying and tracking postage and other information on mailpieces
US6246778B1 (en) * 1994-04-14 2001-06-12 Lewis J. Moore Product distribution verification system using encoded marks indicative of product and destination
US6456729B1 (en) 1994-04-14 2002-09-24 Lewis J. Moore Anti-counterfeiting and tracking system
US20010039615A1 (en) 1997-04-15 2001-11-08 At &T Corp. Methods and apparatus for providing a broker application server
US6604086B1 (en) * 1998-07-20 2003-08-05 Usa Technologies, Inc. Electronic commerce terminal connected to a vending machine operable as a telephone
US20020184308A1 (en) * 1999-08-23 2002-12-05 Levy Martin J. Globalization and normalization features for processing business objects
US7610233B1 (en) 1999-12-22 2009-10-27 Accenture, Llp System, method and article of manufacture for initiation of bidding in a virtual trade financial environment
EP1277158A1 (en) 2000-04-27 2003-01-22 Eastman Chemical Company Vertical systems and methods for providing shipping and logistics services, operations and products to an industry
WO2002021400A2 (en) * 2000-09-07 2002-03-14 Petrovantage, Inc. Computer system for providing a collaborative workflow environment
JP3996846B2 (ja) 2000-10-10 2007-10-24 イントラ アイエヌシー. システム
US6785718B2 (en) * 2000-10-23 2004-08-31 Schneider Logistics, Inc. Method and system for interfacing with a shipping service
US20020143929A1 (en) 2000-12-07 2002-10-03 Maltz David A. Method and system for collection and storage of traffic data from heterogeneous network elements in a computer network
US7805338B2 (en) * 2001-03-26 2010-09-28 Usa Technologies, Inc. Method of constructing a digital content play list for transmission and presentation on a public access electronic terminal
US7120896B2 (en) * 2001-10-31 2006-10-10 Vitria Technology, Inc. Integrated business process modeling environment and models created thereby
US20020144256A1 (en) * 2001-03-30 2002-10-03 Navin Budhiraja Method of deployment for concurrent execution of multiple versions of an integration model on an integration server
US8725594B1 (en) * 2001-06-19 2014-05-13 Ptc Inc. Continuous flow execution
US20030018490A1 (en) * 2001-07-06 2003-01-23 Marathon Ashland Petroleum L.L.C. Object oriented system and method for planning and implementing supply-chains
US7017162B2 (en) * 2001-07-10 2006-03-21 Microsoft Corporation Application program interface for network software platform
US7620583B2 (en) * 2001-11-30 2009-11-17 Worldpack, Inc. Method and apparatus for facilitating shipment of packages
US7088995B2 (en) * 2001-12-13 2006-08-08 Far Eastone Telecommunications Co., Ltd. Common service platform and software
US7969306B2 (en) 2002-01-11 2011-06-28 Sap Aktiengesellschaft Context-aware and real-time item tracking system architecture and scenarios
US6817008B2 (en) 2002-02-22 2004-11-09 Total System Services, Inc. System and method for enterprise-wide business process management
US6968535B2 (en) * 2002-03-21 2005-11-22 Sun Microsystems, Inc. Service mapping method of enterprise application modeling and development for multi-tier service environments
US6847393B2 (en) * 2002-04-19 2005-01-25 Wren Technology Group Method and system for monitoring point of sale exceptions
US8219466B2 (en) * 2002-08-05 2012-07-10 John Yupeng Gui System and method for providing asset management and tracking capabilities
US20040024660A1 (en) * 2002-08-05 2004-02-05 General Electric Company System and method for providing asset management and tracking capabilities
US20040024658A1 (en) * 2002-08-05 2004-02-05 General Electric Company System and method for providing asset management and tracking capabilities
US7386855B2 (en) 2002-08-12 2008-06-10 Ntt Docomo, Inc. Application mobility service
TWI324309B (en) * 2002-08-26 2010-05-01 Interdigital Tech Corp Communication circuit
US7225425B2 (en) * 2002-08-29 2007-05-29 Sap Aktiengesellschaft Rapid application integration
US7496559B2 (en) 2002-09-03 2009-02-24 X1 Technologies, Inc. Apparatus and methods for locating data
US7191192B2 (en) 2002-09-30 2007-03-13 International Business Machines Corporation Metadirectory agents having extensible functions
US7548881B2 (en) 2002-11-04 2009-06-16 Tradebeam, Inc. Systems and methods for producing documentary credit and conforming shipping documents
US7730039B2 (en) 2002-12-27 2010-06-01 Honda Motor Co., Ltd. Enhanced trade compliance system: advanced shipment notice
US7116235B2 (en) * 2003-01-31 2006-10-03 Veritainer Corporation Inverse ratio of gamma-ray and neutron emissions in the detection of radiation shielding of containers
US7539764B2 (en) * 2003-03-28 2009-05-26 At&T Intellectual Property I, L.P. Common customer interface for telecommunications operational support
US7568020B2 (en) * 2003-03-31 2009-07-28 At&T Intellectual Property I, L.P. Operational support system for telecommunication services
US7508956B2 (en) 2003-06-04 2009-03-24 Aps Technology Group, Inc. Systems and methods for monitoring and tracking movement and location of shipping containers and vehicles using a vision based system
US20050027886A1 (en) * 2003-07-03 2005-02-03 Intermec Ip Corp. Method and system for transforming non-web service enabled providers of functional services
JP4287234B2 (ja) * 2003-10-03 2009-07-01 富士通株式会社 業務プロセストラッキング装置,業務プロセストラッキング方法,業務プロセストラッキングプログラム,業務プロセストラッキングプログラムを記録した記録媒体
US7895094B2 (en) 2003-12-15 2011-02-22 American Express Travel Related Services Company, Inc. Global account reconciliation tool
US20050216294A1 (en) * 2003-12-22 2005-09-29 Labow Paul D E Cargo tracking system and method
US7181493B2 (en) * 2003-12-23 2007-02-20 Unisys Corporation Platform independent model-based framework for exchanging information in the justice system
EP1560172A1 (en) * 2004-02-02 2005-08-03 Matsushita Electric Industrial Co., Ltd. Secure device and mobile terminal which carry out data exchange between card applications
US7231065B2 (en) 2004-03-15 2007-06-12 Embarcadero Systems Corporation Method and apparatus for controlling cameras and performing optical character recognition of container code and chassis code
US7898415B2 (en) * 2004-05-14 2011-03-01 Paceco Corp. Method and apparatus using radio-location tags to report status for a container handler
KR20070038042A (ko) * 2004-05-14 2007-04-09 파세코 코퍼레이션 컨테이너 핸들러들을 위한 상황 보고 디바이스들을 만드는장치 및 방법
US7461012B2 (en) * 2004-06-08 2008-12-02 Elbex Video Ltd. Method and apparatus for simplified e-commerce shopping via home shopping terminals
IL162921A0 (en) * 2004-07-08 2005-11-20 Hi Tech Solutions Ltd Character recognition system and method
JP2008509869A (ja) * 2004-08-12 2008-04-03 ウェアネット・コープ 接地マリンターミナル操作におけるコンテナを追跡するためのシステムおよび方法
US20080193246A1 (en) 2004-09-03 2008-08-14 All Set Marine Lashing Ab Remotely Controlled Twist-Lock and a Method For Controlling Such a Lock to be Connected to a Container
CA2597758C (en) 2005-02-22 2016-05-17 Connectif Solutions Inc. Distributed asset management system and method
WO2006093744A2 (en) * 2005-02-25 2006-09-08 Maersk , Inc. System and process for improving container flow in a port facility
JP2006273464A (ja) * 2005-03-28 2006-10-12 Toyoda Suchiirusentaa Kk 積付情報作成装置、これを用いる積付情報作成方法、輸送容器への搬送物搬入方法、流通管理システム、並びにそれらに用いるコンピュータ読み取り可能な記憶媒体及びプログラム
US7323991B1 (en) 2005-05-12 2008-01-29 Exavera Technologies Incorporated System and method for locating and communicating with personnel and equipment in a facility
US7548804B2 (en) 2005-05-19 2009-06-16 Novariant, Inc. Emulation to provide multiple applications in mobile equipment
KR100736033B1 (ko) 2005-08-04 2007-07-06 삼성전자주식회사 비즈니스 프로세스의 자동 성장 장치 및 방법
US7409619B2 (en) 2005-08-23 2008-08-05 Microsoft Corporation System and methods for authoring domain specific rule-driven data generators
US20140014188A1 (en) * 2010-02-11 2014-01-16 Allen Szydlowski Methods and systems for producing, trading, and transporting water
US20070156505A1 (en) 2005-12-30 2007-07-05 Shai Agassi Method and system for providing feedback on business transactions using computer applications
US7916023B2 (en) 2006-01-31 2011-03-29 Zebra Enterprise Solutions Corp. System and method for tracking assets within a monitored environment
US7646336B2 (en) 2006-03-24 2010-01-12 Containertrac, Inc. Automated asset positioning for location and inventory tracking using multiple positioning techniques
EP1850245A1 (en) 2006-04-28 2007-10-31 Sap Ag Systems and methods for providing a generic audit trail service
FI118394B (fi) * 2006-05-26 2007-10-31 Savcor One Oy Järjestelmä ja menetelmä GPS-laitteen paikantamiseksi
US20110264588A1 (en) 2006-07-10 2011-10-27 Jensen Finn W Transport rating system
US20080027737A1 (en) * 2006-07-25 2008-01-31 Alan Wayne Watkins Shipping Price Protection
US20080040179A1 (en) * 2006-08-14 2008-02-14 Deutsche Boerse Ag System and method for sharing information and causing an action based on that information
US8150780B2 (en) * 2006-09-15 2012-04-03 The Greenbrier Management Services, Llc Method for calculating car hire
EP1909221A1 (en) * 2006-10-06 2008-04-09 A.P. Moller - Maersk A/S Container vessel stowage planning
US7916026B2 (en) * 2006-11-15 2011-03-29 Zebra Enterprise Solutions Corp. Real-time location system using tag interrogator and embedded or fixed tag transmitters
US20080125964A1 (en) 2006-11-27 2008-05-29 Carani Sherry L Tracking System and Method with Automatic Map Selector And Geo Fence Defining Features
US20080122691A1 (en) 2006-11-27 2008-05-29 Carani Sherry L Tracking system and method with multiple time zone selector, dynamic screens and multiple screen presentations
US20080121690A1 (en) 2006-11-27 2008-05-29 Carani Sherry L Ubiquitous Tracking System and Method
US20080125965A1 (en) 2006-11-27 2008-05-29 Carani Sherry L Tracking System and Method with Automatic Map Selector and Geo Fence Defining Features
US20080122656A1 (en) * 2006-11-27 2008-05-29 Carani Sherry L Tracking System and Method with Multiple Language Selector, Dynamic Screens and Multiple Screen Presentations
US7775431B2 (en) * 2007-01-17 2010-08-17 Metrologic Instruments, Inc. Method of and apparatus for shipping, tracking and delivering a shipment of packages employing the capture of shipping document images and recognition-processing thereof initiated from the point of shipment pickup and completed while the shipment is being transported to its first scanning point to facilitate early customs clearance processing and shorten the delivery time of packages to point of destination
US20080174485A1 (en) 2007-01-24 2008-07-24 Carani Sherry L Tracking System and Method with Asset Tool Bar for Polling, Message, Historic Report, Location, Map and Geo Fence Features
US9880283B2 (en) 2007-02-13 2018-01-30 Zih Corp. System, apparatus and method for locating and/or tracking assets
US7755541B2 (en) 2007-02-13 2010-07-13 Wherenet Corp. System and method for tracking vehicles and containers
US7962493B2 (en) 2007-03-05 2011-06-14 Microsoft Corporation Dynamic computation of identity-based attributes
US7922085B2 (en) 2007-04-13 2011-04-12 Aps Technology Group, Inc. System, method, apparatus, and computer program product for monitoring the transfer of cargo to and from a transporter
US8712924B2 (en) 2007-05-16 2014-04-29 Lynch Marks Llc Real-time pricing of shipping vendors
US7853480B2 (en) * 2007-05-21 2010-12-14 Amazon Technologies, Inc. System and method for providing export services to merchants
KR100869246B1 (ko) * 2007-07-10 2008-11-18 한국전자통신연구원 이동통신망에서의 이동단말 디바이스 프로파일 정보 관리 방법
US8417550B2 (en) * 2007-08-02 2013-04-09 Target Brands, Inc. Inland freight management
US10769685B2 (en) * 2007-08-13 2020-09-08 Phillip Marlowe Systems and methods for electronically generating and analyzing shipping parameters
US8150886B2 (en) 2007-08-29 2012-04-03 Microsoft Corporation Multiple database entity model generation using entity models
US8799308B2 (en) 2007-10-19 2014-08-05 Oracle International Corporation Enhance search experience using logical collections
US8533069B2 (en) * 2007-10-24 2013-09-10 Thomas V. Sanguinetti System, method, and computer program product for realization of online virtual objects
US20140258032A1 (en) * 2007-11-14 2014-09-11 Panjiva, Inc. Transaction facilitating marketplace platform
US9898767B2 (en) 2007-11-14 2018-02-20 Panjiva, Inc. Transaction facilitating marketplace platform
US20090132641A1 (en) * 2007-11-15 2009-05-21 Sanguinetti Thomas V System, method, and computer program product for realization of online virtualized objects and conveyance of virtual notes
US8606768B2 (en) * 2007-12-20 2013-12-10 Accenture Global Services Limited System for providing a configurable adaptor for mediating systems
US7792997B2 (en) * 2007-12-31 2010-09-07 Accenture Global Services Gmbh Freight backbone messaging architecture
DE102008011539B3 (de) * 2008-02-28 2009-06-18 Noell Mobile Systems Gmbh Vollautomatischer Portalhubstapler mit lokaler Funkortung und Laserlenkung
US20090307039A1 (en) * 2008-06-09 2009-12-10 Nathaniel Seeds System and method for managing work instructions for vehicles
US8645228B2 (en) * 2008-06-26 2014-02-04 Sap Ag Managing consistent interfaces for business objects across heterogeneous systems
US8671064B2 (en) * 2008-06-26 2014-03-11 Sap Ag Managing consistent interfaces for supply chain management business objects across heterogeneous systems
CN101301982A (zh) 2008-07-01 2008-11-12 上海振华港口机械(集团)股份有限公司 轨道式集装箱起重机作业状态的图形化显示系统及方法
US7972102B2 (en) 2008-07-24 2011-07-05 Marine Terminals Corporation Automated marine container terminal and system
US8176083B2 (en) 2008-12-18 2012-05-08 Sap Ag Generic data object mapping agent
US8171337B2 (en) * 2009-03-30 2012-05-01 The Boeing Company Computer architectures using shared storage
FI121402B (fi) * 2009-04-15 2010-10-29 Konecranes Oyj Järjestelmä kontinkäsittelykoneen tunnistamiseen ja/tai sijainnin määrittämiseen
US20100318437A1 (en) * 2009-06-15 2010-12-16 Syncflo Holdings Limited Shipping container based production and logistics management method and system including order entry, tracking, and fullfilment
US8949046B2 (en) * 2009-07-09 2015-02-03 Mi-Jack Products, Inc. System for associating inventory with handling equipment in shipping container yard inventory transactions
US8322118B2 (en) * 2009-07-13 2012-12-04 Dell Products L.P. Systems and methods for packaging of information handling systems
US8432274B2 (en) 2009-07-31 2013-04-30 Deal Magic, Inc. Contextual based determination of accuracy of position fixes
CN101996358A (zh) 2009-08-26 2011-03-30 上海振华重工(集团)股份有限公司 自动化码头的堆场管理方法
US20110054979A1 (en) * 2009-08-31 2011-03-03 Savi Networks Llc Physical Event Management During Asset Tracking
US20110055172A1 (en) 2009-09-01 2011-03-03 Containertrac, Inc. Automatic error correction for inventory tracking and management systems used at a shipping container yard
US8630443B2 (en) * 2009-09-01 2014-01-14 Han-Shue Tan Automatic error detection for inventory tracking and management systems used at a shipping container yard
US20110238381A1 (en) 2010-03-26 2011-09-29 Randolph Construction Services, Inc. Data Management System
AT12932U1 (de) * 2010-04-23 2013-02-15 Bachmann Gmbh Verfahren und vorrichtung zum betrieb von windpark-verbundnetzen mit verbessertem daten-übertragungsprotokoll
EP2583211B1 (en) * 2010-06-15 2020-04-15 Oracle International Corporation Virtual computing infrastructure
US8370272B2 (en) * 2010-06-15 2013-02-05 Sap Ag Managing consistent interfaces for business document message monitoring view, customs arrangement, and freight list business objects across heterogeneous systems
CN103562745B (zh) * 2011-04-21 2017-06-30 科尼全球公司 用于定位车辆的技术
US9792565B2 (en) * 2011-05-31 2017-10-17 Sap Se Computing marketing scenarios based on market characteristics
AU2012355474B2 (en) 2011-12-23 2018-01-04 Airstrip Ip Holdings, Llc Systems and methods for developing multi-platform applications for computing devices
US8971932B2 (en) 2011-12-24 2015-03-03 Secure Sigint, LLC Secure witness or criminal participant location or position and time recording information apparatus, systemts and methods
JP6079174B2 (ja) * 2011-12-27 2017-02-15 株式会社リコー 通信管理システム、通信システム、プログラム、及びメンテナンスシステム
US9183064B2 (en) * 2011-12-30 2015-11-10 General Electric Company Intelligent mediation of messages in a healthcare product integration platform
US20130275265A1 (en) 2012-04-17 2013-10-17 International Business Machines Corporation Business to business integration services marketplace
EP2850585A4 (en) * 2012-05-16 2015-12-30 Inttra Inc BILLING AND SHIPMENT BORDER CORRESPONDENCE AND DISPUTE RESOLUTION
US9672560B2 (en) * 2012-06-28 2017-06-06 Oracle International Corporation Distributed order orchestration system that transforms sales products to fulfillment products
GB2504718A (en) * 2012-08-07 2014-02-12 Ibm Collecting and normalising data
US20160071055A1 (en) * 2013-04-30 2016-03-10 Eric Beckwitt Freight services marketplace system and methods

Also Published As

Publication number Publication date
US9710777B1 (en) 2017-07-18
CA2919151A1 (en) 2014-01-30
US9978034B1 (en) 2018-05-22
CN104737095A (zh) 2015-06-24
WO2014018089A1 (en) 2014-01-30

Similar Documents

Publication Publication Date Title
US20150347984A1 (en) Systems and methods involving features of terminal operation including tracking, appointment and/or other features
US7996850B2 (en) Dynamic business object properties for SOA architectures
US20120254058A1 (en) Associative tracking for loosely-coupled supply chain networks
WO2020022911A1 (en) Method, system, apparatus, and program for real-time and online freight management
US20190147398A1 (en) Container tracking systems and methods
KR20150052843A (ko) 사용자 인터페이스 및/또는 다른 특징들을 포함하는 터미널 운영의 특징들을 수반하는 시스템들 및 방법들
US11863659B2 (en) Shipping platform
CN104933607A (zh) 一种卫星遥感数据订购服务系统
TWI829061B (zh) 貨物運輸組織之零信任通信系統及其使用方法
US20140278814A1 (en) Contract-based process integration
US20150235168A1 (en) Systems and methods involving features of terminal operation including tos-agnostic, user interface and/or other features
US20160034850A1 (en) System and method for shipping, delivery, manifesting, and returns
TW201535282A (zh) 處理涉及包括追蹤、預約及/或其他功能之集散站作業之資料的系統及方法
CN109978420A (zh) 一种物流配送管理调度系统
WO2012021745A2 (en) System and method for tracking and managing the relocation of equipment and inventory
US9923950B1 (en) Systems and methods involving features of terminal operation including TOS-agnostic and/or other features
US7730046B2 (en) Nomination locking system and method
Hofman Federated platforms for seamless interoperability in the Physical Internet
US11361088B2 (en) Zero trust communication system for freight shipping organizations, and methods of use
US20150170074A1 (en) Dynamic and adaptable event integration for flexible business processes
WO2014018692A2 (en) Systems and methods involving features of terminal operation including tos-agnostic and/or other features
US9495657B1 (en) Systems and methods involving features of terminal operation including TOS-agnostic and/or other features
Bendriss et al. Multimodal transport information system: modelling approach for goods traceability
US11763011B2 (en) Zero trust communication system for freight shipping organizations, and methods of use
US20230079280A1 (en) Driver software

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid