Lotsia PLM: Форум по семейству систем PLM/PDM/TDM/ERP/Workflow

Для специалистов по внедрению систем, профессиональных администраторов и пользователей.
Текущее время: 17 июл 2018, 07:11

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
СообщениеДобавлено: 08 дек 2010, 17:21 
Не в сети
Новый участник

Зарегистрирован: 15 окт 2009, 10:12
Сообщения: 21
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
На VBA код работает, а вот скрипт не хочет и Компас дает ошибку

Sub Command()
Dim Kompas
Dim ksDocument2D
FileName = "c:\5.cdw"
On Error resume next
Set Kompas = CreateObject("Kompas.Application.5")
Kompas.Visible = True
Set ksDocument2D = Kompas.Document2D
ksDocument2D.ksOpenDocument (FileName), False
if Err.Number<>0 then
Set Kompas = GetObject(,"Kompas.Application.5")
Kompas.Visible = True
Set ksDocument2D = Kompas.Document2D
ksDocument2D.ksOpenDocument (FileName), False
end if
Dim doc
Set doc = Kompas.ActiveDocument2D
Dim docPar
Set docPar = Kompas.GetParamStruct(35)
doc.ksGetObjParam Reference, docPar, -1
MsgBox " Comment " & docPar.Comment
Dim sheet
Set sheet = docPar.GetLayoutParam
Dim standart
Set standart = sheet.GetSheetParam()
MsgBox " Format " & standart.Format
MsgBox " multiply " & standart.multiply
// До сих пор все работает, а дальше все MsgBox пустые и при закрытии Компаса идет сообщение неверный индекс массива, дальше используется динамический массив...
Dim stamp
Set stamp = ksDocument2D.GetStampEx(1)
If Not stamp Is Nothing And stamp.ksOpenStamp Then
stamp.ksColumnNumber 4
Dim numb
Dim Arr
Set Arr = stamp.ksGetStampColumnText(numb)
MsgBox " numb " & numb
Dim ArrpLineText
Set ArrpLineText = Kompas.GetDynamicArray(3)
Dim ItemLineText
Set ItemLineText = Kompas.GetParamStruct(29)
If Not ItemLineText Is Nothing And Not ArrpLineText Is Nothing And Not Arr Is Nothing Then
Arr.ksGetArrayItem 0, ItemLineText
MsgBox "Style " & ItemLineText.Style
Dim ArrpTextItem
Set ArrpTextItem = ItemLineText.GetTextItemArr
End If
Dim Item
Set Item = Kompas.GetParamStruct(31)
If Not ArrpTextItem Is Nothing And Not Item Is Nothing Then
ArrpTextItem.ksGetArrayItem 0, Item
Dim TextItemFont
Set TextItemFont = Item.GetItemFont
MsgBox "Soderzanie" & Item.s

End If
stamp.ksCloseStamp
Set ksDocument2D = Kompas.ActiveDocument2D
ksDocument2D.ksCloseDocument
End If
End Sub


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 10 дек 2010, 22:30 
Не в сети
Активный участник
Аватара пользователя

Зарегистрирован: 27 июл 2006, 22:17
Сообщения: 797
Откуда: Москва
Благодарил (а): 11 раз.
Поблагодарили: 12 раз.
И что?

_________________
"Лучше меньше, да лучше" (C)


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 13 дек 2010, 07:10 
Не в сети
Новый участник

Зарегистрирован: 15 окт 2009, 10:12
Сообщения: 21
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Может кто-то работал с api Компаса подскажите, где не правильно


Вернуться к началу
 Профиль  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB