com.sds.acube.bpm.framework.api
Class FileAttachProcessor

java.lang.Object
  extended by com.sds.acube.bpm.framework.api.FileAttachProcessor

public class FileAttachProcessor
extends java.lang.Object

첨부파일 관련 API FileAttachProcessor.java 2006. 3. 16.

Version:
1.0.0.0 Copyright 2001 Samsung SDS Co., Ltd. All rights reserved.
Author:
Jack

Constructor Summary
FileAttachProcessor()
           
 
Method Summary
static void cancelRegisterFile(java.util.HashMap bpmMap)
          이번 단계에서 등록된 첨부파일을 삭제한다.
static int copyAttachFileInfo(java.sql.Connection connection, java.lang.String targetProcessID, java.lang.String newProcessId, com.sds.acube.bpm.web.fileattach.common.AttachList deleteList, com.sds.acube.bpm.org.LoginUserVO userVO)
           
static int copyAttachFileInfo(java.sql.Connection connection, java.lang.String targetProcessID, java.lang.String targetNodeID, int targetNodeSeq, java.lang.String newProcessId, java.lang.String newNodeID, int newNodeSeq)
           
static boolean copyAttachFileInfo(java.sql.Connection connection, java.lang.String targetFileID, java.lang.String newProcessId, java.lang.String newNodeID, int newNodeSeq, int newLocationCode, com.sds.acube.bpm.org.LoginUserVO newUser)
           
static int copyAttachFileInfo(java.lang.String targetProcessID, java.lang.String newProcessId, com.sds.acube.bpm.web.fileattach.common.AttachList deleteList, com.sds.acube.bpm.org.LoginUserVO userVO)
           
static int copyAttachFileInfo(java.lang.String targetProcessID, java.lang.String targetNodeID, int targetNodeSeq, java.lang.String newProcessId, java.lang.String newNodeID, int newNodeSeq)
           
static boolean copyAttachFileInfo(java.lang.String targetFileID, java.lang.String newProcessId, java.lang.String newNodeID, int newNodeSeq, int newLocationCode, com.sds.acube.bpm.org.LoginUserVO objUser)
           
static int copyAttachFileInfoByProcess(java.sql.Connection connection, java.lang.String targetProcessID, boolean childProcessIncludeFlag, boolean subProcessIncludeFlag, java.lang.String newProcessId, java.lang.String newNodeID, int newNodeSeq, int newLocationCode, com.sds.acube.bpm.org.LoginUserVO newUser)
          주어진 프로세스의 모든 첨부파일을 다른 프로세스의 특정노드 첨부로 복사함.
static int copyAttachFileInfoByProcess(java.sql.Connection connection, java.lang.String targetProcessID, java.lang.String newProcessId, int newLocationCode, com.sds.acube.bpm.org.LoginUserVO objUser)
          주어진 프로세스의 모든 첨부파일을 다른 프로세스의 업무상신 첨부로 복사함.
static int copyAttachFileInfoByProcess(java.sql.Connection connection, java.lang.String targetProcessID, java.lang.String newProcessId, java.lang.String newNodeID, int newNodeSeq, int newLocationCode, com.sds.acube.bpm.org.LoginUserVO objUser)
          주어진 프로세스의 모든 첨부파일을 다른 프로세스의 특정노드 첨부로 복사함.
static int copyAttachFileInfoByProcess(java.lang.String targetProcessID, boolean childProcessIncludeFlag, boolean subProcessIncludeFlag, java.lang.String newProcessId, java.lang.String newNodeID, int newNodeSeq, int newLocationCode, com.sds.acube.bpm.org.LoginUserVO objUser)
          주어진 프로세스의 모든 첨부파일을 다른 프로세스의 특정노드 첨부로 복사함.
static int copyAttachFileInfoByProcess(java.lang.String targetProcessID, java.lang.String newProcessId, int newLocationCode, com.sds.acube.bpm.org.LoginUserVO objUser)
          주어진 프로세스의 모든 첨부파일을 다른 프로세스의 업무상신 첨부로 복사함.
static int copyAttachFileInfoByProcess(java.lang.String targetProcessID, java.lang.String newProcessId, java.lang.String newNodeID, int newNodeSeq, int newLocationCode, com.sds.acube.bpm.org.LoginUserVO objUser)
          주어진 프로세스의 모든 첨부파일을 다른 프로세스의 특정노드 첨부로 복사함.
static int countFileAttachesUntilNodeSeq(java.sql.Connection connection, java.lang.String processID, java.lang.String tableType, int nodeSeq)
          첨부파일 개수를 리턴함.
static int countFileAttachesUntilNodeSeq(java.sql.Connection connection, java.lang.String processID, java.lang.String tableType, int nodeSeq, int locationCode)
           
static int countFileAttachesUntilNodeSeq(java.lang.String processID, java.lang.String tableType, int nodeSeq, int locationCode)
          첨부파일 개수를 리턴함. - 2008.12.11 LEE IL YONG
static boolean deleteFileAttachByFileID(java.sql.Connection connection, java.lang.String fileID)
           
static boolean deleteFileAttachByFileID(java.lang.String fileID)
           
static boolean deleteFileAttachByProcessID(java.sql.Connection connection, java.lang.String processID)
           
static boolean deleteFileAttachByProcessID(java.lang.String processID)
           
static boolean deleteMarkFileAttachByFileID(java.sql.Connection connection, java.lang.String fileID)
           
static boolean deleteMarkFileAttachByFileID(java.lang.String fileID)
           
static com.sds.acube.bpm.vo.common.FileAttachVO getDefaultFileAttachVO()
          saveAttachFileInfo() 호출하는 데 사용할 디폴트값을 가지는 FileAttachVO를 만들어 냄.
static boolean getFileById(java.lang.String saveDir, java.lang.String fileId)
          fileId(TBPM_FILE_ATTACH table의 FILE_ID) 하나로 간단히 저장서버에서 파일을 가져오는 함수
[참고] saveDir + fileId로 저장됨. fileID가 임시 파일명이 됨.
static boolean getFileById(java.lang.String saveDir, java.lang.String fileId, java.lang.String newFileName)
          fileId(TBPM_FILE_ATTACH table의 FILE_ID) 하나로 간단히 저장서버에서 파일을 가져오는 함수
[참고] saveDir + newFileName로 저장됨(이미 있을 경우 덮어씀)
[참고] 저장서버를 직접 접근하는 함수는 DB 커넥션이 필요없으므로 바로 호출하여 사용할 수 있음.
static com.sds.acube.bpm.vo.common.FileAttachesVO getFiles(org.apache.log4j.Logger userLogger, java.lang.String processID, java.lang.String tableType, int nodeSeq, java.lang.String path)
           
static com.sds.acube.bpm.vo.common.FileAttachesVO getFiles(java.lang.String processID, int nodeSeq, java.lang.String path)
          지정된 프로세스 ID에, nodeSeq 까지 관련된 첨부파일들을 지정된 경로에 저장한 후 관련된 FileAttachesVO를 반환
static com.sds.acube.bpm.vo.common.FileAttachesVO getFiles(java.lang.String processID, java.lang.String path)
          지정된 프로세스 ID에 관련된 첨부파일들을 지정된 경로에 저장한 후 관련된 FileAttachesVO를 반환
static com.sds.acube.bpm.vo.common.FileAttachesVO getFiles(java.lang.String processID, java.lang.String nodeID, boolean lastNodeSeqOnly, java.lang.String path)
          지정된 프로세스 ID, 노드 ID와 관련된 첨부파일들을 지정된 경로에 저장한 후 관련된 FileAttachesVO를 반환
static com.sds.acube.bpm.vo.common.FileAttachesVO getFiles(java.lang.String processID, java.lang.String tableType, int nodeSeq, int locationCode, java.lang.String path)
          지정된 프로세스 ID에, nodeSeq 까지 관련된 첨부파일들을 지정된 경로에 저장한 후 관련된 FileAttachesVO를 반환
static com.sds.acube.bpm.vo.common.FileAttachesVO getFiles(java.lang.String processID, java.lang.String tableType, int nodeSeq, java.lang.String path)
          지정된 프로세스 ID에, nodeSeq 까지 관련된 첨부파일들을 지정된 경로에 저장한 후 관련된 FileAttachesVO를 반환
static com.sds.acube.bpm.vo.common.FileAttachesVO getFilesOfUI(java.lang.String processID, int nodeSeq, java.lang.String path)
          지정된 프로세스 ID, nodeSeq 에 해당하는 UI 에서 볼 수 있는 첨부파일들을 지정된 경로에 저장한 후 관련된 FileAttachesVO를 반환
static java.lang.String getFileUploadString(java.util.ArrayList arrFileInfo)
          외부실행 모듈에서도 첨부파일을 할 수 있도록 fileupload 문자열을 만들어 내는 함수. for 삼성 토탈 자세한 사용법과 예제는 ExternalProcessHandler.java과 같은 위치의 bpm_test.jsp를 참조할 것.
