1

Тема: Ошибка при формировании дат запуска выпуска макросом

Здравствуйте!

Помогите пожалуйста разобраться в причине появления ошибки.
После запуска макроса "Расчет дат запуска/выпуска по выделенным ПСп" через некоторое время макрос останавливается с ошибкой "Требуется объект: 'ICalendar'".

Ошибка возникает в функции Function SetICalendarType( CurrentDate )

в строке:   Call ICalendar.SetCurrentDate( CurrentDate )

Не пойуму в чем причина.
Проверил, календарь на 2017г создан.

Заранее благодарен.

Re: Ошибка при формировании дат запуска выпуска макросом

А раньше макрос работал? Я так понимаю это какой наш макрос из демо базы?
И уточните пожалуйста версию TechnologiCS.

Наиболее вероятная причина что зарегистрировано не то АПИ. Календари требуют полное АПИ, проверьте это (Reg_TCSApi.bat).

3

Re: Ошибка при формировании дат запуска выпуска макросом

Макросом раньше не пользовались.
Решили пройти (протестировать) возможности планирования в TechnologiCS и столкнулись с данной проблеммой.
Версия TechnologiCS - 6.3.0.0 (19106) SP2.
Работаем в Полной версии конфигурации.
Пробовал зарегистрировать полное API еще раз, не помогло, ошибка таже самая.
Возникает в SCDN_GetLaunchReleaseDate в функции

Function SetICalendarType( CurrentDate ) 'Îòêðûòü êàëåíäàðü
    If IsEmpty(CurrentDate) Then stop : Exit Function
    Dim ResultFunction : ResultFunction = False
    If IsEmpty(ICalendarType) Then
        Set ICalendarType = TCSApp.Manufacturing.CalendarType
        If IsEmpty(CalendarTypeNote) Then
            Call ICalendarType.First   
            CalendarTypeNote = ICalendarType.Properties( "NOTE" ).DisplayText
        End If
        If ICalendarType.Locate( "NOTE", CalendarTypeNote, 0 ) Then
            Set ICalendar = ICalendarType.Properties( "Calendar" ).AsIDispatch
        End If
    End If
    Call ICalendar.SetCurrentDate( CurrentDate )
    If ICalendar.Locate( "Date", DateValue( CurrentDate ), 0 ) Then
        ResultFunction = True
    Else
        Call TCSApp.ShowErrorMessage( "Îòñóòñòâóåò êàëåäðàäü '" & CalendarTypeNote & "' íà " & CurrentDate )
    End If   
    SetICalendarType = ResultFunction
End Function           

в строке вызова    Call ICalendar.SetCurrentDate( CurrentDate )

4

Re: Ошибка при формировании дат запуска выпуска макросом

Подскажите пожалуйста кроме описания модуля "Производство" существует пошаговая методика ведения планирования в TechnologiCS?

Re: Ошибка при формировании дат запуска выпуска макросом

переменная CalendarTypeNote указывает на  календарь которого нет видимо.

Re: Ошибка при формировании дат запуска выпуска макросом

В демо базе 6.3 макрос работает. Попробуйте импортировать скрипты которые вы используете оттуда.

Re: Ошибка при формировании дат запуска выпуска макросом

lesvg пишет:

Подскажите пожалуйста кроме описания модуля "Производство" существует пошаговая методика ведения планирования в TechnologiCS?

Отправил Вам на почту указанную в профиле.

Спасибо сказали: lesvg1