' =========Название========= ' установщик макроса экспорта/импорта CSV через буфер обмена ' 30.04.2014 ' by colee ' http://engineerbox.ru/page/po-rastrwin-makros-importaeksporta-tablic-s-pomoshhju-bufera-obmena ' http://engineerbox.ru/page/rastr3-obnovlenie-dlja-makrosa-copypasteclipboard const ver = 1.1 ' Настройки ' загрузка нового шаблона Context, иначе работа в уже загруженном bLoadNewContextShablon = true ' сохранение шаблона в конце работы установщика, иначе самостоятельное сохранение через файл Файлы - Сохранить шаблон bSaveContextShablon = true ' добавить все таблицы без отдельного разбора bAllTable = true ' или !!! bAllTable обязательно выставить в false bCXH = false ' форма CXH bFACTS = false ' форма FACTS bGr_vetv = false ' форма Gr_vetv bgraph_grad = false ' форма graph_grad bAvtomatika = false ' форма Автоматика bAgregaty = false ' форма Агрегаты bAgregaty_Bloki = false ' форма Агрегаты+Блоки bADID = false ' форма АД(ИД) bAncapfy = false ' форма Анцапфы bAncapfy_BD = false ' форма Анцапфы_БД bAncapfy_opt = false ' форма Анцапфы_опт bARV_ID = false ' форма АРВ (ИД) bARV_Raschet = false ' форма АРВ (Расчет) bARV_ST5B_ID = false ' форма АРВ ST5B (ИД) bARS_ID = false ' форма АРС (ИД) bAH_SD = false ' форма АХ_СД bBazovyj_rezhim = false ' форма Базовый режим bBloki = false ' форма Блоки bVarianty_Nazvanie = false ' форма Варианты_Название bVarianty_Soderzhanie = false ' форма Варианты_Содержание bVesovye_kojeff = false ' форма Весовые коэфф. bVetvi = false ' форма Ветви bVetvi__Katalog_CT = false ' форма Ветви - Каталог CT bVetvi_Nesim_ID = false ' форма Ветви/Несим/ИД bVetvi_Nesim_Razmyk = false ' форма Ветви/Несим/Размык bVetvi_Nesim_RS = false ' форма Ветви/Несим/РС bVetvi_Nesim_RF = false ' форма Ветви/Несим/РФ bVetvi_Analiz = false ' форма Ветви_Анализ bVetvi_Vozmushhenija = false ' форма Ветви_Возмущения bVetvi_VRDO = false ' форма Ветви_ВРДО bVetvi_razlichija = false ' форма Ветви_различия bVozbuditel_ID = false ' форма Возбудитель (ИД) bVozbuditel_Raschet = false ' форма Возбудитель (Расчет) bVPT = false ' форма ВПТ bGen_kompanii = false ' форма Ген. компании bGenuzly = false ' форма Ген.узлы bGenerator_Nesim = false ' форма Генератор/Несим bGeneratory = false ' форма Генераторы bGeneratory_ID = false ' форма Генераторы (ИД) bGeneratory_Raschet = false ' форма Генераторы (Расчет) bGeneratory_UR = false ' форма Генераторы (УР) bGOU2 = false ' форма ГОУ2 bGrLinij = false ' форма Гр.Линий bGr_Naprjazhenija = false ' форма Гр/Напряжения bGr_Rajony = false ' форма Гр/Районы bGr_Smena_parametrov = false ' форма Гр/Смена параметров bGrafik_agregatov = false ' форма График агрегатов bGrafik_rezervov = false ' форма График резервов bGrafik_Idop_ot_T = false ' форма График_Iдоп_от_Т bGrafikavetvi = false ' форма Графика-ветви bGrafikaUzly = false ' форма Графика-Узлы bGrafiki_nagruzok = false ' форма Графики нагрузок bGrozotros_rezultat_Nesim = false ' форма Грозотрос результат/Несим bGrozotros_Nesim = false ' форма Грозотрос/Несим bGruppy_RGE = false ' форма Группы РГЕ bDvuhobm_try = false ' форма Двухобм т-ры bDejstvija = false ' форма Действия bDejstvija_t = false ' форма Действия (t) bDiagramma_PQ = false ' форма Диаграмма PQ bEd_Izmerenija = false ' форма Ед. Измерения bZagruzka = false ' форма Загрузка bZnachenija = false ' форма Значения bIntegralnye_ogranichenija = false ' форма Интегральные ограничения bIspolnitelnye_mehanizmy = false ' форма Исполнительные механизмы bkatalog_linij = false ' форма каталог линий bkatalog_transformatorov = false ' форма каталог трансформаторов bKonstanty_OS = false ' форма Константы ОС bKonstanty_UR = false ' форма Константы УР bKotloagregaty = false ' форма Котлоагрегаты bKotly_ID = false ' форма Котлы (ИД) bKPRstupeni = false ' форма КПР-ступени bLinejnye_reaktory = false ' форма Линейные реакторы blinii = false ' форма линии blinii_XGB = false ' форма линии (XGB) bliniivetvi = false ' форма линии-ветви bLogika = false ' форма Логика bLogika_t = true ' форма Логика (t) bMagnitosvjaz_Nesim = false ' форма Магнитосвязь/Несим bMarki_vozbuditelej = false ' форма Марки возбудителей bMarki_generatorov = false ' форма Марки генераторов bMarki_RV = false ' форма Марки РВ bMarki_RS = false ' форма Марки РС bMarki_forsirovok = false ' форма Марки форсировок bMDP_Avarii = false ' форма МДП:Аварии bMDP_Vetvi = false ' форма МДП:Ветви bMDP_VIR = false ' форма МДП:ВИР bMDP_Linii_OS = false ' форма МДП:Линии ОС bMDP_MDP = false ' форма МДП:МДП bMDP_OS = false ' форма МДП:ОС bMDP_Parametry_Avarii = false ' форма МДП:Параметры Аварии bMDP_Rajony_VIR = false ' форма МДП:Районы ВИР bMDP_Rezultaty_vse = false ' форма МДП:Результаты все bMDP_Rezultaty_dlja_testirovanija = false ' форма МДП:Результаты для тестирования bMDP_SechenieVIR = false ' форма МДП:Сечение-ВИР bMDP_Sechenija = false ' форма МДП:Сечения bMDP_Traektorii = false ' форма МДП:Траектории bMDP_UVAvtomatiki = false ' форма МДП:УВ-Автоматики bMDP_Uzly = false ' форма МДП:Узлы bMDP_Uzly_VIR = false ' форма МДП:Узлы ВИР bMDP_JelTraektorii = false ' форма МДП:Эл.Траектории bNagr_gruppy_VRDO = false ' форма Нагр. группы ВРДО bNagruzki = false ' форма Нагрузки bNaprjazhenija = false ' форма Напряжения bNebalansy = false ' форма Небалансы bObshhie = false ' форма Общие bObedinenija = false ' форма Объединения bObedinenija_Poteri = false ' форма Объединения+Потери bObedinenija_Rajony = false ' форма Объединения+Районы bOgranichenija_agregatov = false ' форма Ограничения агрегатов bOgranichenija_blokov = false ' форма Ограничения блоков bOgranichenija_kotloagregatov = false ' форма Ограничения котлоагрегатов bOgranichenija_po_Napr = false ' форма Ограничения по Напр. bOgranichenija_sechenij = false ' форма Ограничения сечений bOgranichiteli_nedovozbuzhdenija = false ' форма Ограничители недовозбуждения bON = false ' форма ОН bOpisanie = false ' форма Описание bOptimizacija__transformatory = false ' форма Оптимизация - трансформаторы bOptimizacija__uzly = false ' форма Оптимизация - узлы bOU = false ' форма ОУ bParametry = false ' форма Параметры bParametry_rascheta = false ' форма Параметры расчета bPolzovat_ustva = false ' форма Пользоват. уст-ва bPoteri = false ' форма Потери bPotrebiteli = false ' форма Потребители bPrirashhenija_Rajony = false ' форма Приращения_Районы bPrirashhenija_Uzly = false ' форма Приращения_Узлы bPrichiny_ogranichenij = false ' форма Причины ограничений bPSTATKOM = false ' форма ПСТАТКОМ bPusk_Org = false ' форма Пуск. Орг. bPusk_Org_t = false ' форма Пуск. Орг. (t) bPuskovye_organy = false ' форма Пусковые органы bRajony = false ' форма Районы bRajony_Vetvi = false ' форма Районы+Ветви bRajony_Poteri = false ' форма Районы+Потери bRajony_Poteri_Q = false ' форма Районы+Потери Q bRajony_svjazi = false ' форма Районы+связи bRezervy = false ' форма Резервы bSD_ID = false ' форма СД (ИД) bSechenija = false ' форма Сечения bSechenija_VRDO = false ' форма Сечения_ВРДО bSechenija_Vetvi = false ' форма Сечения+Ветви bSistemnye_stabilizatory_ID = false ' форма Системные стабилизаторы (ИД) bSistemy = false ' форма Системы bSkripty = false ' форма Скрипты bSmena_parametrov = false ' форма Смена параметров bSmena_shemy = false ' форма Смена схемы bSostav_nagrgr_VRDO = false ' форма Состав нагр.гр. ВРДО bSostav_ON = false ' форма Состав ОН bSostav_Nesim = false ' форма Состав/Несим bSravniv_dannye = false ' форма Сравнив. данные bStancii = false ' форма Станции bShema = false ' форма Схема bTekst = false ' форма Текст bTekst_Rajony = false ' форма Текст/Районы bTerritorii = false ' форма Территории bTerritorii_Vetvi = false ' форма Территории+Ветви bTI_Kanaly = false ' форма ТИ/Каналы bTI_Privjazka = false ' форма ТИ/Привязка bTokovaja_zagruzka_LJeP = false ' форма Токовая загрузка ЛЭП bTokovaja_zagruzka_Trrov = false ' форма Токовая загрузка Тр-ров bTransPasport = false ' форма Транс.Паспорт bTransformatory = false ' форма Трансформаторы bTrehobm_try = false ' форма Трехобм т-ры bTurbina_ID = false ' форма Турбина (ИД) bTurbiny_Raschet = false ' форма Турбины (Расчет) bUzly = true ' форма Узлы bUzly__SHN = false ' форма Узлы - СХН bUzly_Raschet = false ' форма Узлы (Расчет) bUzly_Nesim_ID = false ' форма Узлы/Несим/ИД bUzly_Nesim_RC = false ' форма Узлы/Несим/РC bUzly_Nesim_RF = false ' форма Узлы/Несим/РФ bUzly_ogrut = false ' форма Узлы/огр.ут. bUzly_Analiz = false ' форма Узлы_Анализ bUzly_Vozmushhenija = false ' форма Узлы_Возмущения bUzly_VRDO = false ' форма Узлы_ВРДО bUzly_razlichija = false ' форма Узлы_различия bUzly_Reakcija = false ' форма Узлы_Реакция bUzly_Vetvi = false ' форма Узлы+Ветви bUzly_Generatory = false ' форма Узлы+Генераторы bUShR_STK = false ' форма УШР/СТК bFOL_FRL_KPR = false ' форма ФОЛ_ФРЛ_КПР bForsirovka_ID = false ' форма Форсировка (ИД) bHOPS_Generatory = false ' форма ХОПС Генераторы bCeny_delenij_kojefficientov_ARV = false ' форма Цены делений коэффициентов АРВ bChastota = false ' форма Частота bShunty = false ' форма Шунты bShunty_VRDO = false ' форма Шунты_ВРДО bJeGP = false ' форма ЭГП bJakobi = false ' форма Якоби Set fso = CreateObject("Scripting.FileSystemObject") forms_array_str = "CXH|FACTS|Gr_vetv|graph_grad|Автоматика|Агрегаты|Агрегаты+Блоки|АД(ИД)|Анцапфы|Анцапфы_БД|Анцапфы_опт|АРВ (ИД)|АРВ (Расчет)|АРВ ST5B (ИД)|АРС (ИД)|АХ_СД|Базовый режим|Блоки|Варианты_Название|Варианты_Содержание|Весовые коэфф.|Ветви|Ветви - Каталог CT|Ветви/Несим/ИД|Ветви/Несим/Размык|Ветви/Несим/РС|Ветви/Несим/РФ|Ветви_Анализ|Ветви_Возмущения|Ветви_ВРДО|Ветви_различия|Возбудитель (ИД)|Возбудитель (Расчет)|ВПТ|Ген. компании|Ген.узлы|Генератор/Несим|Генераторы|Генераторы (ИД)|Генераторы (Расчет)|Генераторы (УР)|ГОУ2|Гр.Линий|Гр/Напряжения|Гр/Районы|Гр/Смена параметров|График агрегатов|График резервов|График_Iдоп_от_Т|Графика-ветви|Графика-Узлы|Графики нагрузок|Грозотрос результат/Несим|Грозотрос/Несим|Группы РГЕ|Двухобм т-ры|Действия|Действия (t)|Диаграмма PQ|Ед. Измерения|Загрузка|Значения|Интегральные ограничения|Исполнительные механизмы|каталог линий|каталог трансформаторов|Константы ОС|Константы УР|Котлоагрегаты|Котлы (ИД)|КПР-ступени|Линейные реакторы|линии|линии (XGB)|линии-ветви|Логика|Логика (t)|Магнитосвязь/Несим|Марки возбудителей|Марки генераторов|Марки РВ|Марки РС|Марки форсировок|МДП:Аварии|МДП:Ветви|МДП:ВИР|МДП:Линии ОС|МДП:МДП|МДП:ОС|МДП:Параметры Аварии|МДП:Районы ВИР|МДП:Результаты все|МДП:Результаты для тестирования|МДП:Сечение-ВИР|МДП:Сечения|МДП:Траектории|МДП:УВ-Автоматики|МДП:Узлы|МДП:Узлы ВИР|МДП:Эл.Траектории|Нагр. группы ВРДО|Нагрузки|Напряжения|Небалансы|Общие|Объединения|Объединения+Потери|Объединения+Районы|Ограничения агрегатов|Ограничения блоков|Ограничения котлоагрегатов|Ограничения по Напр.|Ограничения сечений|Ограничители недовозбуждения|ОН|Описание|Оптимизация - трансформаторы|Оптимизация - узлы|ОУ|Параметры|Параметры расчета|Пользоват. уст-ва|Потери|Потребители|Приращения_Районы|Приращения_Узлы|Причины ограничений|ПСТАТКОМ|Пуск. Орг.|Пуск. Орг. (t)|Пусковые органы|Районы|Районы+Ветви|Районы+Потери|Районы+Потери Q|Районы+связи|Резервы|СД (ИД)|Сечения|Сечения_ВРДО|Сечения+Ветви|Системные стабилизаторы (ИД)|Системы|Скрипты|Смена параметров|Смена схемы|Состав нагр.гр. ВРДО|Состав ОН|Состав/Несим|Сравнив. данные|Станции|Схема|Текст|Текст/Районы|Территории|Территории+Ветви|ТИ/Каналы|ТИ/Привязка|Токовая загрузка ЛЭП|Токовая загрузка Тр-ров|Транс.Паспорт|Трансформаторы|Трехобм т-ры|Турбина (ИД)|Турбины (Расчет)|Узлы|Узлы - СХН|Узлы (Расчет)|Узлы/Несим/ИД|Узлы/Несим/РC|Узлы/Несим/РФ|Узлы/огр.ут.|Узлы_Анализ|Узлы_Возмущения|Узлы_ВРДО|Узлы_различия|Узлы_Реакция|Узлы+Ветви|Узлы+Генераторы|УШР/СТК|ФОЛ_ФРЛ_КПР|Форсировка (ИД)|ХОПС Генераторы|Цены делений коэффициентов АРВ|Частота|Шунты|Шунты_ВРДО|ЭГП|Якоби" tabs_array_str = "polin|DFWFACTS|graph_vetv|graph_grad|AutoSettings|Generator|Generator|InductionMotor|ancapf|Ancapf2|ancapf|ExcControl|ExcControl|ExcControlST5B|Governor|FuncSM|KOC_Base_rg|NBlock|var_mer|var_Param|KOC_KWeights|vetv|vetv|vetv|vetv|vetv|vetv|vetv|vetv|vetv|vetv|Exciter|Exciter|DCLink|Gcom|node|Generator|Generator|Generator|Generator|Generator|gou2|grline|graph_unom|graph_area|graph_params|Pg|Preserves|graphikIT|graph_vetv|graph_node|Pload|kz_gr_trs_res|kz_gr_trs|RgeGroup|trans2|DFWAutoAction|DFWAutoActionScn|graphik2|AltUnit|vetv|ots_znach|Wsum|AutoAction|catalog_lep|catalog_trans|KOC_Consts|KUR_Consts|BoilerUnit|Boiler|KPRs|vetv|line|line_gxb|line-vetv|DFWAutoLogic|DFWAutoLogicScn|mutind|BrandExciter|BrandGenerator|BrandExcControl|BrandARS|BrandForcer|var_mer|vetv|ut_vir|os_vetv|ut_vir_mdp|sechen|var_Param|ut_vir_area|ut_os_result|ut_os_result|ut_vir_sech_vir|sechen|ut_vir_traj|ut_var_Params|node|ut_vir_node|ut_vir_traj_el|nagrVRDO|Load|node|node|graph_com|darea|darea|darea|PAgrLmts|PBlkLmts|PBoilLmts|KOC_Uogr|PCLmts|UEL|nagrVRDO|ots_val|vetv|node|Notices|KOC_Param|DayParam|CustomDeviceMap|poteri|Consumer2|ut_area|ut_node|Causes|FACTS|DFWAutoStarter|DFWAutoStarterScn|AutoStarter|area|area|area|area|area|Reserves|SynchronousMotor|sechen|sechen|sechen|PSS|Load|Scripts|Param|StateChange|snagrVRDO|snagrVRDO|nonsym|diff|Station|LogicLAPNU|graph_settext|Ar_graph_settext|area2|area2|ti|ti_prv|vetv|vetv|ATtrans|ATtrans|trans3|ARS|ARS|node|node|node|node|node|node|node|node|node|node|node|node|node|node|USHR|KPRd|Forcer|ReadyXop|ExcControlParam|node|node|node|Egt|jakobi" forms_array = split(forms_array_str,"|") tabs_array = split(tabs_array_str,"|") btab_array = array(bCXH,bFACTS,bGr_vetv,bgraph_grad,bAvtomatika,bAgregaty,bAgregaty_Bloki,bADID,bAncapfy,bAncapfy_BD,bAncapfy_opt,bARV_ID,bARV_Raschet,bARV_ST5B_ID,bARS_ID,bAH_SD,bBazovyj_rezhim,bBloki,bVarianty_Nazvanie,bVarianty_Soderzhanie,bVesovye_kojeff,bVetvi,bVetvi__Katalog_CT,bVetvi_Nesim_ID,bVetvi_Nesim_Razmyk,bVetvi_Nesim_RS,bVetvi_Nesim_RF,bVetvi_Analiz,bVetvi_Vozmushhenija,bVetvi_VRDO,bVetvi_razlichija,bVozbuditel_ID,bVozbuditel_Raschet,bVPT,bGen_kompanii,bGenuzly,bGenerator_Nesim,bGeneratory,bGeneratory_ID,bGeneratory_Raschet,bGeneratory_UR,bGOU2,bGrLinij,bGr_Naprjazhenija,bGr_Rajony,bGr_Smena_parametrov,bGrafik_agregatov,bGrafik_rezervov,bGrafik_Idop_ot_T,bGrafikavetvi,bGrafikaUzly,bGrafiki_nagruzok,bGrozotros_rezultat_Nesim,bGrozotros_Nesim,bGruppy_RGE,bDvuhobm_try,bDejstvija,bDejstvija_t,bDiagramma_PQ,bEd_Izmerenija,bZagruzka,bZnachenija,bIntegralnye_ogranichenija,bIspolnitelnye_mehanizmy,bkatalog_linij,bkatalog_transformatorov,bKonstanty_OS,bKonstanty_UR,bKotloagregaty,bKotly_ID,bKPRstupeni,bLinejnye_reaktory,blinii,blinii_XGB,bliniivetvi,bLogika,bLogika_t,bMagnitosvjaz_Nesim,bMarki_vozbuditelej,bMarki_generatorov,bMarki_RV,bMarki_RS,bMarki_forsirovok,bMDP_Avarii,bMDP_Vetvi,bMDP_VIR,bMDP_Linii_OS,bMDP_MDP,bMDP_OS,bMDP_Parametry_Avarii,bMDP_Rajony_VIR,bMDP_Rezultaty_vse,bMDP_Rezultaty_dlja_testirovanija,bMDP_SechenieVIR,bMDP_Sechenija,bMDP_Traektorii,bMDP_UVAvtomatiki,bMDP_Uzly,bMDP_Uzly_VIR,bMDP_JelTraektorii,bNagr_gruppy_VRDO,bNagruzki,bNaprjazhenija,bNebalansy,bObshhie,bObedinenija,bObedinenija_Poteri,bObedinenija_Rajony,bOgranichenija_agregatov,bOgranichenija_blokov,bOgranichenija_kotloagregatov,bOgranichenija_po_Napr,bOgranichenija_sechenij,bOgranichiteli_nedovozbuzhdenija,bON,bOpisanie,bOptimizacija__transformatory,bOptimizacija__uzly,bOU,bParametry,bParametry_rascheta,bPolzovat_ustva,bPoteri,bPotrebiteli,bPrirashhenija_Rajony,bPrirashhenija_Uzly,bPrichiny_ogranichenij,bPSTATKOM,bPusk_Org,bPusk_Org_t,bPuskovye_organy,bRajony,bRajony_Vetvi,bRajony_Poteri,bRajony_Poteri_Q,bRajony_svjazi,bRezervy,bSD_ID,bSechenija,bSechenija_VRDO,bSechenija_Vetvi,bSistemnye_stabilizatory_ID,bSistemy,bSkripty,bSmena_parametrov,bSmena_shemy,bSostav_nagrgr_VRDO,bSostav_ON,bSostav_Nesim,bSravniv_dannye,bStancii,bShema,bTekst,bTekst_Rajony,bTerritorii,bTerritorii_Vetvi,bTI_Kanaly,bTI_Privjazka,bTokovaja_zagruzka_LJeP,bTokovaja_zagruzka_Trrov,bTransPasport,bTransformatory,bTrehobm_try,bTurbina_ID,bTurbiny_Raschet,bUzly,bUzly__SHN,bUzly_Raschet,bUzly_Nesim_ID,bUzly_Nesim_RC,bUzly_Nesim_RF,bUzly_ogrut,bUzly_Analiz,bUzly_Vozmushhenija,bUzly_VRDO,bUzly_razlichija,bUzly_Reakcija,bUzly_Vetvi,bUzly_Generatory,bUShR_STK,bFOL_FRL_KPR,bForsirovka_ID,bHOPS_Generatory,bCeny_delenij_kojefficientov_ARV,bChastota,bShunty,bShunty_VRDO,bJeGP,bJakobi) ' path to rastr path_doc = rastr.SendCommandMain(3,"","",0) path_sh = path_doc & "SHABLON\" t_num_paste=0 if fso.FolderExists(path_sh) then context_sh = "context.form" path_file_sh = path_sh & context_sh if fso.FileExists(path_file_sh) then if bLoadNewContextShablon then rastr.load 1,"",path_file_sh set t_context = rastr.Tables("macrocontext") for tab_num=0 to ubound(forms_array) if (bTab_array(tab_num) and bAllTable=false) or bAllTable=true then PutToContext forms_array(tab_num), tabs_array(tab_num) end if next if bSaveContextShablon then rastr.save "",path_file_sh else msgbox "Не найден файл " & name_sh & " в :" & chr(13) & path_doc end if else msgbox "Нет папки SHABLON в " & chr(13) & path_doc end if rastr.printp "Количество вставок:" & t_num_paste/2 msgbox "Установщик Copy/Paste Clipboard завершил работу", vbInformation sub PutToContext(s_form_name, s_tab_name) if isObject(t_context) then if not SearchInTable(s_form_name) then for i=1 to 2 t_context.InsRow 0 t_num_paste = t_num_paste + 1 if i=2 then t_context.Cols("macrofile").zn(0) = "CopyToClipboard.rbs" t_context.Cols("macrodesc").zn(0) = "Скопировать в буфер" else t_context.Cols("macrofile").zn(0) = "PasteFromClipboard.rbs" t_context.Cols("macrodesc").zn(0) = "Вставить из буфера" end if t_context.Cols("defaultappendix").zn(0) = 1 t_context.Cols("formtype").zn(0) = 0 t_context.Cols("form").zn(0) = s_form_name t_context.Cols("addstr").zn(0) = s_tab_name next if s_form_name="Узлы" or s_form_name="Ветви" then PutToContextEx s_form_name, s_tab_name end if else msgbox "Не инициализирована таблица Context.form" end if end sub sub PutToContextEx(s_form_name, s_tab_name) if isObject(t_context) then t_context.InsRow 0 t_num_paste = t_num_paste + 1 t_context.Cols("macrofile").zn(0) = "CopyToClipboard.rbs" t_context.Cols("macrodesc").zn(0) = "Скопировать в буфер [" & s_form_name & "]" t_context.Cols("defaultappendix").zn(0) = 1 t_context.Cols("formtype").zn(0) = 0 t_context.Cols("form").zn(0) = s_form_name t_context.Cols("addstr").zn(0) = s_tab_name & ",true" else msgbox "Не инициализирована таблица Context.form" end if end sub sub add2table(s_name,s_tab) set t_context = rastr.Tables("macrocontext") for i=1 to 2 t_context.InsRow 0 if i=2 then t_context.Cols("macrofile").zn(0) = "CopyToClipboard.rbs" t_context.Cols("macrodesc").zn(0) = "Скопировать в буфер" else t_context.Cols("macrofile").zn(0) = "PasteFromClipboard.rbs" t_context.Cols("macrodesc").zn(0) = "Вставить из буфера" end if t_context.Cols("defaultappendix").zn(0) = 1 t_context.Cols("formtype").zn(0) = 0 t_context.Cols("form").zn(0) = s_name t_context.Cols("addstr").zn(0) = s_tab next end sub function SearchInTable(f_form_name) SearchInTable = false if isObject(t_context) then for f_i=0 to t_context.size-1 t_form_name = t_context.Cols("form").zn(f_i) t_macrofile = t_context.Cols("macrofile").zn(f_i) if ucase(t_form_name)=ucase(f_form_name) and (t_macrofile = "CopyToClipboard.rbs" or t_macrofile = "PasteFromClipboard.rbs") then SearchInTable = true exit function end if next else msgbox "Не инициализирована таблица Context.form" end if end function