static java.lang.String getFileUploadString(java.util.ArrayList arrFileInfo, boolean bResetFlag)
           
static java.lang.String getFileUploadString(java.util.ArrayList arrFileInfo, java.lang.String location)
           
static java.lang.String getFileUploadString(java.util.ArrayList arrFileInfo, java.lang.String location, java.lang.String openflag, java.lang.String resetFlag, java.lang.String option)
           
static java.lang.String getString(java.lang.String filePath)
          문자열로 파일읽기
static java.lang.String getString(java.lang.String filePath, java.lang.String charsetName)
          문자열로 파일읽기
static void main(java.lang.String[] args)
           
static void registerFile(java.util.HashMap bpmMap)
          서버의 특정 디렉토리(BPM.properties파일에 SFTP_TEMP)에 있는 파일들을 저장서버에 저장하고 해당 파일들을 해당 프로세스의 첨부파일로 등록한다.
static void saveAttachFileInfo(java.util.ArrayList voList)
          이미 저장서버에 파일이 저장되어 있고 관련 파일정보를 알 경우 BPM 파일로 등록할 수 있게 지원함.
static void saveAttachFileInfo(java.sql.Connection connection, java.util.ArrayList voList)
          이미 저장서버에 파일이 저장되어 있고 관련 파일정보를 알 경우 BPM 파일로 등록할 수 있게 지원함.
static void saveAttachFileInfo(java.sql.Connection connection, com.sds.acube.bpm.vo.common.FileAttachVO[] voList)
          이미 저장서버에 파일이 저장되어 있고 관련 파일정보를 알 경우 BPM 파일로 등록할 수 있게 지원함.
static void saveAttachFileInfo(com.sds.acube.bpm.vo.common.FileAttachVO[] voList)
          이미 저장서버에 파일이 저장되어 있고 관련 파일정보를 알 경우 BPM 파일로 등록할 수 있게 지원함.
static boolean saveFile(java.lang.String filePath, java.lang.String content, boolean overwriteFlag)
          문자열을 파일로 저장
static boolean saveFile(java.lang.String filePath, java.lang.String content, java.lang.String charsetName, boolean overwriteFlag)
          문자열을 파일로 저장
static com.sds.acube.bpm.vo.common.FileAttachVO selectFileAttachByFileID(java.sql.Connection connection, java.lang.String fileID)
           
static com.sds.acube.bpm.vo.common.FileAttachVO selectFileAttachByFileID(java.lang.String fileID)
           
static com.sds.acube.bpm.vo.common.FileAttachesVO selectFileAttachesByProcessID(java.sql.Connection connection, java.lang.String processID)
          지정된 프로세스 ID에 관련된 첨부파일들을 FileAttachesVO로 반환(첨부가 없을 경우 null을 반환)
[주의] 해당 프로세스 ID의 첨부만 가져옴, 병렬분기되거나 서브프로세스가 있어서 프로세스 ID가 달라지면 각각 call해야 함
static com.sds.acube.bpm.vo.common.FileAttachesVO selectFileAttachesByProcessID(java.lang.String processID)
          지정된 프로세스 ID에 관련된 첨부파일들을 FileAttachesVO로 반환(첨부가 없을 경우 null을 반환)
[주의] 해당 프로세스 ID의 첨부만 가져옴, 병렬분기되거나 서브프로세스가 있어서 프로세스 ID가 달라지면 각각 call해야 함
static com.sds.acube.bpm.vo.common.FileAttachesVO selectFileAttachesUntilNodeSeq(java.sql.Connection connection, java.lang.String processID, java.lang.String tableType, int nodeSeq)
          첨부파일 정보를 리턴함.
static com.sds.acube.bpm.vo.common.FileAttachesVO selectFileAttachesUntilNodeSeq(java.sql.Connection connection, java.lang.String processID, java.lang.String tableType, int nodeSeq, int locationCode)
           
static com.sds.acube.bpm.vo.common.FileAttachesVO selectFileAttachesUntilNodeSeq(java.lang.String processID, java.lang.String tableType, int nodeSeq, int locationCode)
          첨부파일 정보를 리턴함. - 2008.12.11 LEE IL YONG
static void setDeleteMark(java.sql.Connection connection, java.lang.String processID, boolean allProcessFlag)
          현재 프로세스에 연결된 첨부파일을 삭제 마크한다.
static void setDeleteMark(java.sql.Connection connection, java.lang.String processID, java.lang.String nodeID)
          현재 프로세스에 연결된 첨부파일을 삭제 마크한다.
static void setDeleteMark(java.sql.Connection connection, java.lang.String processID, java.lang.String nodeID, int nodeSeq, boolean untilFlag)
          현재 프로세스에 연결된 첨부파일을 삭제 마크한다.
static void setDeleteMark(java.sql.Connection connection, java.lang.String processID, java.lang.String nodeID, int nodeSeq, int locationCode, boolean untilFlag)
          현재 프로세스에 연결된 첨부파일을 삭제 마크한다.
static void setDeleteMark(java.lang.String processID)
          현재 프로세스에 연결된 첨부파일을 삭제 마크한다.
static void setDeleteMark(java.lang.String processID, boolean allProcessFlag)
          현재 프로세스에 연결된 첨부파일을 삭제 마크한다.
static void setDeleteMark(java.lang.String processID, java.lang.String nodeID)
          현재 프로세스에 연결된 첨부파일을 삭제 마크한다.
static void setDeleteMark(java.lang.String processID, java.lang.String nodeID, int nodeSeq)
          현재 프로세스에 연결된 첨부파일을 삭제 마크한다.
static void setDeleteMark(java.lang.String processID, java.lang.String nodeID, int nodeSeq, boolean untilFlag)
          현재 프로세스에 연결된 첨부파일을 삭제 마크한다.
static void setDeleteMark(java.lang.String processID, java.lang.String nodeID, int nodeSeq, int locationCode, boolean untilFlag)
          현재 프로세스에 연결된 첨부파일을 삭제 마크한다.
static void setHasAttachInProcess(java.sql.Connection connection, java.lang.String processID, boolean flag)
           
static void setHasAttachInProcess(java.sql.Connection connection, java.lang.String processID, java.lang.String curNodeID, boolean flag)
           
static void setHasAttachInProcess(java.lang.String processID, boolean flag)
          FileAttachProcessor.setDeleteMark()로 파일을 삭제 표시한 경우 TBPM_PROCESS의 HAS_ATTACH를 0으로 변경하지 않으면 서로 일치하지 않게 된다.
static void setHasAttachInProcess(java.lang.String processID, java.lang.String curNodeID, boolean flag)
           
static boolean uploadFiles(java.lang.String processID, java.lang.String nodeID, int nodeSeq, int locationCode, java.lang.String userID, java.lang.String[] filePathList)
          서버에 있는 파일들을 저장서버에 저장하고, 해당 프로세스의 첨부파일로 등록한다.
static boolean uploadFiles(java.lang.String processID, java.lang.String nodeID, int nodeSeq, int locationCode, java.lang.String userID, java.lang.String deptID, java.util.ArrayList filePathList, java.util.ArrayList displayFileNameList, boolean fileDeleteFlag, org.apache.log4j.Logger userLogger)
           
static boolean uploadFiles(java.lang.String processID, java.lang.String nodeID, int nodeSeq, int locationCode, java.lang.String userID, java.lang.String deptID, java.util.ArrayList filePathList, boolean fileDeleteFlag, org.apache.log4j.Logger userLogger)
          서버에 있는 파일들을 저장서버에 저장하고, 해당 프로세스의 첨부파일로 등록한다.
static boolean uploadFiles(java.lang.String processID, java.lang.String nodeID, int nodeSeq, int locationCode, java.lang.String userID, java.lang.String deptID, java.lang.String[] filePathList, boolean fileDeleteFlag, org.apache.log4j.Logger userLogger)
          서버에 있는 파일들을 저장서버에 저장하고, 해당 프로세스의 첨부파일로 등록한다.
static boolean uploadFiles(java.lang.String processID, java.lang.String nodeID, int nodeSeq, int locationCode, java.lang.String userID, java.lang.String deptID, java.lang.String[] filePathList, java.lang.String[] displayFileNameList, boolean fileDeleteFlag, org.apache.log4j.Logger userLogger)
           
static boolean uploadFilesAtProposal(java.lang.String processID, int locationCode, java.lang.String userID, java.util.ArrayList filePathList)
          업무투입시 서버에 있는 파일들을 저장서버에 저장하고, 해당 프로세스의 첨부파일로 등록한다.
static boolean uploadFilesAtProposal(java.lang.String processID, int locationCode, java.lang.String userID, java.lang.String[] filePathList)
          업무투입시 서버에 있는 파일들을 저장서버에 저장하고, 해당 프로세스의 첨부파일로 등록한다.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FileAttachProcessor

