Я сейчас сталкиваюсь с этой проблемой. Ошибка «Нет строки в позиции 0». Теперь мы используем один и тот же код для другой таблицы, и он отлично работает, но я не знаю, в чем проблема с этой конкретной таблицей.
function SetGlobalAlias_CommandExecuted(sender : System.Object, cmdArgs : Ico.Gwx.CommandExecutionEventArgs)
{
var FieldName: String[] = ["@A" , "@B" , "@C" , "@D" , "@E" , "@F" , "@G" , "@H" , "@I" , "@J" , "@K" , "@L" , "@M" , "@N" , "@O" , "@P" , "@Q"];
var FieldType: int[] = [0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0]
var wfCtl : Ico.Gwx.GwxWindowsFormsControl;
var textbox : System.Windows.Forms.TextBox;
var combobox : System.Windows.Forms.ComboBox;
for (var i=0; i<FieldName.Length; i++) {
var Name: String = FieldName[i].Replace('@', '');
if (FieldType[i] == 0) {
wfCtl = Ico.Gwx.GwxWindowsFormsControl(ThisConfiguration.GetObjectByName(Name));
textbox = System.Windows.Forms.TextBox(wfCtl.Control);
if(textbox.Text=="")
{
ThisWindow.SetGlobalAliases('#'+Name+'="";');
}
else
{
ThisWindow.SetGlobalAliases("#"+Name+"="+textbox.Text+";");
//textbox.Text = "";
//MessageBox.Show ("hi");
}
}
else if (FieldType[i] == 1) {
wfCtl = Ico.Gwx.GwxWindowsFormsControl(ThisConfiguration.GetObjectByName(Name));
combobox = System.Windows.Forms.ComboBox(wfCtl.Control);
ThisWindow.SetGlobalAliases("#"+Name+"="+combobox.SelectedValue+";");
//combobox.SelectedIndex = 0;
}
}
var ppt_btu_edit = ThisConfiguration.GetDynamicObjectByName("ButtonDB1");
ppt_btu_edit.WriteValueToPrimaryDataSource(1);
}