Deleting Folders

The following folder types support deletion:

F_INSTALLJOB

F_INVENTORY

F_PACKAGE

F_PROGITEM

F_REMPKGJOB

F_SRVINSTALL

F_WCL

When your application deletes a folder, it must first call SmsUnlinkFolder to unlink the folder from its parent (within the application's memory) and call SmsCommitFolder to delete the folder from the site database.

SmsUnlinkFolder removes the specified folder from the parent's folder list within your application's memory. An unlinked folder is not deleted from the site database until your application uses the SmsCommitFolder function to remove the folder from the database.

Note Before an F_PACKAGE folder is deleted, each of its subfolders (F_WCL, F_PROGITEM, and F_INVENTORY) must be unlinked and committed first. In addition, in order to delete F_WCL, F_PROGITEM, and F_INVENTORY folders, you must delete the F_PACKAGE folder that contains them, as well as all subfolders within it. Note that F_WCL, F_PROGITEM, and F_INVENTORY folders are not removed from the site database until their parent folder is unlinked and committed. When an unlinked F_WCL, F_PROGITEM, or F_INVENTORY folder is committed, the SmsCommitFolder function returns SMS_PARENT_NEEDS_COMMIT.