public FileAttachProcessor()
Method Detail

main

public static void main(java.lang.String[] args)

selectFileAttachesByProcessID

public static com.sds.acube.bpm.vo.common.FileAttachesVO selectFileAttachesByProcessID(java.lang.String processID)
지정된 프로세스 ID에 관련된 첨부파일들을 FileAttachesVO로 반환(첨부가 없을 경우 null을 반환)
[주의] 해당 프로세스 ID의 첨부만 가져옴, 병렬분기되거나 서브프로세스가 있어서 프로세스 ID가 달라지면 각각 call해야 함

Parameters:
processID - 프로세스 ID
Returns:
저장된 첨부파일에 대한 FileAttachesVO 개체
Since:
2011.01.14 LEE IL YONG

selectFileAttachesByProcessID

public static com.sds.acube.bpm.vo.common.FileAttachesVO selectFileAttachesByProcessID(java.sql.Connection connection,
                                                                                       java.lang.String processID)
지정된 프로세스 ID에 관련된 첨부파일들을 FileAttachesVO로 반환(첨부가 없을 경우 null을 반환)
[주의] 해당 프로세스 ID의 첨부만 가져옴, 병렬분기되거나 서브프로세스가 있어서 프로세스 ID가 달라지면 각각 call해야 함

Parameters:
Connection - DB connection
processID - 프로세스 ID
Returns:
저장된 첨부파일에 대한 FileAttachesVO 개체
Since:
2011.01.14 LEE IL YONG

getFileById

public static boolean getFileById(java.lang.String saveDir,
                                  java.lang.String fileId)
                           throws java.lang.Exception
fileId(TBPM_FILE_ATTACH table의 FILE_ID) 하나로 간단히 저장서버에서 파일을 가져오는 함수
[참고] saveDir + fileId로 저장됨. fileID가 임시 파일명이 됨. 필요하면 추후 해당 파일명을 변경 할 것.
[참고] 저장서버를 직접 접근하는 함수는 DB 커넥션이 필요없으므로 바로 호출하여 사용할 수 있음.
[주의] saveDir에 저장된 파일은 별도로 삭제되지 않으므로 따로 삭제해야 함.

Parameters:
saveDir - 파일을 저장할 서버상의 디렉토리. 끝에 '/' 또는 '\' 유무는 상관없음.
fileId - 저장서버 파일ID(TBPM_FILE_ATTACH table의 FILE_ID)
Returns:
boolean
Throws:
java.lang.Exception
Since:
2010.07.29 LEE IL YONG

getFileById

public static boolean getFileById(java.lang.String saveDir,
                                  java.lang.String fileId,
                                  java.lang.String newFileName)
                           throws java.lang.Exception
fileId(TBPM_FILE_ATTACH table의 FILE_ID) 하나로 간단히 저장서버에서 파일을 가져오는 함수
[참고] saveDir + newFileName로 저장됨(이미 있을 경우 덮어씀)
[참고] 저장서버를 직접 접근하는 함수는 DB 커넥션이 필요없으므로 바로 호출하여 사용할 수 있음.
[주의] saveDir에 저장된 파일은 별도로 삭제되지 않으므로 따로 삭제해야 함.

Parameters:
saveDir - 파일을 저장할 서버상의 디렉토리. 끝에 '/' 또는 '\' 유무는 상관없음.
fileId - 저장서버 파일ID(TBPM_FILE_ATTACH table의 FILE_ID)
newFileName - 저장할 파일명(이 이름으로 저장됨)
Returns:
boolean
Throws:
java.lang.Exception
Since:
2011.07.15 LEE IL YONG

getFiles

public static com.sds.acube.bpm.vo.common.FileAttachesVO getFiles(java.lang.String processID,
                                                                  java.lang.String path)
지정된 프로세스 ID에 관련된 첨부파일들을 지정된 경로에 저장한 후 관련된 FileAttachesVO를 반환

Parameters:
processID - 프로세스 ID
path - 첨부파일을 저장할 경로
Returns:
저장된 첨부파일에 대한 FileAttachesVO 개체

getFiles

public static com.sds.acube.bpm.vo.common.FileAttachesVO getFiles(java.lang.String processID,
                                                                  int nodeSeq,
                                                                  java.lang.String path)
지정된 프로세스 ID에, nodeSeq 까지 관련된 첨부파일들을 지정된 경로에 저장한 후 관련된 FileAttachesVO를 반환

Parameters:
processID - 프로세스 ID
nodeSeq - 노드 seq
path - 첨부파일을 저장할 경로
Returns:
저장된 첨부파일에 대한 FileAttachesVO 개체
Since:
20061107

getFiles

public static com.sds.acube.bpm.vo.common.FileAttachesVO getFiles(java.lang.String processID,
                                                                  java.lang.String tableType,
                                                                  int nodeSeq,
                                                                  java.lang.String path)
지정된 프로세스 ID에, nodeSeq 까지 관련된 첨부파일들을 지정된 경로에 저장한 후 관련된 FileAttachesVO를 반환

Parameters:
processID - 프로세스 ID
tableType - 업무함 종류 (form/inbox/drafted/expected/completed/...)
nodeSeq - 노드 seq
path - 첨부파일을 저장할 경로
Returns:
저장된 첨부파일에 대한 FileAttachesVO 개체
Since:
20080408

getFiles

public static com.sds.acube.bpm.vo.common.FileAttachesVO getFiles(org.apache.log4j.Logger userLogger,
                                                                  java.lang.String processID,
                                                                  java.lang.String tableType,
                                                                  int nodeSeq,
                                                                  java.lang.String path)

getFiles

public static com.sds.acube.bpm.vo.common.FileAttachesVO getFiles(java.lang.String processID,
                                                                  java.lang.String tableType,
                                                                  int nodeSeq,
                                                                  int locationCode,
                                                                  java.lang.String path)
지정된 프로세스 ID에, nodeSeq 까지 관련된 첨부파일들을 지정된 경로에 저장한 후 관련된 FileAttachesVO를 반환

Parameters:
processID - 프로세스 ID
tableType - 업무함 종류 (form/inbox/drafted/expected/completed/...)
nodeSeq - 노드 seq
locationCode - Location Code
path - 첨부파일을 저장할 경로
Returns:
저장된 첨부파일에 대한 FileAttachesVO 개체
Since:
20080408

getFilesOfUI

public static com.sds.acube.bpm.vo.common.FileAttachesVO getFilesOfUI(java.lang.String processID,
                                                                      int nodeSeq,
                                                                      java.lang.String path)
지정된 프로세스 ID, nodeSeq 에 해당하는 UI 에서 볼 수 있는 첨부파일들을 지정된 경로에 저장한 후 관련된 FileAttachesVO를 반환

Parameters:
processID - 프로세스 ID
nodeSeq - 노드 seq
path - 첨부파일을 저장할 경로
Returns:
저장된 첨부파일에 대한 FileAttachesVO 개체
Since:
20070912

getFiles

public static com.sds.acube.bpm.vo.common.FileAttachesVO getFiles(java.lang.String processID,
                                                                  java.lang.String nodeID,
                                                                  boolean lastNodeSeqOnly,
                                                                  java.lang.String path)
지정된 프로세스 ID, 노드 ID와 관련된 첨부파일들을 지정된 경로에 저장한 후 관련된 FileAttachesVO를 반환

Parameters:
processID - 프로세스 ID
nodeID - 노드 ID
lastNodeSeqOnly - 마지막 노드 Seq에 대한 파일만 받을 지 여부
path - 첨부파일을 저장할 경로
Returns:
저장된 첨부파일에 대한 FileAttachesVO 개체
Since:
20070822

getFileUploadString

public static java.lang.String getFileUploadString(java.util.ArrayList arrFileInfo)
                                            throws com.sds.acube.bpm.framework.api.ProcessorException
외부실행 모듈에서도 첨부파일을 할 수 있도록 fileupload 문자열을 만들어 내는 함수. for 삼성 토탈 자세한 사용법과 예제는 ExternalProcessHandler.java과 같은 위치의 bpm_test.jsp를 참조할 것. [사용법] 먼저 첨부할 파일을 서버의 특정 디렉토리에 파일명만 GUID로 변경하여 기존 파일과 충돌없이 저장함. 서버측 저장 위치는 BPM.properties파일에 SFTP_TEMP로 설정되어 있으므로 이를 읽어서 저장할 것. 보통 bpm 설치 디렉토리(예,bpm/web) 아래의 fileattach/temp 디렉토리임. 그 다음 파일개수만큼 ArrayList에 아래 정보처럼 구성한 후 FileAttachProcessor.getFileUploadString()를 호출하여 얻은 값을 bpmMap에 uploadList라는 이름으로 넣어 주면 됨. arrFileInfo은 String에 3가지 파일정보가 구성되어 넘어 옴. 구분자 ':' => 서버에저장된GUID파일명:원래파일명:파일사이즈(바이트,숫자만) ex) => "330D7B23DFBA481ABB52D345E52DCBBB.xml:내부첨부(1).xml:265" [주의!] 양식에서 첨부파일 업로드 스트링구조가 변경되면 여기도 변경해야 함. 특히 AttachVO.parse()나 AttachVO.toString()이 변경되면 반드시 여기도 변경해야 함.

