O
olga13
Добрый день! Подскажите, как можно передать массив, созданный в VBS, в качестве параметра функции 1С?
Не очень понятно. Может приведите текст в 5 строк?
Private Sub CommandButton1_Click()
Set MSK = CreateObject("MercuryCom.FPDrv1C2")
FK_Port = CLng(1)
FK_Port_Speed = CLng(9600)
FK_Password = CStr("0000")
FK_Section = CLng(1)
FK_Nalog = CBool(False)
FK_Model = CLng(11)
FK_Chek_N = CLng(0)
FK_Smena = CLng(0)
ReDim pArray(5)
pArray(0) = FK_Port
pArray(1) = FK_Port_Speed
pArray(2) = FK_Password
pArray(3) = FK_Section
pArray(4) = FK_Nalog
pArray(5) = FK_Model
Dim Err_message As String
Dim Id_device As String
MsgBox ("Версия ПО -" + MSK.GetVersion)
If Not MSK.DeviceTest(pArray, Err_message) Then
MsgBox Err_message
Exit Sub
End If
If Not MSK.Open(pArray, Id_device) Then
MsgBox ("Ошибка 1")
Exit Sub
End If
If Not MSK.CashInOutcome(Id_device, 12500) Then
MsgBox ("Ошибка 2")
Exit Sub
End If
End Sub
Процедура Выполнить()
ККМ = CreateObject("MercuryCom.FPDrv1C2");
Сообщить(ККМ.ПолучитьНомерВерсии());
TextScript="
|Function Run()
|
|FK_Port = CLng(1)
|FK_Port_Speed = CLng(9600)
|FK_Password = CStr(0000)
|FK_Section = CLng(1)
|FK_Nalog = CBool(False)
|FK_Model = CLng(11)
|
|ReDim pArray(5)
|pArray(0) = FK_Port
|pArray(1) = FK_Port_Speed
|pArray(2) = FK_Password
|pArray(3) = FK_Section
|pArray(4) = FK_Nalog
|pArray(5) = FK_Model
|
|End Function
|";
ScrptCtrl = CreateObject("MSScriptControl.ScriptControl");
ScrptCtrl.Language = "vbscript";
ScrptCtrl.AddCode(TextScript);
ScrptCtrl.Run("Run");
Массив = ScrptCtrl.eval("pArray");
ККМ.ТестУстройства(Массив);
КонецПроцедуры
NB !
Я никаких массивов не создавал![]()
Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab