Project

General

Profile

Actions

Feature #7453

open

import / export forms QFQ

Added by Carsten Rose almost 4 years ago. Updated about 1 year ago.

Status:
Some day maybe
Priority:
Normal
Assignee:
Carsten Rose
Target version:
Start date:
11.12.2018
Due date:
% Done:

0%

Estimated time:
Discuss:
Carsten Rose
Prio Planung:

Description

  • Es waere gut wenn es eine Import / Export Moeglichkeit fuer Formulare gaebe.
  • Das koennte einfach via mysqldump (SQL Textdump) erfolgen.
  • Der Mechanismus koennte dann auch genutzt werden um den Formulareditor (und andere System Formulare) in das QFQ formEditor.sql File zu bringen (resp. dann gibt es pro System Formular vermutlich eine Datei).
  • In QFQ gibt es ein Formular, in dem man den exportierten SQL Textdump einfuegen kann und das dann den Import ausfuehrt.
  • Problem: wie werden die Record ID Kollisionen geloest?

Idee:

  • Auf jedem Form gibt es einen Export Button der via `mysqldump .. --where ...` fuer Form und FormElement den SQL Textdump erstellt. Der kann als Text angezeigt werden.
  • Import:
    • Es wird eine temporaere DB angelegt.
    • In diese DB wird der SQL Textdump eingelesen, via 'mysql < ...'
    • In PHP wird fuer jeden Record in tempDb.Form der Import durchgefuehrt:
      • INSERT INTO Form (name, ... ) SELECT tempDb.Form.name, tempDb.Form.... - die 'id' wird nicht angegeben und deshalb eine neue gesetzt.
      • Mit Last Insert Id wird die 'newFormId' ermittelt.
      • INSERT INTO FormElement ( formId, name, ... ) SELECT $newFormId, tempDb.FormElement.name, tempDb.FormElement .... FROM tempDb.FormElement.formId=$newFormId
    • Temporaere DB loeschen.
Actions #1

Updated by Marc Egger almost 4 years ago

Research:
  • table creation: SHOW CREATE TABLE MyTable;
  • sql dump: 
mysqldump [-t] -u MyUserName -pMyPassword MyDatabase MyTable --where="ID = 10"

    -t to omit table creation
    
https://stackoverflow.com/questions/3978326/get-insert-statement-for-existing-row-in-mysql
Actions #2

Updated by Marc Egger over 3 years ago

  • Discuss set to Carsten Rose
Actions #3

Updated by Marc Egger over 3 years ago

  • Subject changed from QFQ support to import / export forms to import / export forms QFQ
Actions #4

Updated by Carsten Rose over 3 years ago

  • Tracker changed from Support to Feature
Actions #5

Updated by Carsten Rose almost 3 years ago

  • Status changed from New to Some day maybe
Actions #6

Updated by Carsten Rose almost 3 years ago

  • Status changed from Some day maybe to New
Actions #7

Updated by Marc Egger almost 3 years ago

  • Status changed from New to Some day maybe
Actions #8

Updated by Carsten Rose over 2 years ago

  • Target version changed from 141 to next8
Actions #9

Updated by Marc Egger about 1 year ago

  • Assignee changed from Marc Egger to Carsten Rose
Actions

Also available in: Atom PDF