Parameters:
arrFileInfo - ArrayList 개체
Returns:
화면에서 첨부파일 업로드할 때 만들어 내는 것과 동일한 문자열
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

getFileUploadString

public static java.lang.String getFileUploadString(java.util.ArrayList arrFileInfo,
                                                   java.lang.String location)
                                            throws com.sds.acube.bpm.framework.api.ProcessorException
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

getFileUploadString

public static java.lang.String getFileUploadString(java.util.ArrayList arrFileInfo,
                                                   boolean bResetFlag)
                                            throws com.sds.acube.bpm.framework.api.ProcessorException
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

getFileUploadString

public static java.lang.String getFileUploadString(java.util.ArrayList arrFileInfo,
                                                   java.lang.String location,
                                                   java.lang.String openflag,
                                                   java.lang.String resetFlag,
                                                   java.lang.String option)
                                            throws com.sds.acube.bpm.framework.api.ProcessorException
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

registerFile

public static void registerFile(java.util.HashMap bpmMap)
                         throws com.sds.acube.bpm.framework.api.ProcessorException
서버의 특정 디렉토리(BPM.properties파일에 SFTP_TEMP)에 있는 파일들을 저장서버에 저장하고 해당 파일들을 해당 프로세스의 첨부파일로 등록한다. 등록된 파일들은 디렉토리에서 자동 삭제된다.
BPM 외부실행 모듈에서 사용됨.
[주의!] bpmMap은 ExternalProcessHandler.getBpmInfoFrom~()로 생성한 해쉬맵에
FileAttachProcessor.getFileUploadString()로 생성한 문자열을 "uploadList"로 저장한 해쉬맵이어야 함.

[참고] 앞으론 이 함수대신 FileAttachProcessor.uploadFiles()를 사용할 것. uploadFiles()는 uploadList 없이 사용가능함. 2009.02.04 LEE IL YONG

bpmMap 중 필수 : processID,nodeID,nodeSeq,tableType,approvalResult,uploadList,loginUser(userID),approvalUser(userID),attachDepartCode
bpmMap 중 옵션 : attachRoleCode,deleteList,topProcessID

Parameters:
bpmMap - HashMap 개체
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

uploadFilesAtProposal

public static boolean uploadFilesAtProposal(java.lang.String processID,
                                            int locationCode,
                                            java.lang.String userID,
                                            java.lang.String[] filePathList)
                                     throws com.sds.acube.bpm.framework.api.ProcessorException
업무투입시 서버에 있는 파일들을 저장서버에 저장하고, 해당 프로세스의 첨부파일로 등록한다. [주의!] 이 함수는 파일개수와 용량에 따라 오래 걸릴 수 있으므로 DB 커넥션을 열어 놓은 상태에서 호출하면 안됨.
[참고] 실제 프로세스 존재 여부는 검사하지 않으므로, 없는 프로세스 ID로 등록할 수도 있음.

Parameters:
processID - Process ID(TopProcessID아님)
locationCode - 첨부파일 묶음 식별 번호
userID - 첨부파일 올리는 사람 ID
filePathList - 저장서버로 업로드할 첨부파일 경로(파일명을 포함한 서버측 풀 경로)
Returns:
성공여부 boolean
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

uploadFilesAtProposal

public static boolean uploadFilesAtProposal(java.lang.String processID,
                                            int locationCode,
                                            java.lang.String userID,
                                            java.util.ArrayList filePathList)
                                     throws com.sds.acube.bpm.framework.api.ProcessorException
업무투입시 서버에 있는 파일들을 저장서버에 저장하고, 해당 프로세스의 첨부파일로 등록한다. [주의!] 이 함수는 파일개수와 용량에 따라 오래 걸릴 수 있으므로 DB 커넥션을 열어 놓은 상태에서 호출하면 안됨.
[참고] 실제 프로세스 존재 여부는 검사하지 않으므로, 없는 프로세스 ID로 등록할 수도 있음.

Parameters:
processID - Process ID(TopProcessID아님)
locationCode - 첨부파일 묶음 식별 번호
userID - 첨부파일 올리는 사람 ID
filePathList - 저장서버로 업로드할 첨부파일 경로(파일명을 포함한 서버측 풀 경로)
Returns:
성공여부 boolean
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

uploadFiles

public static boolean uploadFiles(java.lang.String processID,
                                  java.lang.String nodeID,
                                  int nodeSeq,
                                  int locationCode,
                                  java.lang.String userID,
                                  java.lang.String[] filePathList)
                           throws com.sds.acube.bpm.framework.api.ProcessorException
서버에 있는 파일들을 저장서버에 저장하고, 해당 프로세스의 첨부파일로 등록한다. [주의!] 이 함수는 파일개수와 용량에 따라 오래 걸릴 수 있으므로 DB 커넥션을 열어 놓은 상태에서 호출하면 안됨.
[참고] 실제 프로세스 존재 여부는 검사하지 않으므로, 없는 프로세스 ID로 등록할 수도 있음.

Parameters:
processID - Process ID(TopProcessID아님)
nodeID - Node ID
nodeSeq - Node 시퀀스
locationCode - 첨부파일 묶음 식별 번호
userID - 첨부파일 올리는 사람 ID
filePathList - 저장서버로 업로드할 첨부파일 경로(파일명을 포함한 서버측 풀 경로)
Returns:
성공여부 boolean
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

uploadFiles

public static boolean uploadFiles(java.lang.String processID,
                                  java.lang.String nodeID,
                                  int nodeSeq,
                                  int locationCode,
                                  java.lang.String userID,
                                  java.lang.String deptID,
                                  java.util.ArrayList filePathList,
                                  boolean fileDeleteFlag,
                                  org.apache.log4j.Logger userLogger)
                           throws com.sds.acube.bpm.framework.api.ProcessorException
서버에 있는 파일들을 저장서버에 저장하고, 해당 프로세스의 첨부파일로 등록한다. [주의!] 이 함수는 파일개수와 용량에 따라 오래 걸릴 수 있으므로 DB 커넥션을 열어 놓은 상태에서 호출하면 안됨.
[참고] 실제 프로세스 존재 여부는 검사하지 않으므로, 없는 프로세스 ID로 등록할 수도 있음.

Parameters:
processID - Process ID(TopProcessID아님)
nodeID - Node ID
nodeSeq - Node 시퀀스
locationCode - 첨부파일 묶음 식별 번호
userID - 첨부파일 올리는 사람 ID
deptID - user의 부서 ID(필수X)
filePathList - 저장서버로 업로드할 첨부파일 경로(파일명을 포함한 서버측 풀 경로)
displayFileNameList - 저장서버로 업로드할 첨부파일명(null일경우에는 실제 파일명을 사용함)
fileDeleteFlag - 업로드 후 기존 파일 삭제 여부
logger - 로그를 찍을 Logger(필수X)
Returns:
성공여부 boolean
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

uploadFiles

public static boolean uploadFiles(java.lang.String processID,
                                  java.lang.String nodeID,
                                  int nodeSeq,
                                  int locationCode,
                                  java.lang.String userID,
                                  java.lang.String deptID,
                                  java.util.ArrayList filePathList,
                                  java.util.ArrayList displayFileNameList,
                                  boolean fileDeleteFlag,
                                  org.apache.log4j.Logger userLogger)
                           throws com.sds.acube.bpm.framework.api.ProcessorException
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

uploadFiles

public static boolean uploadFiles(java.lang.String processID,
                                  java.lang.String nodeID,
                                  int nodeSeq,
                                  int locationCode,
                                  java.lang.String userID,
                                  java.lang.String deptID,
                                  java.lang.String[] filePathList,
                                  boolean fileDeleteFlag,
                                  org.apache.log4j.Logger userLogger)
                           throws com.sds.acube.bpm.framework.api.ProcessorException
서버에 있는 파일들을 저장서버에 저장하고, 해당 프로세스의 첨부파일로 등록한다. [주의!] 이 함수는 파일개수와 용량에 따라 오래 걸릴 수 있으므로 DB 커넥션을 열어 놓은 상태에서 호출하면 안됨.
첨부등록은 디폴트 옵션으로 등록됨. 무난함.
[참고] 실제 프로세스 존재 여부는 검사하지 않으므로, 없는 프로세스 ID로 등록할 수도 있음.

