• You don't need a cursor for this, it's a simple UPDATE...FROM:

    UPDATE l SET

    CAL_HEADER_ID= @PVC_CALENDAR_HEADER_ID,

    PERIOD_NAME= t.ATTRIBUTE2, --@lvc_period_name,

    FROM_DATE= CONVERT(VARCHAR(11),LTRIM(RTRIM(t.ATTRIBUTE3)), 106), --@ld_from_date_1,

    TO_DATE= CONVERT(VARCHAR(11),LTRIM(RTRIM(t.ATTRIBUTE4)), 106), --@ld_to_date_1,

    QUARTER_NUM= t.ATTRIBUTE5, --@li_quarter_num,

    F_YEAR= t.ATTRIBUTE6, --@lvc_f_year,

    ADJUSTING_PERIOD = t.ATTRIBUTE7, --@li_adjusting_period,

    TRN= @PBI_TRN,

    STATUS= 1,

    SESSION_ID= @PBI_SESSION_ID

    FROM GL_CALENDAR_LINES l

    INNER JOIN TEMP_table t

    ON t.ACTUAL_LINE_ID = l.CAL_LINE_ID

    WHERE t.ACTION_FLAG = 'U'

    AND t.SESSION_ID = @PBI_SESSION_ID

    AND t.TRN=@PBI_TRN

    “Write the query the simplest way. If through testing it becomes clear that the performance is inadequate, consider alternative query forms.” - Gail Shaw

    For fast, accurate and documented assistance in answering your questions, please read this article.
    Understanding and using APPLY, (I) and (II) Paul White
    Hidden RBAR: Triangular Joins / The "Numbers" or "Tally" Table: What it is and how it replaces a loop Jeff Moden