GreenTools for Microsoft Apps (G4MS) has been updated to v7.30 which includes new OneDrive functionality. This update allows you to delete, download, create sharing links, and send sharing invitations for items in your OneDrive.
The following functions are now included in the F.G4MSOD (One Drive) service program:
Some examples are as follows:
H DFTACTGRP(*NO) ACTGRP('G4MS') BNDDIR('BVSTOOLS')
****************************************************************
* Imports
****************************************************************
/COPY QCOPYSRC,P.G4MSOD
****************************************************************
D CRLF C CONST(X'0D25')
*
D rc S 10i 0
D itemID S 256
D errorMsg S 256
D shareLink S 65535 Varying
D shareID S 65535 Varying
/free
// Get an item ID
rc = #g4msod_setValue('id':'bvstone@bvstools.com');
rc = #g4msod_setValue('path':'/Attachments/myfile.pdf');
itemID = #g4msod_getItemID(errorMsg);
// Delete an item by name
rc = #g4msod_setValue('id':'bvstone@bvstools.com');
rc = #g4msod_setValue('path':'/Attachments/myfile.pdf');
rc = #g4msod_deleteItem(errorMsg);
// Delete an item by ID
rc = #g4msod_setValue('id':'bvstone@bvstools.com');
rc = #g4msod_setValue('item_id':itemID);
rc = #g4msod_deleteItem(errorMsg);
// Download an item by name
rc = #g4msod_setValue('id':'bvstone@bvstools.com');
rc = #g4msod_setValue('path':'/Attachments/myfile.pdf');
rc = #g4msod_setValue('download_to_filename':'/tmp/myfile.pdf');
rc = #g4msod_downloadItem(errorMsg);
// Get a link to share an item
rc = #g4msod_setValue('id':'bvstone@bvstools.com');
rc = #g4msod_setValue('path':'/Attachments/myfile.pdf');
rc = #g4msod_setValue('link_type':'edit');
rc = #g4msod_setValue('link_scope':'anonymous');
rc = #g4msod_getShareableLink(shareLink:shareID:errorMsg);
// Remove the permissions from the created link
rc = #g4msod_setValue('id':'bvstone@bvstools.com');
rc = #g4msod_setValue('path':'/Attachments/myfile.pdf');
rc = #g4msod_setValue('permission_id':shareID);
rc = #g4msod_removePermissions(errorMsg);
// Send a sharing invite to a group of email addresses
rc = #g4msod_setValue('id':'bvstone@bvstools.com');
rc = #g4msod_setValue('path':'/Attachments/myfile.pdf');
rc = #g4msod_setValue('message':'Here is the file!');
// Add recipients... up to 200 allowed
rc = #g4msod_addRecipient('jim@yahoo.com');
rc = #g4msod_addRecipient('mary@yahoo.com');
rc = #g4msod_setValue('send_invite':'*YES');
rc = #g4msod_setValue('require_signon':'*YES');
rc = #g4msod_setValue('roles':'read');
rc = #g4msod_sendItemInvite(errorMsg);
One issue I found (probably a bug on Microsoft's side) is when you are sending a sharing invite and specify require_signon as *NO, the message you send with the invite defaults to one of Microsoft's default messages. I have opened a ticket with Microsoft on this issue.
Documentation can be found at in the G4MS section of our online documentation.