Parameters:
processID - Process ID(TopProcessID아님)
nodeID - Node ID
nodeSeq - Node 시퀀스
locationCode - 첨부파일 묶음 식별 번호
userID - 첨부파일 올리는 사람 ID
deptID - user의 부서 ID(필수X)
filePathList - 저장서버로 업로드할 첨부파일 경로(파일명을 포함한 서버측 풀 경로)
fileDeleteFlag - 업로드 후 기존 파일 삭제 여부
logger - 로그를 찍을 Logger(필수X)
Returns:
성공여부 boolean
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

uploadFiles

public static boolean uploadFiles(java.lang.String processID,
                                  java.lang.String nodeID,
                                  int nodeSeq,
                                  int locationCode,
                                  java.lang.String userID,
                                  java.lang.String deptID,
                                  java.lang.String[] filePathList,
                                  java.lang.String[] displayFileNameList,
                                  boolean fileDeleteFlag,
                                  org.apache.log4j.Logger userLogger)
                           throws com.sds.acube.bpm.framework.api.ProcessorException
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

cancelRegisterFile

public static void cancelRegisterFile(java.util.HashMap bpmMap)
                               throws com.sds.acube.bpm.framework.api.ProcessorException
이번 단계에서 등록된 첨부파일을 삭제한다. 실제로 DB 레코드가 삭제된다. BPM 외부실행 모듈에서 사용됨. bpmMap 중 필수 : processID,nodeSeq

Parameters:
bpmMap - HashMap 개체
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

setDeleteMark

public static void setDeleteMark(java.lang.String processID)
                          throws com.sds.acube.bpm.framework.api.ProcessorException
현재 프로세스에 연결된 첨부파일을 삭제 마크한다. 따라서 과거내역에서도 안나오며, 처음부터 첨부를 한번도 안한 상태가 됨. BPM 외부실행 모듈에서 사용됨.

Parameters:
allProcessFlag - allProcessFlag 개체
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

setDeleteMark

public static void setDeleteMark(java.lang.String processID,
                                 boolean allProcessFlag)
                          throws com.sds.acube.bpm.framework.api.ProcessorException
현재 프로세스에 연결된 첨부파일을 삭제 마크한다. 따라서 과거내역에서도 안나오며, 처음부터 첨부를 한번도 안한 상태가 됨.

Parameters:
processID - processID
allProcessFlag - allProcessFlag 지금 속한 프로세스의 모든 상위,형제,자식 프로세스까지 모두 delete표기함.
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
Since:
2007.01.17 LEE IL YONG

setDeleteMark

public static void setDeleteMark(java.sql.Connection connection,
                                 java.lang.String processID,
                                 boolean allProcessFlag)
                          throws com.sds.acube.bpm.framework.api.ProcessorException
현재 프로세스에 연결된 첨부파일을 삭제 마크한다. 따라서 과거내역에서도 안나오며, 처음부터 첨부를 한번도 안한 상태가 됨.

Parameters:
processID - processID
allProcessFlag - allProcessFlag 지금 속한 프로세스의 모든 상위,형제,자식 프로세스까지 모두 delete표기함.
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
Since:
2007.01.17 LEE IL YONG

setDeleteMark

public static void setDeleteMark(java.lang.String processID,
                                 java.lang.String nodeID)
                          throws com.sds.acube.bpm.framework.api.ProcessorException
현재 프로세스에 연결된 첨부파일을 삭제 마크한다. 따라서 과거내역에서도 안나오며, 처음부터 첨부를 한번도 안한 상태가 됨.
[주의!] 순환되는 플로우면 nodeSeq를 넘기는 함수를 사용할 것. 이함수를 사용하면 nodeSeq 상관없이 모두 변경되므로 주의할 것. 2007.01.18 LEE IL YONG

Parameters:
processID - processID
nodeID - nodeID
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
Since:
2007.01.18 LEE IL YONG

setDeleteMark

public static void setDeleteMark(java.sql.Connection connection,
                                 java.lang.String processID,
                                 java.lang.String nodeID)
                          throws com.sds.acube.bpm.framework.api.ProcessorException
현재 프로세스에 연결된 첨부파일을 삭제 마크한다. 따라서 과거내역에서도 안나오며, 처음부터 첨부를 한번도 안한 상태가 됨.
[주의!] 순환되는 플로우면 nodeSeq를 넘기는 함수를 사용할 것. 이함수를 사용하면 nodeSeq 상관없이 모두 변경되므로 주의할 것. 2007.01.18 LEE IL YONG

Parameters:
processID - processID
nodeID - nodeID
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
Since:
2007.01.18 LEE IL YONG

setDeleteMark

public static void setDeleteMark(java.lang.String processID,
                                 java.lang.String nodeID,
                                 int nodeSeq)
                          throws com.sds.acube.bpm.framework.api.ProcessorException
현재 프로세스에 연결된 첨부파일을 삭제 마크한다. 따라서 과거내역에서도 안나오며, 처음부터 첨부를 한번도 안한 상태가 됨.
[참고] nodeID가 null이 아니면 해당 노드만 삭제마크함 - 2010.01.19 LEE IL YONG

Parameters:
processID - processID
nodeID - nodeID (nodeID가 null이 아니면 해당 노드만 삭제마크함)
nodeSeq - nodeSeq
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
Since:
2007.01.18 LEE IL YONG

setDeleteMark

public static void setDeleteMark(java.lang.String processID,
                                 java.lang.String nodeID,
                                 int nodeSeq,
                                 boolean untilFlag)
                          throws com.sds.acube.bpm.framework.api.ProcessorException
현재 프로세스에 연결된 첨부파일을 삭제 마크한다. 따라서 과거내역에서도 안나오며, 처음부터 첨부를 한번도 안한 상태가 됨.
[참고] nodeID가 null이 아니면 해당 노드만 삭제마크함 - 2010.01.19 LEE IL YONG

Parameters:
processID - processID
nodeID - nodeID (nodeID가 null이 아니면 해당 노드만 삭제마크함)
nodeSeq - nodeSeq
untilFlag - untilFlag (true면 nodeSeq에 해당하는 노드와 그 이전 노드들도 찾아서 모두 삭제마크함)
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
Since:
2007.01.18 LEE IL YONG

setDeleteMark

public static void setDeleteMark(java.sql.Connection connection,
                                 java.lang.String processID,
                                 java.lang.String nodeID,
                                 int nodeSeq,
                                 boolean untilFlag)
                          throws com.sds.acube.bpm.framework.api.ProcessorException
현재 프로세스에 연결된 첨부파일을 삭제 마크한다. 따라서 과거내역에서도 안나오며, 처음부터 첨부를 한번도 안한 상태가 됨.
[참고] nodeID가 null이 아니면 해당 노드만 삭제마크함 - 2010.01.19 LEE IL YONG

Parameters:
processID - processID
nodeID - nodeID (nodeID가 null이 아니면 해당 노드만 삭제마크함)
nodeSeq - nodeSeq
untilFlag - untilFlag (true면 nodeSeq에 해당하는 노드와 그 이전 노드들도 찾아서 모두 삭제마크함)
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
Since:
2007.01.18 LEE IL YONG

setDeleteMark

public static void setDeleteMark(java.lang.String processID,
                                 java.lang.String nodeID,
                                 int nodeSeq,
                                 int locationCode,
                                 boolean untilFlag)
                          throws com.sds.acube.bpm.framework.api.ProcessorException
현재 프로세스에 연결된 첨부파일을 삭제 마크한다. 따라서 과거내역에서도 안나오며, 처음부터 첨부를 한번도 안한 상태가 됨.
[참고] nodeID가 null이 아니면 해당 노드만 삭제마크함 - 2010.01.19 LEE IL YONG
[참고] locationCode가 -1이 아니면 해당 locationCode만 삭제마크함 - 2010.01.19 LEE IL YONG

Parameters:
processID - processID
nodeID - nodeID (nodeID가 null이 아니면 해당 노드만 삭제마크함)
nodeSeq - nodeSeq
locationCode - locationCode (locationCode가 -1이 아니면 해당 locationCode만 삭제마크함)
untilFlag - untilFlag (true면 nodeSeq에 해당하는 노드와 그 이전 노드들도 찾아서 모두 삭제마크함)
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
Since:
2010.01.19 LEE IL YONG

setDeleteMark

public static void setDeleteMark(java.sql.Connection connection,
                                 java.lang.String processID,
                                 java.lang.String nodeID,
                                 int nodeSeq,
                                 int locationCode,
                                 boolean untilFlag)
                          throws com.sds.acube.bpm.framework.api.ProcessorException
현재 프로세스에 연결된 첨부파일을 삭제 마크한다. 따라서 과거내역에서도 안나오며, 처음부터 첨부를 한번도 안한 상태가 됨.
[참고] nodeID가 null이 아니면 해당 노드만 삭제마크함 - 2010.01.19 LEE IL YONG
[참고] locationCode가 -1이 아니면 해당 locationCode만 삭제마크함 - 2010.01.19 LEE IL YONG

