Клонировать()
Тип: ТаблицаДанных (DataTable).
Клонирует структуру ТаблицаДанных (DataTable), включая все схемы и ограничения ТаблицаДанных (DataTable).
ТаблицаДанных2 = ТаблицаДанных1.Клонировать();
Перем ТФ, Таблица1; Процедура ПриОткрытии() Экспорт Количество = Таблица1.ТаблицаДанных.Строки.Количество; ТФ.Уведомление().Показать("Количество = " + Количество, -1); КонецПроцедуры Функция РазобратьСтроку(Строка, Разделитель) Стр = СтрЗаменить(Строка,Разделитель,символы.ПС); М = Новый Массив; Если ПустаяСтрока(Стр) Тогда Возврат М; КонецЕсли; Для Ч = 1 По СтрЧислоСтрок(Стр) Цикл М.Добавить(СтрПолучитьСтроку(Стр,Ч)); КонецЦикла; Возврат М; КонецФункции ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptTerminalGui\OneScriptTerminalGui\bin\Debug\OneScriptTerminalGui.dll"); ТФ = Новый ТерминалФормыДляОдноСкрипта(); Окно1 = ТФ.Верхний.Добавить(ТФ.Окно("Окно1", 0, 0)); Окно1.Заполнить(); Таблица1 = Окно1.Добавить(ТФ.Таблица()); Таблица1.Заполнить(); ТаблицаДанных1 = ТФ.ТаблицаДанных(); КолонкиТаб = ТаблицаДанных1.Колонки; Колонка0 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("№ н/п", ТФ.ТипДанных.Число)); Колонка1 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("ФИО", ТФ.ТипДанных.Строка)); Колонка2 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("ДатаРождения", ТФ.ТипДанных.Дата)); Колонка3 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("Высшее образование", ТФ.ТипДанных.Булево)); Колонка4 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("PostCount", ТФ.ТипДанных.Число)); Колонка5 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("Инкремент", ТФ.ТипДанных.Число)); Колонка5.АвтоПриращение = Истина; Колонка5.НачальноеЧисло = 25; Колонка5.ШагПриращения = 5; Стр13 = "Трифонов Юрий Никифорович,19990607,Истина,61.80 |Шигаев Агап Денисович,19991001,Ложь,48.99 |Сочеванова Анфиса Георгиевна,19970909,Истина,31.08 |Врунгель Христофор Бонифатьевич,19901010,Истина,53.22 |Шикалов Игнатий Маркович,19901010,Истина,53.22 |Сергеевич Аристарх Изяславович,19950621,Ложь,25.97 |Бондарчук Александр Ермолаевич,19930713,Истина,89.53 |Ефремова Ева Степановна,19990105,Ложь,12.11 |Моисеева Зинаида Никитевна,19930616,Истина,33.66 |Кузьмова Лиана Игнатиевна,19930621,Ложь,40.70 |Ковшутина Алина Игоревна,19911122,Истина,77.50 |Чемериса Дина Глебовна,19901206,Истина,35.00 |Сухоруков Давид Александрович,19930811,Истина,71.31 |Шагидзянова Наталия Николаевна,19950330,Истина,17.46 |Игошина Влада Емельяновна,19970731,Ложь,57.09 |Бортник Борис Федосиевич,19911101,Истина,41.48 |Заболотный Евсей Фролович,19931013,Истина,74.24 |Сонин Викентий Мечиславович,19970310,Истина,91.52 |Коваленко Злата Фомевна,19921215,Истина,11.38 |Шатохина Людмила Александровна,19920604,Ложь,83.06 |Пряхин Владислав Владимирович,19910304,Истина,28.36"; Для А = 1 По СтрЧислоСтрок(Стр13) Цикл ТаблицаДанных1.Строки.Добавить(ТаблицаДанных1.НоваяСтрока()); КонецЦикла; М_Счетчик = Новый Массив(); М_ФИО = Новый Массив(); М_ДатаРождения = Новый Массив(); М_ВысшееОбразование = Новый Массив(); М_КоличествоБонусов = Новый Массив(); Для А = 1 По СтрЧислоСтрок(Стр13) Цикл Стр14 = СтрПолучитьСтроку(Стр13, А); М9 = РазобратьСтроку(Стр14, ","); М_Счетчик.Добавить(А); М_ФИО.Добавить(М9[0]); М_ДатаРождения.Добавить(Дата("" + М9[1])); М_ВысшееОбразование.Добавить(?(М9[2] = "Истина", Истина, Ложь)); М_КоличествоБонусов.Добавить(Число(М9[3])); КонецЦикла; ТаблицаДанных1.ЗагрузитьКолонку(М_Счетчик, 0); ТаблицаДанных1.ЗагрузитьКолонку(М_ФИО, 1); ТаблицаДанных1.ЗагрузитьКолонку(М_ДатаРождения, "ДатаРождения"); ТаблицаДанных1.ЗагрузитьКолонку(М_ВысшееОбразование, Колонка3); ТаблицаДанных1.ЗагрузитьКолонку(М_КоличествоБонусов, Колонка4); ТаблицаДанных2 = ТаблицаДанных1.Клонировать(); Для А = 1 По СтрЧислоСтрок(Стр13) Цикл ТаблицаДанных2.Строки.Добавить(ТаблицаДанных2.НоваяСтрока()); КонецЦикла; ТаблицаДанных2.ЗагрузитьКолонку(М_Счетчик, 0); ТаблицаДанных2.ЗагрузитьКолонку(М_ФИО, 1); Таблица1.ТаблицаДанных = ТаблицаДанных2; ТФ.ПриОткрытии = ТФ.Действие(ЭтотОбъект, "ПриОткрытии"); ТФ.Запуск();
Перем ТФ, Таблица1, Количество; Процедура ПриОткрытии() Экспорт Количество = Таблица1.ТаблицаДанных.Строки.Количество; ТФ.Уведомление().Показать("Количество = " + Количество, -1); КонецПроцедуры Функция РазобратьСтроку(Строка, Разделитель) Стр = СтрЗаменить(Строка,Разделитель,символы.ПС); М = Новый Массив; Если ПустаяСтрока(Стр) Тогда Возврат М; КонецЕсли; Для Ч = 1 По СтрЧислоСтрок(Стр) Цикл М.Добавить(СтрПолучитьСтроку(Стр,Ч)); КонецЦикла; Возврат М; КонецФункции ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptTerminalGui\OneScriptTerminalGui\bin\Debug\OneScriptTerminalGui.dll"); ТФ = Новый ТерминалФормыДляОдноСкрипта(); Окно1 = ТФ.Верхний.Добавить(ТФ.Окно("Окно1", 0, 0)); Окно1.Заполнить(); Таблица1 = Окно1.Добавить(ТФ.Таблица()); Таблица1.Заполнить(); ТаблицаДанных1 = ТФ.ТаблицаДанных(); КолонкиТаб = ТаблицаДанных1.Колонки; Колонка0 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("№ н/п", ТФ.ТипДанных.Число)); Колонка1 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("ФИО", ТФ.ТипДанных.Строка)); Колонка2 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("ДатаРождения", ТФ.ТипДанных.Дата)); Колонка3 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("Высшее образование", ТФ.ТипДанных.Булево)); Колонка4 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("PostCount", ТФ.ТипДанных.Число)); Колонка5 = КолонкиТаб.Добавить(ТФ.КолонкаДанных("Инкремент", ТФ.ТипДанных.Число)); Колонка5.АвтоПриращение = Истина; Колонка5.НачальноеЧисло = 25; Колонка5.ШагПриращения = 5; Стр13 = "Трифонов Юрий Никифорович,19990607,Истина,61.80 |Шигаев Агап Денисович,19991001,Ложь,48.99 |Сочеванова Анфиса Георгиевна,19970909,Истина,31.08 |Врунгель Христофор Бонифатьевич,19901010,Истина,53.22 |Шикалов Игнатий Маркович,19901010,Истина,53.22 |Сергеевич Аристарх Изяславович,19950621,Ложь,25.97 |Бондарчук Александр Ермолаевич,19930713,Истина,89.53 |Ефремова Ева Степановна,19990105,Ложь,12.11 |Моисеева Зинаида Никитевна,19930616,Истина,33.66 |Кузьмова Лиана Игнатиевна,19930621,Ложь,40.70 |Ковшутина Алина Игоревна,19911122,Истина,77.50 |Чемериса Дина Глебовна,19901206,Истина,35.00 |Сухоруков Давид Александрович,19930811,Истина,71.31 |Шагидзянова Наталия Николаевна,19950330,Истина,17.46 |Игошина Влада Емельяновна,19970731,Ложь,57.09 |Бортник Борис Федосиевич,19911101,Истина,41.48 |Заболотный Евсей Фролович,19931013,Истина,74.24 |Сонин Викентий Мечиславович,19970310,Истина,91.52 |Коваленко Злата Фомевна,19921215,Истина,11.38 |Шатохина Людмила Александровна,19920604,Ложь,83.06 |Пряхин Владислав Владимирович,19910304,Истина,28.36"; Для А = 1 По СтрЧислоСтрок(Стр13) Цикл ТаблицаДанных1.Строки.Добавить(ТаблицаДанных1.НоваяСтрока()); КонецЦикла; М_Счетчик = Новый Массив(); М_ФИО = Новый Массив(); М_ДатаРождения = Новый Массив(); М_ВысшееОбразование = Новый Массив(); М_КоличествоБонусов = Новый Массив(); Для А = 1 По СтрЧислоСтрок(Стр13) Цикл Стр14 = СтрПолучитьСтроку(Стр13, А); М9 = РазобратьСтроку(Стр14, ","); М_Счетчик.Добавить(А); М_ФИО.Добавить(М9[0]); М_ДатаРождения.Добавить(Дата("" + М9[1])); М_ВысшееОбразование.Добавить(?(М9[2] = "Истина", Истина, Ложь)); М_КоличествоБонусов.Добавить(Число(М9[3])); КонецЦикла; ТаблицаДанных1.ЗагрузитьКолонку(М_Счетчик, 0); ТаблицаДанных1.ЗагрузитьКолонку(М_ФИО, 1); ТаблицаДанных1.ЗагрузитьКолонку(М_ДатаРождения, "ДатаРождения"); ТаблицаДанных1.ЗагрузитьКолонку(М_ВысшееОбразование, Колонка3); ТаблицаДанных1.ЗагрузитьКолонку(М_КоличествоБонусов, Колонка4); ТаблицаДанных2 = ТаблицаДанных1.Клонировать(); Для А = 1 По СтрЧислоСтрок(Стр13) Цикл ТаблицаДанных2.Строки.Добавить(ТаблицаДанных2.НоваяСтрока()); КонецЦикла; ТаблицаДанных2.ЗагрузитьКолонку(М_Счетчик, 0); ТаблицаДанных2.ЗагрузитьКолонку(М_ФИО, 1); Таблица1.ТаблицаДанных = ТаблицаДанных2; ТФ.ПриОткрытии = ТФ.Действие(ЭтотОбъект, "ПриОткрытии"); ТФ.ЗапуститьИЗавершить(); Сообщить(?( Количество = 21 , "", "!!! ") + "ТаблицаДанных.Клонировать (DataTable.Clone) Метод" + " " + ТекущаяДата() + Символы.ПС);