# EssOtlCloseOutline

Description

EssOtlCloseOutline() frees all information associated with the outline.

Syntax

    ESS_FUNC_M EssOtlCloseOutline (hOutline);

ESS_HOUTLINE_T | hOutline

Parameters

hOutline | Outline context handle.

Return Value

Returns 0 if successful.

Notes

- This function should always be called if EssOtlNewOutline() or EssOtlOpenOutline() is called.
- If the object was locked when it was opened, you should call EssUnlockObject() before making this call.

Example

    #include <essapi.h>
    #include <essotl.h>

    ESS_STS_T          sts = 0;
    ESS_OBJDEF_T       Object;
    ESS_HOUTLINE_T     hOutline;
    ESS_APPNAME_T      szAppName;
    ESS_DBNAME_T       szDbName;
    ESS_OBJNAME_T      szFileName;

    memset(&Object, '\0', sizeof(Object));
    Object.hCtx = hCtx;
    Object.ObjType = ESS_OBJTYPE_OUTLINE;
    strcpy(szAppName, "Sample");
    strcpy(szDbName, "Basic");
    strcpy(szFileName, "Basic");
    Object.AppName = szAppName;
    Object.DbName = szDbName;
    Object.FileName = szFileName;

    sts = EssOtlOpenOutline(hCtx, &Object, ESS_TRUE,
          ESS_TRUE, &hOutline);

    /* body of code */
    if (!sts)
    {
     sts = EssOtlWriteOutline(hOutline, &Object);
    }

    /* restructure db using EssOtlRestructure() */
    if (!sts)
    {
     sts = EssOtlCloseOutline(hOutline);
    }

See Also

EssOtlOpenOutline()
EssOtlWriteOutline()
EssOtlRestructure()