Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
tarasov-es Участник со стажем
Вступление в Клуб: 18.05.2011
|
Пн Июн 06, 2011 07:28  Ошибка VBScript |
|
Полезность: Нет оценки
|
Коллеги, добрый день.
Пытаюсь выполнить операцию на фин счетах - "формировать сообщение об открытии(закрытии счета)".
При этом получаю ошибку - скрин во вложении. Подскажите, если кто сталкивался, как пофиксить?[/img] |
|
 |
Alexsey Эксперт
Вступление в Клуб: 06.09.2007
|
Пн Июн 06, 2011 09:23  Re: Ошибка VBScript |
|
Полезность: Нет оценки
|
tarasov-es пишет: | Коллеги, добрый день.
Пытаюсь выполнить операцию на фин счетах - "формировать сообщение об открытии(закрытии счета)".
При этом получаю ошибку - скрин во вложении. Подскажите, если кто сталкивался, как пофиксить?[/img] |
что написано с клиент-скрипте? _________________ всегда есть как минимум 2 выхода |
|
 |
tarasov-es Участник со стажем
Вступление в Клуб: 18.05.2011
|
Пн Июн 06, 2011 09:45  Re: Ошибка VBScript |
|
Полезность: Нет оценки
|
в клиент скрипте следующее
Код: | ' подгружаем библиотеку "Библиотека VBA функций для печати в Word"
'#include ::[RUNTIME].[MSWORD_SCRIPT]
Public Function Main(LastControl)
if LastControl is nothing then
'if v_vis.Text = "1" then
'Label11.Visible = true
'Date3.Visible = true
'end if
end if
Memo1.Visible = (Check1.Value= "0")
Tabbed1.Visible = (Check1.Value= "0")
Label12.Visible = (Check1.Value= "0")
Combo1.Visible = (Check1.Value= "0")
If LastControl is p_num Then
p_num.ForeColor = vbRed
End If
EXECUTE v_vis.TEXT
v_vis.TEXT = ""
If LastControl is OK then
if Dest.Text <> "" Then
DO
Execute Dest.Text
Call Form1.ScriptServerValidate (OK, "OK")
Loop While Dest.Text <> ""
End If
If Grid_msg_sf.Rows > 1 Then
For i = 1 To Grid_msg_sf.Rows - 1
if Grid_msg_sf.Value(i, 12) = 1 then 'Формировать уведомление клиенту
If Grid_msg_sf.Text(i, 4) = "ФСС" Then
if not OpenWordDoc (WrdApp, WrdDoc, GetData ("FSS_REPORTFILE")) then
Main = False
Exit function
end if
For Each f in WrdDoc.FormFields
Call SetFormField(WrdApp, WrdDoc, f.Name)
if (Check1.Value = 1 and f.Name = "OP_STR") or (Check1.Value = 0 and f.Name = "CL_STR") then
Set ffield = WrdDoc.FormFields(f.Name)
ffield.Select
WrdApp.Selection.Font.Underline = true
end if
Next
Call SetWordVisible (WrdApp, WrdDoc)
ElseIf Grid_msg_sf.Text(i, 4) = "ПФР" Then
if not OpenWordDoc (WrdApp, WrdDoc, GetData ("PFR_REPORTFILE")) then
Main = False
Exit function
end if
For Each f in WrdDoc.FormFields
Call SetFormField(WrdApp, WrdDoc, f.Name)
if (Check1.Value = 0 and (f.Name = "OP_STR" or f.Name = "OP_DSTR")) or (Check1.Value = 1 and (f.Name = "CL_STR" or f.Name = "CL_DSTR")) then
Set ffield = WrdDoc.FormFields(f.Name)
ffield.Select
WrdApp.Selection.Font.Strikethrough = true
end if
Next
Call SetWordVisible (WrdApp, WrdDoc)
End If
End If
Next
End if
End If
Main = True 'Результат валидатора (True, False, NULL)
End Function
private sub Grid_msg_sf_RowColChange
row_num.value = Grid_msg_sf.IndexByRow (Grid_msg_sf.Row)
Call Form1.ScriptServerValidate (OK, "GRID_ROW_CHANGED")
end sub
|
|
|
 |
Alkov Профи
Вступление в Клуб: 23.09.2010
|
Пн Июн 06, 2011 10:33   |
|
Полезность: Нет оценки
|
соответственно хотелось бы добавить
MsgBox v_vis.TEXT
перед
EXECUTE v_vis.TEXT
и
MsgBox Dest.Text
перед
Execute Dest.Text
что там будет при нажатии ok ? |
|
 |
tarasov-es Участник со стажем
Вступление в Клуб: 18.05.2011
|
Пн Июн 06, 2011 11:10   |
|
Полезность: Нет оценки
|
сделал как Вы сказали.
Проскочило 4 сообщения.
После того как я со всеми согласился операция отработала как нужно...
Странно.. Как бы сделать так чтоб без сообщений. |
|
 |
Alexsey Эксперт
Вступление в Клуб: 06.09.2007
|
Пн Июн 06, 2011 13:38   |
|
Полезность: Нет оценки
|
из скрипта 2 видно как на грид вешается вьюхи и закрываются на доступность элементы... 3-й и 4-й скрипты это выгрузка в Эксель.
Да совсем забыл.. индекс в гриде начинается с 1-цы.
Обычно такая ошибка, как приведена в примере, возникает когда индексы в гриде идут не по порядку. Посмотрите в этом направлении. _________________ всегда есть как минимум 2 выхода |
|
 |
tarasov-es Участник со стажем
Вступление в Клуб: 18.05.2011
|
Пн Июн 06, 2011 13:53   |
|
Полезность: Нет оценки
|
Alexsey пишет: | из скрипта 2 видно как на грид вешается вьюхи и закрываются на доступность элементы... 3-й и 4-й скрипты это выгрузка в Эксель.
Да совсем забыл.. индекс в гриде начинается с 1-цы.
Обычно такая ошибка, как приведена в примере, возникает когда индексы в гриде идут не по порядку. Посмотрите в этом направлении. |
почему то не работает только для счетов 40702* для любых других работает |
|
 |
Alexsey Эксперт
Вступление в Клуб: 06.09.2007
|
Пн Июн 06, 2011 15:10   |
|
Полезность: Нет оценки
|
а можно увидеть скрин грида с 40702*? _________________ всегда есть как минимум 2 выхода |
|
 |
Volod Эксперт
Вступление в Клуб: 19.09.2007
|
Пн Июн 06, 2011 18:51   |
|
Полезность: Нет оценки
|
Может поставить "MS Script Debugger"? |
|
 |
|