Xׯd (ddlZddlZddlmZddlmZejddejdgddgd ejej ej j d Z ejd d ejd gddgd ejej ej j dZejddejgddgd ejej ej jdZdZejddejgddgd ejej ej jdZejddejgddgd ejej ej jdZejddejgddgd ejej ej jd ZdS)!N)wbinputs) ModuleInfozwb.util.copySQLToClipboardzCopy SQL to Clipboardzdb.DatabaseObjectzCatalog/Utilitiesz Menu/Objects)captioninputgroupsaccessibilityNamecg}t|tjjrW|jD]N}|tjj||dOn7|tjj|tjj d |dS)Nz; r) isinstancegrtclassesdb_RoutineGrouproutinesappendmodulesDbMySQLmakeCreateScriptForObject WorkbenchcopyToClipboardjoin)objscriptroutines ..\modules\wb_catalog_utils.pycopySQLToClipboardrs c3;6 7 7 N< ' ' ck1KKGTTUUU g&&&& ' MM#+-GGLL M M M --bggfoo>>>qz"wb.util.copyColumnNamesToClipboardzCopy Column Names to Clipboardzdb.Tablecdd|jD}tjj|dS)N, cg|] }|j Sname).0columns r z.copyColumnNamesToClipboard...sBBB&&+BBBrr)rcolumnsr rrr)tabledatas rcopyColumnNamesToClipboardr)+sDyyBBEMBBBCC --d333qrz wb.util.copyTableListToClipboardzCopy Table List to Clipboardz Menu/Catalogcd}|jD]+|dfdjDz},tjj|dS)Nr rc@g|]}djzdz|jzdzS)`z`.`r!)r#tblschemas rr%z,copyTableListToClipboard..8s0$a$a$aCS_U%:38%CC%G$a$a$arr)schematartablesr rrr)catinsertr.s @rcopyTableListToClipboardr32slF,cc$))$a$a$a$aSYS`$a$a$abbbK))&111 1rcd}td} tddD]L}d}|dkr#t||zt|z}n|t|z}||vr d||<|cSM|dz}c)NraTr )ordrangechrstr) name_prefix names_map name_suffixbyte_ai next_names r generateNamerB=s[#hhV '2,, " "QYr!! !__s;/?/??(3{+;+;;**()9%!!!!+#Q 'rzwb.util.obfuscateCatalogz!Obfuscate Object Names in CatalogzMenu/Utilitiesz"Obsfuscate Object Names in Catalogc tjddddd}|tjkrdS|tjk}i}i}d}||}d |||f fd }|jjD]}td ||_|j D] } || |j D] } || |j D] } || |j D]"} || | j D] } || #d S) NWarningzThis operation will change names of all schemata and tables in the model. Would you like to also clear SQL code for views and stored procedures? This action cannot be undone!z Clear SQLCancelz Leave SQLr7c0i}|jD]}|jD]}t|dr|||jj<"t|dr|||jj<Bt|dr|||jj<bt|dr|||jj<|S)Nr'viewr routineGroup)diagramsfigureshasattrr'__id__rGrrH)model figures_mapdiagramfigures rcreateFiguresMapz*obfuscateCatalog..createFiguresMap]s F FW"?FFFG,,F8>[!455ff--F7=[!344fi00F:@[!677fn55F?E[!4!;<F rcJ|j|vr|j||j_dSdS)N)rLr")rrNs r renameFigurez&obfuscateCatalog..renameFigurems. J+ % %,/H[ $ ) ) ) & %rctd||_|rt|drd|_|rt|drd|_||dS)Nr sqlBody sqlDefinition)rBr"rKrUrV)robj_mapclear_sql_coderNrSs rrenameDbObjectz(obfuscateCatalog..renameDbObjectqsm W--  wsI66 S[  $wsO<< $!#S  c; ' ' ' ' 'rr r) mforms Utilities show_warning ResultCancelResultOkcatalogr/rBr"r0viewsr routineGroups)rMresultrX schemata_map objects_maprQrNrYr.r'rGrrHrSs @robfuscateCatalogreNs++I8!"-xFFV &%%%0^\[   $#E**[555&1]h((((((=) ( ("2|44 ] " "E N5 ! ! ! !L ! !D N4  $ $G N7 # # # #"0 ( (L N< ( ( ('0 ( (w'''' ( ( Arzwb.util.prefixTables&Give a Prefix to All Tables in CatalogzPrefix Tables in Catalogctjddd\}}|sdS|jD]}|jD]}||jz|_dS)Nrfz%Please specify the prefix:copy table r r7r)rZr[ request_inputr/r0r")r1retprefixr.r-s r prefixTablesrks~#112Z]DFHII[S& <**M * *S)SXX * Arzwb.util.changeStorageEngines'Change the Storage Engine of All TableszChange Tables Storage Enginectjddd\}}|sdSd}|}d}|D]i}|ddkr ||ddzd}||krd }|}j|s*t jjd d |zd S|j D]}|j D] }||_ d S)Nrlz!Type the new storage engine name:r r7ctjjjjd}d|dD}|S)Nz!@db.mysql.Table:tableEngine/Itemsc8g|]}|dS)z )strip)r#items rr%zAchangeStorageEngines..getTableEngines..s$AAAtE""AAAr,)r rootwboptionssplit)rbitemss rgetTableEnginesz-changeStorageEngines..getTableEnginess;$,-PQAAv||C/@/@AAA rF:TzChange Storage EngineszInvalid storage engine name: r) rZr[rhfindlowerr rrconfirmr/r0 tableEngine) r1ri new_enginerxengines engine_found engine_namer.r-s rchangeStorageEnginesrsC'556_bEGIJJ_S*    W\%%   C B & &%k&6&6s&;&;a&?&@&@AK     !2!2!4!4 4 4L$J  %%&>@_bl@lmmmq<))M ) )S(COO ) Ar)r rZrtr wb_utils_grtrplugin objectOfClassexportINTr GrtNamedObjectrdb_Tabler)currentCatalog db_Catalogr3rB currentModelworkbench_physical_Modelrerkrr rrrs, ######/9PZpZbZprE[F[FZGReguQvJabbb37CK677  87bb 7AalBkslBCMlNlNkOZmo}Y~Rrsss37CK01121ss 5?]g~gog~hAhAgBM`bpLqEcddd37CK233  43dd '''"-7Zdydldyd{d{c|H[]mGnBfggg37CK@AA66BAgg6p)3[e|eme|e~e~dK^`nJoC]^^^37CK233  43^^ 1;doFnvoFoHoHnITgiwSxLjkkk37CK23343kkr