Parameters:
processID - processID
nodeID - nodeID (nodeID가 null이 아니면 해당 노드만 삭제마크함)
nodeSeq - nodeSeq
locationCode - locationCode (locationCode가 -1이 아니면 해당 locationCode만 삭제마크함)
untilFlag - untilFlag (true면 nodeSeq에 해당하는 노드와 그 이전 노드들도 찾아서 모두 삭제마크함)
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
Since:
2010.01.19 LEE IL YONG

setHasAttachInProcess

public static void setHasAttachInProcess(java.lang.String processID,
                                         boolean flag)
                                  throws com.sds.acube.bpm.framework.api.ProcessorException
FileAttachProcessor.setDeleteMark()로 파일을 삭제 표시한 경우 TBPM_PROCESS의 HAS_ATTACH를 0으로 변경하지 않으면 서로 일치하지 않게 된다. 따라서 필요한 경우 이 함수를 사용하여 값을 보정하여 준다. curNodeID : TBPM_PROCESS의 CURRENT_NODE_ID 컬럼이 curNodeID일때만 설정하게 한다. 안전하게 설정할 때 사용한다.

Throws:
com.sds.acube.bpm.framework.api.ProcessorException

setHasAttachInProcess

public static void setHasAttachInProcess(java.sql.Connection connection,
                                         java.lang.String processID,
                                         boolean flag)
                                  throws com.sds.acube.bpm.framework.api.ProcessorException
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

setHasAttachInProcess

public static void setHasAttachInProcess(java.lang.String processID,
                                         java.lang.String curNodeID,
                                         boolean flag)
                                  throws com.sds.acube.bpm.framework.api.ProcessorException
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

setHasAttachInProcess

public static void setHasAttachInProcess(java.sql.Connection connection,
                                         java.lang.String processID,
                                         java.lang.String curNodeID,
                                         boolean flag)
                                  throws com.sds.acube.bpm.framework.api.ProcessorException
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

selectFileAttachesUntilNodeSeq

public static com.sds.acube.bpm.vo.common.FileAttachesVO selectFileAttachesUntilNodeSeq(java.lang.String processID,
                                                                                        java.lang.String tableType,
                                                                                        int nodeSeq,
                                                                                        int locationCode)
                                                                                 throws java.lang.Exception
첨부파일 정보를 리턴함. - 2008.12.11 LEE IL YONG

Parameters:
conn - - Connection
processID - 프로세스 ID(TopProcessID 아님)
tableType - tableType
nodeSeq - nodeSeq
locationCode - locationCode
Returns:
FileAttachesVO
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
java.lang.Exception

selectFileAttachesUntilNodeSeq

public static com.sds.acube.bpm.vo.common.FileAttachesVO selectFileAttachesUntilNodeSeq(java.sql.Connection connection,
                                                                                        java.lang.String processID,
                                                                                        java.lang.String tableType,
                                                                                        int nodeSeq)
                                                                                 throws java.lang.Exception
첨부파일 정보를 리턴함.
삭제된 건 자동 제거됨

Parameters:
conn - - Connection
processID - 프로세스 ID(TopProcessID 아님)
tableType - tableType
nodeSeq - nodeSeq
locationCode - locationCode
Returns:
FileAttachesVO
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
java.lang.Exception

selectFileAttachesUntilNodeSeq

public static com.sds.acube.bpm.vo.common.FileAttachesVO selectFileAttachesUntilNodeSeq(java.sql.Connection connection,
                                                                                        java.lang.String processID,
                                                                                        java.lang.String tableType,
                                                                                        int nodeSeq,
                                                                                        int locationCode)
                                                                                 throws java.lang.Exception
Throws:
java.lang.Exception

countFileAttachesUntilNodeSeq

public static int countFileAttachesUntilNodeSeq(java.lang.String processID,
                                                java.lang.String tableType,
                                                int nodeSeq,
                                                int locationCode)
                                         throws java.lang.Exception
첨부파일 개수를 리턴함. - 2008.12.11 LEE IL YONG

Parameters:
conn - - Connection
processID - 프로세스 ID(TopProcessID 아님)
tableType - tableType
nodeSeq - nodeSeq
locationCode - locationCode
Returns:
count
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
java.lang.Exception

countFileAttachesUntilNodeSeq

public static int countFileAttachesUntilNodeSeq(java.sql.Connection connection,
                                                java.lang.String processID,
                                                java.lang.String tableType,
                                                int nodeSeq)
                                         throws java.lang.Exception
첨부파일 개수를 리턴함.

Parameters:
conn - - Connection
processID - 프로세스 ID(TopProcessID 아님)
tableType - tableType
nodeSeq - nodeSeq
locationCode - locationCode
Returns:
count
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
java.lang.Exception

countFileAttachesUntilNodeSeq

public static int countFileAttachesUntilNodeSeq(java.sql.Connection connection,
                                                java.lang.String processID,
                                                java.lang.String tableType,
                                                int nodeSeq,
                                                int locationCode)
                                         throws java.lang.Exception
Throws:
java.lang.Exception

copyAttachFileInfo

public static int copyAttachFileInfo(java.lang.String targetProcessID,
                                     java.lang.String targetNodeID,
                                     int targetNodeSeq,
                                     java.lang.String newProcessId,
                                     java.lang.String newNodeID,
                                     int newNodeSeq)
                              throws com.sds.acube.bpm.framework.api.ProcessorException
Parameters:
targetProcessID - 대상processID
targetNodeID - 대상nodeID
targetNodeSeq - 대상nodeSeq
newProcessId - 새processID
newNodeID - 새nodeID
newNodeSeq - 새nodeSeq
Returns:
copy한 파일 개수, 없으면 0을 리턴함
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

copyAttachFileInfo

public static int copyAttachFileInfo(java.sql.Connection connection,
                                     java.lang.String targetProcessID,
                                     java.lang.String targetNodeID,
                                     int targetNodeSeq,
                                     java.lang.String newProcessId,
                                     java.lang.String newNodeID,
                                     int newNodeSeq)
                              throws com.sds.acube.bpm.framework.api.ProcessorException
Parameters:
targetProcessID - 대상processID
targetNodeID - 대상nodeID
targetNodeSeq - 대상nodeSeq
newProcessId - 새processID
newNodeID - 새nodeID
newNodeSeq - 새nodeSeq
Returns:
copy한 파일 개수, 없으면 0을 리턴함
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

copyAttachFileInfo

public static int copyAttachFileInfo(java.lang.String targetProcessID,
                                     java.lang.String newProcessId,
                                     com.sds.acube.bpm.web.fileattach.common.AttachList deleteList,
                                     com.sds.acube.bpm.org.LoginUserVO userVO)
                              throws com.sds.acube.bpm.framework.api.ProcessorException
Parameters:
targetProcessID - 대상processID
newProcessId - 새processID
deleteList - 이번에 삭제된 파일 리스트(null 가능,이것들은 복사대상에서 제외됨)
userVO - 파일 소유주 (필수)
Returns:
copy한 파일 개수, 없으면 0을 리턴함
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
Since:
2011.12.19 LEE IL YONG

copyAttachFileInfo

public static int copyAttachFileInfo(java.sql.Connection connection,
                                     java.lang.String targetProcessID,
                                     java.lang.String newProcessId,
                                     com.sds.acube.bpm.web.fileattach.common.AttachList deleteList,
                                     com.sds.acube.bpm.org.LoginUserVO userVO)
                              throws java.lang.Exception
Parameters:
targetProcessID - 대상processID
newProcessId - 새processID
deleteList - 이번에 삭제된 파일 리스트(null 가능,이것들은 복사대상에서 제외됨)
userVO - 파일 소유주 (필수)
Returns:
copy한 파일 개수, 없으면 0을 리턴함
Throws:
java.lang.Exception
Since:
2011.12.19 LEE IL YONG

copyAttachFileInfo

public static boolean copyAttachFileInfo(java.lang.String targetFileID,
                                         java.lang.String newProcessId,
                                         java.lang.String newNodeID,
                                         int newNodeSeq,
                                         int newLocationCode,
                                         com.sds.acube.bpm.org.LoginUserVO objUser)
                                  throws com.sds.acube.bpm.framework.api.ProcessorException
Parameters:
targetFileID - 대상fileID
newProcessId - 새processID
newNodeID - 새nodeID
newNodeSeq - 새nodeSeq
newLocationCode - 새LocationCode
newUser - 새파일소유자(null을 주면 기존 파일소유자 정보를 복사함)
Returns:
boolean 성공여부
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

copyAttachFileInfo

public static boolean copyAttachFileInfo(java.sql.Connection connection,
                                         java.lang.String targetFileID,
                                         java.lang.String newProcessId,
                                         java.lang.String newNodeID,
                                         int newNodeSeq,
                                         int newLocationCode,
                                         com.sds.acube.bpm.org.LoginUserVO newUser)
                                  throws com.sds.acube.bpm.framework.api.ProcessorException
