| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
This change should fix the "slow CSV import dialog" issue on 10.10 (details below). To accomplish that, some major changes had to be made to the CSV import code. PLEASE VERIFY THE CORRECTNESS OF THE NEXT FEW CSV IMPORTS YOU DO!
* Renamed some variables for better search visibility
* Changed some instances where NSNumbers were being compared using "==" instead of "isEqual…" (does not work with object literals!)
* The CSV import dialog would recreate the popup menus on *every* call to "tableView:objectValueFor…". However Instruments suggests that [NSMenu removeAllItems] and [NSMenu addItemsWithTitles:] are **really** expensive, esp. when called multiple times per second (e.g. when scrolling in the table view). This commit moves the popup menu setup into its own method and only calls it when the data actually changes.
* The 'destination table column' was for some reason a NSPopupButtonCell which only ever had one item and sometimes got changed to a NSTextFieldCell in code. I didn't see any need to keep the popup cell and replaced it with a simple text cell.
|
|
|
|
| |
(Purely guessing here…)
|
|
|
|
|
| |
No"real" changes were made.
NOTE: There is actually a chance for this change to break stuff.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
- Update base SDK to 10.6
- Update minimum OS version to 10.6
- Update all XIB to have a 10.6 target
- Drop support for PPC
- Apply all of the above to frameworks SPMySQLFramework and QueryKit
|
| |
|
|
|
|
|
| |
- reset import operators after each change of the chosen alignment
- double-click at PathControl performs goBackToFileChooser delayed in order to avoid time racing issues
|
|
|
|
|
| |
- added the possibility to apply any sql function while importing set via "Add value or expression" sheet eg concat('$2', '$1', length('$3')) whereby $1 $2 $3 are the placeholder for the csv file columns 1 2 3 [first column starts with 1]
• fixed ' escaping issue in MCPConnection
|
|
|
|
|
|
|
|
| |
table history
• CSV Import Field Mapper Sheet
- fixed issue for inserting a global value containing a '
- started preparations of the "Add value or expression" sheet for future enhancements
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
- added keyboard shortcut ⌘T to show available tables list
- added chance to add a new columns to an existing table (⌘⌥A)
- added chance to remove currently new added columns (⌘⌫) - context menu; to remove all new columns one can reselect the table
Note: New columns will be added after pressing 'Import' and before the import process starts; if an error occurred the sheet keeps open to give the user the chance to correct errors whereby successfully created new columns won't be editable anymore.
|
|
|
|
|
|
|
|
|
| |
table encoding and type):
- Make the sheet non-resizable, thus removing the visible resize triangle.
- Add a cancel button so the user can discard their selection.
- Only save the user's selection when they select 'OK'.
|
|
|
|
|
| |
- added button "New"
- added chance to change encoding and engine of the new table which will be saved in the Prefs
|
|
|
|
|
|
|
|
|
| |
- fixed some RETURN/ENTER logic while editing a table cell
- added context menu to table for:
-- 'Set all Field Types to:' which sets all types to the current selected one ⌘=
-- 'Add Column to Table Target' (not yet implemented)
- some minor code issues
- added Info button which will come up with a GUI for setting new table encoding and engine (not yet implemented)
|
|
|
|
|
|
| |
- added some GUI validations
- in new table mode changed 'type' column into self-learning NSComboBoxCells
- fixed issue for closing sheet if user press RETURN, only close it if 'Import' button is enable
|
|
|
|
| |
note:What else is needed for such an import? table encoding settings? ... has to be discussed
|
|
|
|
|
|
|
|
| |
executable)
- changed order of target tables: New Table, Refresh List, separator, list of all names
- cleaned code a bit
* removed check for available tables in SPDataImport, now if no table in db the CSV Field Mapper opens in "New Table" mode
|
|
|
|
| |
contains field names"
|
| |
|
|
|
|
|
|
|
|
|
| |
SPAlwaysShowWindowTabBar
• fixed CSV Import file display in NSPathControl if SP runs localized
- the problem is very likely a bug in [NSPathControl setURL:]; that's why create a new temporary NSPathControl and set the GUI's NSPathControl via [NSPathControl setPathComponentCells:[tempPathControl pathComponentCells]]
- this should fix i751
• resized some components in CSV Import sheet to fit for localizations a bit better
|
| |
|
|
|
|
|
| |
- added the chance to mark a global value as SQL statement in the sheet to allow to use a calculated value like LENGTH(`foo`) or NOW() while inserting/replacing/updating
• added ^⌥⌘N short-cut Navigator (still hidden)
|
| |
|
|
|
|
|
| |
- added to INSERT advanced option "Skip existing rows"
This option allows to insert only those source file rows which primary keys do not exist. It executes INSERT INTO … ON DUPLICATE KEY UPDATE `pri_key_name` = `pri_key_name`. This statement suppresses all warnings/errors regarding to duplicates pri keys etc. BUT it gives an error if an INSERT… statement of a remaining row was erroneous.
|
|
|
|
|
|
| |
- improved some validation logic
- added "Match Field" to source file field popup to be consistent if UPDATE is chosen
- the label "Advanced" is now clickable as well
|
|
|
|
|
|
|
|
|
|
|
| |
- removed Advanced sheet, instead resize the main sheet and display these settings in it
- added advanced options LOW/HIGH_PRIORITY
- improved logic for adv. settings, disabling UPDATE if target table has less than 2 fields, etc.
- fixed URL for displaying the source file name
- removed Help text since it's too large - should be go to the general help
• CMTextView
- fixed bug if ESC Completion is invoked if caret position is 0
• fixed document URL handling to come up with the correct icons etc.
|
|
|
|
| |
- further work on UPDATE (not yet activated)
|
|
|
|
|
| |
- added Advanced sheet for setting IGNORE, DELAYED, ON DUPLICATE KEY UPDATE '<string>' for INSERT/REPLACE INTO
• if during import CSV Import an error occurred show SP Console
|
|
|
|
|
|
|
| |
- added to csv field popup menu: "Ignore all fields", "Import all fields"
- if user changed a matching pair field change the "Align fields by:" to "custom order" to make it more transparent
- if user inserts a just added global var to a field which was set to "Ignore field" set it to "Import field"
- unified some messages
|
|
|
|
|
| |
- some tiny improvements like "Add global value…" adds a new value automatically; if checkbox "Use current value" is ticked use that value in mapping array automatically to speed up defining global vars
- some code cosmetics
|
|
|
|
|
|
|
|
|
| |
- added the csv source field popu:
"Ignore field" to set the current field to doNotImport
"Add global value…" which opens the global value sheet
- removed "Add global value" button
Note: still not the optimal solution - further work is needed. esp. avoid jittering if user selects "Ignore field" or "Add value…"
|
|
|
|
|
| |
- allow to define a list of global variables (incl. a true NULL value)
- such a global variable will be inserted into the mapped table target field for all rows imported
|
|
|
|
|
|
|
|
|
|
|
|
| |
• remember last chosen field alignment in csv field mapper in the prefs
• improved 'matching names' algorithm; now it can handle this:
csv: a b c
table: c d a b
→
c - c
d
a - a
b - b
|
|
|
|
|
|
| |
- added button "Go Back" ⌥← to go back to the file chooser (mainly for correcting delimiter etc.)
- improved selecting csv file columns for the case that column was set as 'Do not import'; now if set to 'Do not import' the value is hidden, click the user on it the popup menu appears and the operator is set to 'Do import' automatically
• TableDump now remembers the last chosen csv file name
|
|
|
|
|
| |
- added chance to align the csv field and table field names via 'matching names' which uses the Levenshtein distance [first approach] if csv file's first line is an header
|
|
|
|
|
|
| |
- added target table field primary key info
- added to align the csv fields by 'file order' and 'reversed file order'
|
|
|
|
|
|
| |
- added target table field type and default info
- disable Import button if no target table fields are available
|
|
|
|
| |
• fixed spellings
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- fixed precocious releasing of mapper settings
- fixed boolean binding for displaying "1 of first 100 records"
- added further gui elements (not yet activated)
- sheet dimensions are now auto-saved
- bound keystroke ⇢ and ⇠ to row stepper
- renamed some stuff
- added clarification notes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- changed the way to choose whether a source field should be imported or not by introducing a new table column 'operators'
- clicking at the 'operator's header toggles all operators to 'Import' or 'Do not import'
- added tooltips for each table cell; if file's first line are the headers show them in the tooltips as well
- added checkbox "First line contains fields names" since it'll be clear in this pane whether a file has a header line or not (will be sync with prefs)
- added the possibility to choose the import method: INSERT INTO or REPLACE INTO
• deleted all old field mapper stuff from TableDump and DBView.xib
Notes:
- tests are needed to be sure that this change does not cause mismatches while importing
- symbols for Do (not) import are tendative - maybe use images
- a further import method UPDATE plus an operator '=' will be added soon
- chance to add a new global source variable will come soon
- displaying of source field types will come soon
- semi-automatically matching of source field names and header names will come soon
- the GUI needs some improvements afterwards
|
| |
|
| |
|
|
|
|
|
|
| |
which are not support by the current set encoding
• added DataMigrationDialog.xib to Xcode project
|
| |
|
|
|
|
|
|
| |
than SP_SYNTAX_HILITE_BIAS (has to be improved)
• added SPFieldMapperController
|
|
|
|
| |
• first steps to renew the field mapper sheet for CSV Import
|
|
- committing 3 new Nib files
|