GDoc

Description

In BBj 11.0 and higher, the GDoc class is one of the BBj CustomObjects that comprises the GApps utility.  This class can used in a BBj application to access and manipulate a Google Document.

Creation

The GApps class is found in <bbj install>/utils/gapps/gapps.bbj.

To create a GDoc use one of the below GDocService methods:

GDocService::getDocument(string resourceID)

GDocService::getDocument(string title, string type, string folder, int createIfNeeded)

GDocService::getDocument(string title, string type, string mimeType, string folder, int createIfNeeded)

GDocService::uploadDocument(string fileName, string title, string type, string folder, boolean convert)

GDocService::uploadDocument(string fileName, string title, string type, string folder, boolean convert, boolean overwrite)

Parameters

None.

Methods of GDoc

Return Value

Method

void

download(string fileName)

string

getHref()

string

getMimeType()

string

getResourceID()

int

getRole(string id)

int

getScope(string id)

string

getTitle()

string

getType()

void

openInBrowser()

boolean

remove()

void

setPermissions(string id, int scope, int role)

Remarks

None.

Constants

Name

Value

DOWNLOAD_ERROR

308

PERMISSIONS_ERROR

309

NO_ROLE

0

OWNER_ROLE

1

PEEKER_ROLE

2

READER_ROLE

3

WRITER_ROLE

4

DEFAULT_SCOPE

0

DOMAIN_SCOPE

1

GROUP_SCOPE

2

USER_SCOPE

3

DOCUMENT_TYPE

document

SPREADSHEET_TYPE

spreadsheet

PRESENTATION_TYPE

presentation

DRAWING_TYPE

drawing

PDF_TYPE

pdf

FORM_TYPE  

form

FILE_TYPE  

file

FOLDER_TYPE  

folder

Example

rem Use statements
use ::gapps.bbj::GDocFolderSelectionDialog
use ::gapps.bbj::GDocSaveDialog
use ::gapps.bbj::GDocOpenDialog
use ::gapps.bbj::GDoc

rem Run a demo  

rem mode$="folder"
rem mode$="save"

rem Create a folder selection dialog
declare GDocFolderSelectionDialog folderSelectionDialog!
folderSelectionDialog! = new GDocFolderSelectionDialog()
rc = folderSelectionDialog!.doModal()

if (rc = GDocFolderSelectionDialog.getSELECTED())
  documentFolder$ = folderSelectionDialog!.getDocumentFolder()
  x=MsgBox(documentFolder$,0,"Selected folder")
endif

rem Create a save dialog
declare GDocSaveDialog saveDialog!
saveDialog! = new GDocSaveDialog()
saveDialog!.setDefaultType(GDoc.getSPREADSHEET_TYPE())
rc = saveDialog!.doModal()

if (rc = GDocSaveDialog.getSELECTED())
  title$ = saveDialog!.getDocumentTitle()
  type$ = saveDialog!.getDocumentType()
  folder$ = saveDialog!.getDocumentFolder()
  x=MsgBox(folder$ +"/" + title$,0,"Selected document")
endif

rem Create a open dialog
declare GDocOpenDialog openDialog!
openDialog! = new GDocOpenDialog()
openDialog!.setTitle("Google Documents")
openDialog!.setMultipleSelection(1)

rc = openDialog!.doModal()

if (rc = GDocOpenDialog.getSELECTED())
  declare BBjVector selectedDocs!    

  selectedDocs! = openDialog!.getSelectedDocs()
  numSelectedDocs = selectedDocs!.size()

  if (numSelectedDocs > 0)
      for i = 0 to numSelectedDocs-1
          declare GDoc selectedDoc!
          selectedDoc! = cast(GDoc,selectedDocs!.getItem(i))
          selectedDoc!.openInBrowser()
      next i
  endif
endif

release

See Also

BBj Object Syntax

GApps