Parameters:
connection - Connection
targetFileID - 대상fileID
newProcessId - 새processID
newNodeID - 새nodeID
newNodeSeq - 새nodeSeq
newLocationCode - 새LocationCode
newUser - 새파일소유자(null을 주면 기존 파일소유자 정보를 복사함)
Returns:
boolean 성공여부
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

copyAttachFileInfoByProcess

public static int copyAttachFileInfoByProcess(java.lang.String targetProcessID,
                                              java.lang.String newProcessId,
                                              int newLocationCode,
                                              com.sds.acube.bpm.org.LoginUserVO objUser)
                                       throws com.sds.acube.bpm.framework.api.ProcessorException
주어진 프로세스의 모든 첨부파일을 다른 프로세스의 업무상신 첨부로 복사함.
삭제된 파일은 복사대상에서 제외됨
병렬분기가 있을 경우 자식 프로세스의 첨부도 포함됨

Parameters:
targetProcessID - 대상processID
newNodeSeq - 새nodeSeq(업무상신 첨부로 설정하려면 0으로 설정할 것)
newLocationCode - 새LocationCode(-1을 주면 기존 LocationCode를 그대로 복사함)
newUser - 새파일소유자(null을 주면 기존 파일소유자 정보를 복사함)
Returns:
int 복사한 첨부파일 개수
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

copyAttachFileInfoByProcess

public static int copyAttachFileInfoByProcess(java.sql.Connection connection,
                                              java.lang.String targetProcessID,
                                              java.lang.String newProcessId,
                                              int newLocationCode,
                                              com.sds.acube.bpm.org.LoginUserVO objUser)
                                       throws com.sds.acube.bpm.framework.api.ProcessorException
주어진 프로세스의 모든 첨부파일을 다른 프로세스의 업무상신 첨부로 복사함.
삭제된 파일은 복사대상에서 제외됨
병렬분기가 있을 경우 자식 프로세스의 첨부도 포함됨

Parameters:
targetProcessID - 대상processID
newNodeSeq - 새nodeSeq(업무상신 첨부로 설정하려면 0으로 설정할 것)
newLocationCode - 새LocationCode(-1을 주면 기존 LocationCode를 그대로 복사함)
newUser - 새파일소유자(null을 주면 기존 파일소유자 정보를 복사함)
Returns:
int 복사한 첨부파일 개수
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

copyAttachFileInfoByProcess

public static int copyAttachFileInfoByProcess(java.lang.String targetProcessID,
                                              java.lang.String newProcessId,
                                              java.lang.String newNodeID,
                                              int newNodeSeq,
                                              int newLocationCode,
                                              com.sds.acube.bpm.org.LoginUserVO objUser)
                                       throws com.sds.acube.bpm.framework.api.ProcessorException
주어진 프로세스의 모든 첨부파일을 다른 프로세스의 특정노드 첨부로 복사함.
삭제된 파일은 복사대상에서 제외됨
병렬분기가 있을 경우 자식 프로세스의 첨부도 포함됨

Parameters:
targetProcessID - 대상processID
newProcessId - 새processID(프로세스 존재여부는 따지지 않음)
newNodeID - 새nodeID(업무상신 첨부로 설정하려면 'START_NODE'로 설정할 것)
newNodeSeq - 새nodeSeq(업무상신 첨부로 설정하려면 0으로 설정할 것)
newLocationCode - 새LocationCode(-1을 주면 기존 LocationCode를 그대로 복사함)
newUser - 새파일소유자(null을 주면 기존 파일소유자 정보를 복사함)
Returns:
int 복사한 첨부파일 개수
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

copyAttachFileInfoByProcess

public static int copyAttachFileInfoByProcess(java.sql.Connection connection,
                                              java.lang.String targetProcessID,
                                              java.lang.String newProcessId,
                                              java.lang.String newNodeID,
                                              int newNodeSeq,
                                              int newLocationCode,
                                              com.sds.acube.bpm.org.LoginUserVO objUser)
                                       throws com.sds.acube.bpm.framework.api.ProcessorException
주어진 프로세스의 모든 첨부파일을 다른 프로세스의 특정노드 첨부로 복사함.
삭제된 파일은 복사대상에서 제외됨
병렬분기가 있을 경우 자식 프로세스의 첨부도 포함됨

Parameters:
targetProcessID - 대상processID
newProcessId - 새processID(프로세스 존재여부는 따지지 않음)
newNodeID - 새nodeID(업무상신 첨부로 설정하려면 'START_NODE'로 설정할 것)
newNodeSeq - 새nodeSeq(업무상신 첨부로 설정하려면 0으로 설정할 것)
newLocationCode - 새LocationCode(-1을 주면 기존 LocationCode를 그대로 복사함)
newUser - 새파일소유자(null을 주면 기존 파일소유자 정보를 복사함)
Returns:
int 복사한 첨부파일 개수
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

copyAttachFileInfoByProcess

public static int copyAttachFileInfoByProcess(java.lang.String targetProcessID,
                                              boolean childProcessIncludeFlag,
                                              boolean subProcessIncludeFlag,
                                              java.lang.String newProcessId,
                                              java.lang.String newNodeID,
                                              int newNodeSeq,
                                              int newLocationCode,
                                              com.sds.acube.bpm.org.LoginUserVO objUser)
                                       throws com.sds.acube.bpm.framework.api.ProcessorException
주어진 프로세스의 모든 첨부파일을 다른 프로세스의 특정노드 첨부로 복사함.
삭제된 파일은 복사대상에서 제외됨

Parameters:
connection - Connection
targetProcessID - 대상processID
childProcessIncludeFlag - targetProcess에서 병렬분기가 있을 경우 자식 프로세스의 첨부도 포함여부
subProcessIncludeFlag - targetProcess에서 서브프로세스 분기가 있을 경우 서브 프로세스의 첨부도 포함여부(현재 지원X)
newProcessId - 새processID(프로세스 존재여부는 따지지 않음)
newNodeID - 새nodeID(업무상신 첨부로 설정하려면 'START_NODE'로 설정할 것)
newNodeSeq - 새nodeSeq(업무상신 첨부로 설정하려면 0으로 설정할 것)
newLocationCode - 새LocationCode(-1을 주면 기존 LocationCode를 그대로 복사함)
newUser - 새파일소유자(null을 주면 기존 파일소유자 정보를 복사함)
Returns:
int 복사한 첨부파일 개수
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

copyAttachFileInfoByProcess

public static int copyAttachFileInfoByProcess(java.sql.Connection connection,
                                              java.lang.String targetProcessID,
                                              boolean childProcessIncludeFlag,
                                              boolean subProcessIncludeFlag,
                                              java.lang.String newProcessId,
                                              java.lang.String newNodeID,
                                              int newNodeSeq,
                                              int newLocationCode,
                                              com.sds.acube.bpm.org.LoginUserVO newUser)
                                       throws com.sds.acube.bpm.framework.api.ProcessorException
주어진 프로세스의 모든 첨부파일을 다른 프로세스의 특정노드 첨부로 복사함.
삭제된 파일은 복사대상에서 제외됨

Parameters:
connection - Connection
targetProcessID - 대상processID
childProcessIncludeFlag - targetProcess에서 병렬분기가 있을 경우 자식 프로세스의 첨부도 포함여부
subProcessIncludeFlag - targetProcess에서 서브프로세스 분기가 있을 경우 서브 프로세스의 첨부도 포함여부(현재 지원X)
newProcessId - 새processID(프로세스 존재여부는 따지지 않음)
newNodeID - 새nodeID(업무상신 첨부로 설정하려면 'START_NODE'로 설정할 것)
newNodeSeq - 새nodeSeq(업무상신 첨부로 설정하려면 0으로 설정할 것)
newLocationCode - 새LocationCode(-1을 주면 기존 LocationCode를 그대로 복사함)
newUser - 새파일소유자(null을 주면 기존 파일소유자 정보를 복사함)
Returns:
int 복사한 첨부파일 개수
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

selectFileAttachByFileID

public static com.sds.acube.bpm.vo.common.FileAttachVO selectFileAttachByFileID(java.lang.String fileID)
                                                                         throws com.sds.acube.bpm.framework.api.ProcessorException
Parameters:
fileID - 저장서버 fileID - file 하나당 유닉함.
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

selectFileAttachByFileID

public static com.sds.acube.bpm.vo.common.FileAttachVO selectFileAttachByFileID(java.sql.Connection connection,
                                                                                java.lang.String fileID)
                                                                         throws com.sds.acube.bpm.framework.api.ProcessorException
Parameters:
fileID - 저장서버 fileID - file 하나당 유닉함.
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

deleteFileAttachByFileID

public static boolean deleteFileAttachByFileID(java.lang.String fileID)
                                        throws com.sds.acube.bpm.framework.api.ProcessorException
