v3.0.0.9: fix col index 0->1, fix insurance from RASSCHET, fix Index 1-based
This commit is contained in:
+1
-1
@@ -60,7 +60,7 @@
|
|||||||
<ScriptVariant>Russian</ScriptVariant>
|
<ScriptVariant>Russian</ScriptVariant>
|
||||||
<DefaultLanguage>Language.Русский</DefaultLanguage>
|
<DefaultLanguage>Language.Русский</DefaultLanguage>
|
||||||
<Vendor>ООО "Профи-Софт", код партнера 42575-13, г.Байконур.</Vendor>
|
<Vendor>ООО "Профи-Софт", код партнера 42575-13, г.Байконур.</Vendor>
|
||||||
<Version>3.0.0.7</Version>
|
<Version>3.0.0.8</Version>
|
||||||
<DefaultLanguage>Language.Русский</DefaultLanguage>
|
<DefaultLanguage>Language.Русский</DefaultLanguage>
|
||||||
<BriefInformation>
|
<BriefInformation>
|
||||||
<v8:item>
|
<v8:item>
|
||||||
|
|||||||
@@ -148,12 +148,21 @@
|
|||||||
// ============================================================================
|
// ============================================================================
|
||||||
|
|
||||||
// Создаёт Соответствие для поиска колонок по имени заголовка.
|
// Создаёт Соответствие для поиска колонок по имени заголовка.
|
||||||
// Ключ — имя заголовка (нижний регистр), значение — номер колонки (0-based).
|
// Ключ — имя заголовка (нижний регистр), значение — номер колонки (1-based).
|
||||||
&НаКлиенте
|
&НаКлиенте
|
||||||
Функция СоздатьИндексЗаголовков(Лист, НомерСтрокиЗаголовков)
|
Функция СоздатьИндексЗаголовков(Лист, НомерСтрокиЗаголовков)
|
||||||
Индекс = Новый Соответствие;
|
Индекс = Новый Соответствие;
|
||||||
Для Колонка = 0 По Лист.Cells(НомерСтрокиЗаголовков, 1).End(-4161).Column - 1 Цикл
|
// Определяем количество колонок: ищем последнюю непустую колонку
|
||||||
Имя = СокрЛП(НРег(Лист.Cells(НомерСтрокиЗаголовков, Колонка + 1).Value));
|
ПоследняяКолонка = 1;
|
||||||
|
Для Колонка = 1 По 100 Цикл
|
||||||
|
Значение = Лист.Cells(НомерСтрокиЗаголовков, Колонка).Value;
|
||||||
|
Если Значение <> Неопределено И Значение <> "" Тогда
|
||||||
|
ПоследняяКолонка = Колонка;
|
||||||
|
КонецЕсли;
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
Для Колонка = 1 По ПоследняяКолонка Цикл
|
||||||
|
Имя = СокрЛП(НРег(Лист.Cells(НомерСтрокиЗаголовков, Колонка).Value));
|
||||||
Если ЗначениеЗаполнено(Имя) Тогда
|
Если ЗначениеЗаполнено(Имя) Тогда
|
||||||
Индекс.Вставить(Имя, Колонка);
|
Индекс.Вставить(Имя, Колонка);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
@@ -162,7 +171,7 @@
|
|||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
// Находит номер колонки по ключевому слову в заголовке.
|
// Находит номер колонки по ключевому слову в заголовке.
|
||||||
// Возвращает номер колонки (0-based) или -1 если не найдено.
|
// Возвращает номер колонки (1-based) или -1 если не найдено.
|
||||||
&НаКлиенте
|
&НаКлиенте
|
||||||
Функция НайтиКолонкуПоЗаголовку(ИндексЗаголовков, КлючевоеСлово)
|
Функция НайтиКолонкуПоЗаголовку(ИндексЗаголовков, КлючевоеСлово)
|
||||||
Ключ = НРег(КлючевоеСлово);
|
Ключ = НРег(КлючевоеСлово);
|
||||||
@@ -404,7 +413,7 @@
|
|||||||
|
|
||||||
Пока Истина Цикл
|
Пока Истина Цикл
|
||||||
// Попытка 1: читаем значение напрямую (xls)
|
// Попытка 1: читаем значение напрямую (xls)
|
||||||
ФИО = ПрочитатьЯчейкуСтрока(ЛистРасчет, Ном, 0);
|
ФИО = ПрочитатьЯчейкуСтрока(ЛистРасчет, Ном, 1);
|
||||||
|
|
||||||
// Попытка 2: если значение пустое — проверяем формулу (xlsm)
|
// Попытка 2: если значение пустое — проверяем формулу (xlsm)
|
||||||
ЛистСотрудника = Неопределено;
|
ЛистСотрудника = Неопределено;
|
||||||
@@ -450,12 +459,8 @@
|
|||||||
|
|
||||||
МассивДанных.Добавить(Строка);
|
МассивДанных.Добавить(Строка);
|
||||||
|
|
||||||
// Чтение страховых взносов
|
// Чтение страховых взносов (из РАСЧЕТ, т.к. на листах сотрудников взносов нет)
|
||||||
Если ЛистСотрудника <> Неопределено Тогда
|
СтрВзносов = ПрочитатьСтрокуВзносов(ЛистРасчет, Ном, ФИО, ИндексЗаголовков);
|
||||||
СтрВзносов = ПрочитатьСтрокуВзносов(ЛистСотрудника, 2, ФИО, ИндексЗаголовков);
|
|
||||||
Иначе
|
|
||||||
СтрВзносов = ПрочитатьСтрокуВзносов(ЛистРасчет, Ном, ФИО, ИндексЗаголовков);
|
|
||||||
КонецЕсли;
|
|
||||||
Если СтрВзносов <> Неопределено Тогда
|
Если СтрВзносов <> Неопределено Тогда
|
||||||
МассивВзносов.Добавить(СтрВзносов);
|
МассивВзносов.Добавить(СтрВзносов);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|||||||
Reference in New Issue
Block a user