POPBill Developers
가이드

튜토리얼

MS Access 개발환경에서 팝빌 SDK를 추가하여 팩스 전송 (SendFAX) 함수를 구현하는 예시입니다.

1. POPBiLL SDK 추가

① 팝빌 연동자료실에서 MS Access SDK 예제코드 다운로드 후 압축을 해제합니다.

② 압축해제한 팩스 서비스 Access 예제파일에 포함된 클래스 모듈을 기존 프로젝트의 클래스 모듈로 추가합니다.

2. POPBiLL SDK 설정

Window 폼 코드에 API Key 와 클래스를 선언하고 Form_Load() 서브모듈에 팩스 클래스 초기화 코드를 추가합니다.

① Form API Key, 클래스 객체 선언

Option Explicit

' 링크아이디
Private Const LinkID = "TESTER"

' 비밀키
Private Const SecretKey = "SwWxqU+0TErBXy/9TVjIPEnI0VTUMMSQZtJf3Ed8q3I="

' 팩스 서비스 객체 선언
Private FaxService As New PBFAXService

② Form_Load() 서브모듈

Private Sub Form_Load()

  ' 팩스 서비스 객체 초기화
  FaxService.Initialize LinkID, SecretKey

  ' 연동환경 설정, True-테스트, False-운영(Production), (기본값:False)
  FaxService.IsTest = True

  ' 인증토큰 IP 검증 설정, True-사용, False-미사용, (기본값:True)
  FaxService.IPRestrictOnOff = True

  ' 로컬시스템 시간 사용여부, True-사용, False-미사용, (기본값:False)
  FaxService.UseLocalTimeYN = False
End Sub

3. SendFAX 기능 구현

Form에 버튼을 생성하고 버튼의 Click Event 코드에 팩스 전송 (SendFAX) 함수 호출 코드를 작성합니다.

Private Sub btnSendFAX_Click()
    Dim sendNum As String
    Dim senderName As String
    Dim FilePaths As New Collection
    Dim FilePath As String
    Dim fileDialog As Object
    Dim ReceiptNum As String
    Dim adsYN As Boolean
    Dim title As String
    Dim requestNum As String
    Dim corpNum As String
    Dim reserveDT As String
    Dim userID As String

    Set fileDialog = Application.fileDialog(1)

    If fileDialog.Show = True Then
        FilePath = fileDialog.SelectedItems(1)
        FilePaths.Add (FilePath)
    Else
        Exit Sub
    End If

    '팝빌회원 사업자번호
    corpNum = "1234567890"

    '팝빌회원 아이디
    userID = "testkorea"

    '발신번호
    sendNum = "07043042992"

    '발신자명
    senderName = "발신자명"

    '수신정보 배열 선언
    Dim receivers As New Collection
    Dim receiver As New PBReceiver

    '수신팩스번호
    receiver.receiverNum = "070111222"

    '수신자명
    receiver.receiverName = "수신자 명칭"
    receivers.Add receiver

    '광고팩스 전송여부
    adsYN = False

    '팩스제목
    title = "팩스 단건전송 제목"

    '예약전송일시
    reserveDT = ""

    '요청번호, 파트너가 전송요청에 대한 관리번호를 직접 할당하여 관리하는 경우 기재
    '최대 36자리, 영문, 숫자, 언더바('_'), 하이픈('-')을 조합하여 사업자별로 중복되지 않도록 구성
    requestNum = ""

    ReceiptNum = FaxService.SendFAX(corpNum, sendNum, receivers, FilePaths, reserveDT, userID, senderName, adsYN, title, requestNum)

    If ReceiptNum = "" Then
        MsgBox ("응답코드 : " + CStr(FaxService.LastErrCode) + vbCrLf + "응답메시지 : " + FaxService.LastErrMessage)
        Exit Sub
    End If

    MsgBox "접수번호 : " + ReceiptNum

End Sub

4. 결과 확인

함수 호출 반환 결과는 아래와 같습니다.
- 성공 : Response code 로 숫자 1 반환
- 실패 : PopbillException 으로 음의 정수 8자리 숫자값 오류코드와 오류메시지 반환 [오류코드]