Parameters:
fileID - 저장서버 fileID - file 하나당 유닉함. [주의!] 실제로 DB에서 정보가 삭제됨.
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

deleteFileAttachByFileID

public static boolean deleteFileAttachByFileID(java.sql.Connection connection,
                                               java.lang.String fileID)
                                        throws com.sds.acube.bpm.framework.api.ProcessorException
Parameters:
fileID - 저장서버 fileID - file 하나당 유닉함. [주의!] 실제로 DB에서 정보가 삭제됨.
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

deleteFileAttachByProcessID

public static boolean deleteFileAttachByProcessID(java.lang.String processID)
                                           throws com.sds.acube.bpm.framework.api.ProcessorException
Parameters:
processID - [주의!] 실제로 DB에서 정보가 삭제됨.
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
Since:
2011.12.19 LEE IL YONG

deleteFileAttachByProcessID

public static boolean deleteFileAttachByProcessID(java.sql.Connection connection,
                                                  java.lang.String processID)
                                           throws com.sds.acube.bpm.framework.api.ProcessorException
Parameters:
processID - [주의!] 실제로 DB에서 정보가 삭제됨.
Throws:
com.sds.acube.bpm.framework.api.ProcessorException
Since:
2011.12.19 LEE IL YONG

deleteMarkFileAttachByFileID

public static boolean deleteMarkFileAttachByFileID(java.lang.String fileID)
                                            throws com.sds.acube.bpm.framework.api.ProcessorException
Parameters:
fileID - 저장서버 fileID - file 하나당 유닉함. 삭제 마크만 함.
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

deleteMarkFileAttachByFileID

public static boolean deleteMarkFileAttachByFileID(java.sql.Connection connection,
                                                   java.lang.String fileID)
                                            throws com.sds.acube.bpm.framework.api.ProcessorException
Parameters:
fileID - 저장서버 fileID - file 하나당 유닉함. 삭제 마크만 함.
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

saveAttachFileInfo

public static void saveAttachFileInfo(com.sds.acube.bpm.vo.common.FileAttachVO[] voList)
                               throws com.sds.acube.bpm.framework.api.ProcessorException
이미 저장서버에 파일이 저장되어 있고 관련 파일정보를 알 경우 BPM 파일로 등록할 수 있게 지원함. [주의!] 파일을 저장서버에서 다운받아서 다시 저장하는 게 아니라, 저정서버에 저장된 ID만 재활용하는 것임.
FileAttachVO의 fileID가 저장서버 ID 임.
FileAttachProcessor.getDefaultFileAttachVO()로 FileAttachVO를 만든 후 필수값만 수정해서 쓸 것.
필수값 : 업무투입시 - ProcessID,FileID,DisplayName,FileSize,LocationCode,UserID
필수값 : 업무투입이외 - ProcessID,NODE_ID,NODE_SEQ,FileID,DisplayName,FileSize,LocationCode,UserID

Parameters:
FileAttachVO[] - FileAttachVO 배열
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

saveAttachFileInfo

public static void saveAttachFileInfo(java.util.ArrayList voList)
                               throws com.sds.acube.bpm.framework.api.ProcessorException
이미 저장서버에 파일이 저장되어 있고 관련 파일정보를 알 경우 BPM 파일로 등록할 수 있게 지원함. [주의!] 파일을 저장서버에서 다운받아서 다시 저장하는 게 아니라, 저정서버에 저장된 ID만 재활용하는 것임.
FileAttachVO의 fileID가 저장서버 ID 임.
FileAttachProcessor.getDefaultFileAttachVO()로 FileAttachVO를 만든 후 필수값만 수정해서 쓸 것.
필수값 : 업무투입시 - ProcessID,FileID,DisplayName,FileSize,LocationCode,UserID
필수값 : 업무투입이외 - ProcessID,NODE_ID,NODE_SEQ,FileID,DisplayName,FileSize,LocationCode,UserID

Parameters:
voList - FileAttachVO ArrayList
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

saveAttachFileInfo

public static void saveAttachFileInfo(java.sql.Connection connection,
                                      com.sds.acube.bpm.vo.common.FileAttachVO[] voList)
                               throws com.sds.acube.bpm.framework.api.ProcessorException
이미 저장서버에 파일이 저장되어 있고 관련 파일정보를 알 경우 BPM 파일로 등록할 수 있게 지원함. [주의!] 파일을 저장서버에서 다운받아서 다시 저장하는 게 아니라, 저정서버에 저장된 ID만 재활용하는 것임.
FileAttachVO의 fileID가 저장서버 ID 임.
FileAttachProcessor.getDefaultFileAttachVO()로 FileAttachVO를 만든 후 필수값만 수정해서 쓸 것.
필수값 : 업무투입시 - ProcessID,FileID,DisplayName,FileSize,LocationCode,UserID
필수값 : 업무투입이외 - ProcessID,NODE_ID,NODE_SEQ,FileID,DisplayName,FileSize,LocationCode,UserID

Parameters:
Connection - DB Connection
FileAttachVO[] - FileAttachVO 배열
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

saveAttachFileInfo

public static void saveAttachFileInfo(java.sql.Connection connection,
                                      java.util.ArrayList voList)
                               throws com.sds.acube.bpm.framework.api.ProcessorException
이미 저장서버에 파일이 저장되어 있고 관련 파일정보를 알 경우 BPM 파일로 등록할 수 있게 지원함. [주의!] 파일을 저장서버에서 다운받아서 다시 저장하는 게 아니라, 저정서버에 저장된 ID만 재활용하는 것임.
FileAttachVO의 fileID가 저장서버 ID 임.
FileAttachProcessor.getDefaultFileAttachVO()로 FileAttachVO를 만든 후 필수값만 수정해서 쓸 것.
필수값 : 업무투입시 - ProcessID,FileID,DisplayName,FileSize,LocationCode,UserID
필수값 : 업무투입이외 - ProcessID,NODE_ID,NODE_SEQ,FileID,DisplayName,FileSize,LocationCode,UserID

Parameters:
Connection - DB Connection
voList - FileAttachVO ArrayList
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

getDefaultFileAttachVO

public static com.sds.acube.bpm.vo.common.FileAttachVO getDefaultFileAttachVO()
                                                                       throws com.sds.acube.bpm.framework.api.ProcessorException
saveAttachFileInfo() 호출하는 데 사용할 디폴트값을 가지는 FileAttachVO를 만들어 냄.

이 함수 호출 후 PROCESS_ID,NODE_ID(업무투입시엔 START_NODE),NODE_SEQ(업무투입시엔 0),LOCATION_CODE,USER_ID,DEPT_CODE(필수아님),FILE_ID,DISPLAY_NAME,FILE_NAME(필수아님),FILE_SIZE 만 설정하면 됨.
필수값 : 업무투입시 - ProcessID,FileID,DisplayName,FileSize,LocationCode,UserID
필수값 : 업무투입이외 - ProcessID,NODE_ID,NODE_SEQ,FileID,DisplayName,FileSize,LocationCode,UserID

Parameters:
Connection - DB Connection
FileAttachVO[] - FileAttachVO 배열
Throws:
com.sds.acube.bpm.framework.api.ProcessorException

getString

public static java.lang.String getString(java.lang.String filePath)
                                  throws com.sds.acube.bpm.framework.api.ProcessorException
문자열로 파일읽기

Parameters:
filePath - 파일경로
Returns:
내용 문자열
Throws:
java.lang.Exception
com.sds.acube.bpm.framework.api.ProcessorException

getString

public static java.lang.String getString(java.lang.String filePath,
                                         java.lang.String charsetName)
                                  throws com.sds.acube.bpm.framework.api.ProcessorException
문자열로 파일읽기

Parameters:
filePath - 파일경로
charsetName - 인코딩타입
Returns:
내용 문자열
Throws:
java.lang.Exception
com.sds.acube.bpm.framework.api.ProcessorException

saveFile

public static boolean saveFile(java.lang.String filePath,
                               java.lang.String content,
                               boolean overwriteFlag)
                        throws com.sds.acube.bpm.framework.api.ProcessorException
문자열을 파일로 저장

Parameters:
filePath - 파일경로
content - 본문내용
overwriteFlag - 덮어쓰기 여부
Returns:
boolean
Throws:
java.lang.Exception
com.sds.acube.bpm.framework.api.ProcessorException

saveFile

public static boolean saveFile(java.lang.String filePath,
                               java.lang.String content,
                               java.lang.String charsetName,
                               boolean overwriteFlag)
                        throws com.sds.acube.bpm.framework.api.ProcessorException
문자열을 파일로 저장

Parameters:
filePath - 파일경로
content - 본문내용
charsetName - 인코딩타입
overwriteFlag - 덮어쓰기 여부
Returns:
boolean
Throws:
java.lang.Exception
com.sds.acube.bpm.framework.api.ProcessorException