Příklad 20 - Vytvoření kooperace, odvezení, zrušení odvezení, přivezení, zrušení přivezení
Následující příklad popisuje práci s objektem Kooperace. Nejprve provede jeho vytvoření, následně provede jeho odvezení, pak zrušení odvezení, dále přivezení a zrušení přivezení. Místa, kde je nutné při případném použití tohoto příkladu dosadit vlastní OID, jsou v textu označeny znakem "%". Použitá syntaxe odpovídá prostředí Visual Basic.
Sub Cooperation()
Set mApplication = CreateObject("AbraOLE.Application")
' Vytvoření kooperace
Set CooObject = mApplication.CreateObject("@PLMCooperation")
Set CooData = mApplication.CreateValues("@PLMCooperation")
CooObject.PrefillValues CooData
With CooData
.ValueByName("JobOrder_ID") = % ID výrobního příkazu%
.ValueByName("Division_ID") = % ID střediska%
End With
CooID = CooObject.CreateNewFromValues(CooData)
' Odvezení, protože je zadáno 0, tak datum odvezení je rovno datu na serveru
Set CooData = CooObject.GetValues(CooID)
' V případě chyby se zeptáme na poslední validační hlášení
If Not CooObject.TakeOff(0) Then
MsgBox (CooObject.GetLastMessage)
End If
CooObject.UpdateValues CooID, CooData
' Zrušení odvezení
Set CooData = CooObject.GetValues(CooID)
' V případě chyby se zeptáme na poslední validační hlášení
If Not CooObject.TakeOffCancel Then
MsgBox (CooObject.GetLastMessage)
End If
CooObject.UpdateValues CooID, CooData
' Přivezení, protože je zadáno 0, tak datum přivezení je rovno datu na serveru
Set CooData = CooObject.GetValues(CooID)
' V případě chyby se zeptáme na poslední validační hlášení
If Not CooObject.TakeIn(0) Then
MsgBox (CooObject.GetLastMessage)
End If
' Pokud bychom zavolali přivezení na neodvezenou kooperaci, dostaneme po zavolání CooObject.GetLastMessage text "Kooperace ještě nebyla odvezena"
CooObject.UpdateValues CooID, CooData
' Zrušení přivezení
Set CooData = CooObject.GetValues(CooID)
' V případě chyby se zeptáme na poslední validační hlášení
If Not CooObject.TakeInCancel Then
MsgBox (CooObject.GetLastMessage)
End If
' Pokud bychom zavolali přivezení na neodvezenou kooperaci, dostaneme po zavolání CooObject.GetLastMessage text "Kooperace ještě nebyla odvezena"
CooObject.UpdateValues CooID, CooData
End Sub