glpi icon indicating copy to clipboard operation
glpi copied to clipboard

access submitted forms generated with formcreators

Open j-guevara-m opened this issue 3 months ago • 5 comments

Code of Conduct

  • [x] I agree to follow this project's Code of Conduct

Is there an existing issue for this?

  • [x] I have searched the existing issues

Version

11.0.0

Bug description

migrated forms from formcreators to native forms, but now i can't see the previous submitted forms, whre could locate the previous submitted forms?

Relevant log output


Page URL

No response

Steps To reproduce

  1. updated to glpi 11
  2. migrate formcreators to native with php bin/console migration:formcreator_plugin_to_core
  3. i can see the migrated forms
  4. i can't locate the previous submitted forms with formcreator plugin

Your GLPI setup information

GLPI information
GLPI: 11.0.0 ( => /var/www/html/glpi)
Installation mode: TARBALL
Current language: es_MX
Server
Operating system: Linux glpisistemas 4.18.0-553.69.1.el8_10.x86_64 #​1 SMP Mon Aug 11 07:22:08 EDT 2025 x86_64

PHP: 8.2.29 fpm-fcgi

PHP extensions: Core, date, libxml, openssl, pcre, zlib, filter, hash, json, random, Reflection, SPL, session, standard, cgi-fcgi, bcmath, bz2, calendar, ctype, curl, dom, mbstring, fileinfo, ftp, gd, gettext, iconv, imap, intl, ldap, exif, mysqlnd, PDO, Phar, SimpleXML, snmp, sockets, sodium, sqlite3, tokenizer, xml, xmlwriter, xsl, mysqli, pdo_mysql, pdo_sqlite, xmlreader, xmlrpc, zip, apcu, Zend OPcache

Setup: disable_functions="" max_execution_time="30" max_input_vars="1000" memory_limit="128M" post_max_size="8M" session.cookie_secure="1" session.cookie_httponly="1" session.cookie_samesite="" session.save_handler="files" upload_max_filesize="10M"

Web server: Apache/2.4.37 (AlmaLinux) OpenSSL/1.1.1k ()

User agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:144.0) Gecko/20100101 Firefox/144.0

Database:

Server Software: MariaDB Server

Server Version: 10.6.23-MariaDB

Server SQL Mode: STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

Host info: Localhost via UNIX socket

Requirements: PHP version (8.2.29) is supported. OS and PHP are relying on 64 bits integers. Sessions configuration is OK. Allocated memory is sufficient. Following extensions are installed: dom, fileinfo, filter, libxml, simplexml, tokenizer, xmlreader, xmlwriter. mysqli extension is installed curl extension is installed gd extension is installed intl extension is installed mbstring extension is installed zlib extension is installed bcmath extension is installed The constant SODIUM_CRYPTO_AEAD_XCHACHA20POLY1305_IETF_NPUBBYTES is present. openssl extension is installed Database engine version (10.6.23) is supported. The log file has been created successfully. Write access to /var/lib/glpi/_cache has been validated. Write access to /var/lib/glpi/_cron has been validated. Write access to /var/lib/glpi has been validated. Write access to /var/lib/glpi/_graphs has been validated. Write access to /var/lib/glpi/_lock has been validated. Write access to /var/lib/glpi/_pictures has been validated. Write access to /var/lib/glpi/_plugins has been validated. Write access to /var/lib/glpi/_rss has been validated. Write access to /var/lib/glpi/_sessions has been validated. Write access to /var/lib/glpi/_tmp has been validated. Write access to /var/lib/glpi/_uploads has been validated. SELinux configuration is OK.

Sessions configuration is secured. exif extension is installed ldap extension is installed Following extensions are installed: bz2, Phar, zip. Zend OPcache extension is installed Following extensions are installed: ctype, iconv, sodium. Write access to /var/www/html/glpi/marketplace has been validated. Timezones seems loaded in database.

GLPI constants
GLPI_ROOT: "/var/www/html/glpi"
GLPI_VERSION: "11.0.0"
GLPI_SCHEMA_VERSION: "11.0.0@ea2dbba0e1edbf5128d73bdb23c2c9b9f68468ba"
GLPI_FILES_VERSION: "11.0.0-f682f73d"
GLPI_MIN_PHP: "8.2"
GLPI_MAX_PHP: "8.5"
GLPI_YEAR: "2025"
GLPI_I18N_DIR: "/var/www/html/glpi/locales"
GLPI_CONFIG_DIR: "/etc/glpi/"
GLPI_VAR_DIR: "/var/lib/glpi"
GLPI_LOG_DIR: "/var/log/glpi"
GLPI_ENVIRONMENT_TYPE: "production"
GLPI_MARKETPLACE_DIR: "/var/www/html/glpi/marketplace"
GLPI_ALLOW_IFRAME_IN_RICH_TEXT: false
GLPI_SERVERSIDE_URL_ALLOWLIST: ["~^\n                        (http|https|feed)://
# protocol\n (\n (?:\n
(?:xn--[a-z0-9-]++\.)+xn--[a-z0-9-]++ # a domain name using punycode\n
|\n (?:[\pL\pN\pS\pM\-\]++\.)+[\pL\pN\pM]++ # a multi-level domain name\n |\n [a-z0-9\-\]++
# a single-level domain name\n )\.?\n |
# or\n \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}
# an IP address\n | # or\n \[\n
(?:(?:(?:(?:(?:(?:(?:[0-9a-f]{1,4})):){6})(?:(?:(?:(?:(?:[0-9a-f]{1,4})):(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:::(?:(?:(?:[0-9a-f]{1,4})):){5})(?:(?:(?:(?:(?:[0-9a-f]{1,4})):(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:[0-9a-f]{1,4})))?::(?:(?:(?:[0-9a-f]{1,4})):){4})(?:(?:(?:(?:(?:[0-9a-f]{1,4})):(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-f]{1,4})):){0,1}(?:(?:[0-9a-f]{1,4})))?::(?:(?:(?:[0-9a-f]{1,4})):){3})(?:(?:(?:(?:(?:[0-9a-f]{1,4})):(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-f]{1,4})):){0,2}(?:(?:[0-9a-f]{1,4})))?::(?:(?:(?:[0-9a-f]{1,4})):){2})(?:(?:(?:(?:(?:[0-9a-f]{1,4})):(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-f]{1,4})):){0,3}(?:(?:[0-9a-f]{1,4})))?::(?:(?:[0-9a-f]{1,4})):)(?:(?:(?:(?:(?:[0-9a-f]{1,4})):(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-f]{1,4})):){0,4}(?:(?:[0-9a-f]{1,4})))?::)(?:(?:(?:(?:(?:[0-9a-f]{1,4})):(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-f]{1,4})):){0,5}(?:(?:[0-9a-f]{1,4})))?::)(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:(?:[0-9a-f]{1,4})):){0,6}(?:(?:[0-9a-f]{1,4})))?::))))\n \] # an IPv6 address\n
)\n (?:/ (?:[\pL\pN\pS\pM\-._\~!$&'()
+,;=:@]|%[0-9A-Fa-f]{2})* )* # a path\n
(?:\? (?:[\pL\pN\-._\~!$&'\\+,;=:@/?]|%[0-9A-Fa-f]{2}) )? # a query (optional)\n
$~ixuD"] GLPI_DISALLOWED_UPLOADS_PATTERN: "/\.(php\d*|phar)$/i" GLPI_TELEMETRY_URI: "https://telemetry.glpi-project.org" GLPI_INSTALL_MODE: "TARBALL" GLPI_NETWORK_MAIL: "[email protected]" GLPI_NETWORK_SERVICES: "https://services.glpi-network.com" GLPI_MARKETPLACE_ENABLE: 3 GLPI_MARKETPLACE_PRERELEASES: false GLPI_MARKETPLACE_ALLOW_OVERRIDE: true GLPI_MARKETPLACE_MANUAL_DOWNLOADS: true GLPI_USER_AGENT_EXTRA_COMMENTS: "" GLPI_DOCUMENTATION_ROOT_URL: "https://links.glpi-project.org" GLPI_DISABLE_ONLY_FULL_GROUP_BY_SQL_MODE: "1" GLPI_LOG_LVL: "warning" GLPI_SKIP_UPDATES: false GLPI_STRICT_ENV: false GLPI_AJAX_DASHBOARD: "1" GLPI_CALDAV_IMPORT_STATE: 0 GLPI_CENTRAL_WARNINGS: "1" GLPI_SYSTEM_CRON: false GLPI_TEXT_MAXSIZE: "4000" GLPI_WEBHOOK_ALLOW_RESPONSE_SAVING: "0" GLPI_WEBHOOK_CRA_MANDATORY: false GLPI_ALTCHA_MODE: "interactive" GLPI_ALTCHA_MAX_NUMBER: 50000 GLPI_ALTCHA_EXPIRATION_INTERVAL: "PT20M" GLPI_DOC_DIR: "/var/lib/glpi" GLPI_CACHE_DIR: "/var/lib/glpi/_cache" GLPI_CRON_DIR: "/var/lib/glpi/_cron" GLPI_GRAPH_DIR: "/var/lib/glpi/_graphs" GLPI_LOCAL_I18N_DIR: "/var/lib/glpi/_locales" GLPI_LOCK_DIR: "/var/lib/glpi/_lock" GLPI_PICTURE_DIR: "/var/lib/glpi/_pictures" GLPI_PLUGIN_DOC_DIR: "/var/lib/glpi/_plugins" GLPI_RSS_DIR: "/var/lib/glpi/_rss" GLPI_SESSION_DIR: "/var/lib/glpi/_sessions" GLPI_TMP_DIR: "/var/lib/glpi/_tmp" GLPI_UPLOAD_DIR: "/var/lib/glpi/_uploads" GLPI_INVENTORY_DIR: "/var/lib/glpi/_inventories" GLPI_THEMES_DIR: "/var/lib/glpi/_themes" GLPI_PLUGINS_DIRECTORIES: ["/var/www/html/glpi/marketplace","/var/www/html/glpi/plugins"] GLPI_NETWORK_REGISTRATION_API_URL: "https://services.glpi-network.com/api/registration/" GLPI_MARKETPLACE_PLUGINS_API_URI: "https://services.glpi-network.com/api/marketplace/"
Plugins list
accounts             Name: Accounts                       Version: 3.1.1      State: Activado
Install Method: Marketplace activity Name: Activities Version: 3.2.3 State: Activado
Install Method: Marketplace actualtime Name: ActualTime Version: 3.2.0 State: Instalado / no activado
Install Method: Marketplace fields Name: Additional fields Version: 1.22.2 State: Activado
Install Method: Marketplace advancedforms Name: advancedforms Version: 1.0.0 State: Activado
Install Method: Marketplace advancedplanning Name: advancedplanning Version: 1.1.1 State: Instalado / no activado
Install Method: Marketplace news Name: Alerts Version: 1.13.0 State: Activado
Install Method: Marketplace barcode Name: Barcode Version: 2.7.1 State: Instalado / no activado
Install Method: Marketplace behaviors Name: Behaviours Version: 3.0.1 State: Activado
Install Method: Marketplace camerainput Name: Camera Input Version: 2.1.0 State: Instalado / no activado
Install Method: Marketplace positions Name: Cartography Version: 7.0.1 State: Instalado / no activado
Install Method: Marketplace connections Name: Connections Version: 11.0.1 State: Instalado / no activado
Install Method: Marketplace costs Name: Costs Version: 3.0.3 State: Instalado / no activado
Install Method: Marketplace dashboard Name: Dashboard Version: 1.0.3 State: Activado
Install Method: Manual datainjection Name: Data injection Version: 2.15.1 State: Activado
Install Method: Marketplace archidata Name: Data structures Version: 1.0.16 State: No instalado
Install Method: Marketplace archimap Name: Diagrams Version: 3.3.7 State: Instalado / no activado
Install Method: Marketplace manageentities Name: Entities portal Version: 4.1.2 State: Instalado / no activado
Install Method: Marketplace formcreator Name: Formcreator End-of-Life Update Version: 3.0.0 State: Activado
Install Method: Marketplace gantt Name: gantt Version: 1.2.0 State: Activado
Install Method: Marketplace genericobject Name: Generic Objects End-of-Life Up Version: 3.0.0 State: Activado
Install Method: Marketplace glpiinventory Name: GLPI Inventory Version: 1.6.0 State: Activado
Install Method: Marketplace resources Name: Human Resources Version: 4.0.2 State: Actualizar
Install Method: Marketplace addressing Name: IP Addressing Version: 3.1.0 State: Instalado / no activado
Install Method: Marketplace itilcategorygroups Name: ItilCategory Groups Version: 2.6.0 State: Instalado / no activado
Install Method: Marketplace metademands Name: Meta-Demands Version: 3.5.3 State: Activado
Install Method: Marketplace mreporting Name: More Reporting Version: 1.9.1 State: Activado
Install Method: Marketplace moreticket Name: More ticket Version: 1.8.0 State: Activado
Install Method: Marketplace mydashboard Name: My Dashboard Version: 2.2.2 State: Instalado / no activado
Install Method: Marketplace oauthimap Name: OAuth IMAP Version: 1.5.0 State: Instalado / no activado
Install Method: Marketplace order Name: Orders management Version: 2.12.1 State: Instalado / no activado
Install Method: Marketplace additionalalerts Name: Others alerts Version: 3.0.1 State: Activado
Install Method: Marketplace pdf Name: Print to pdf Version: 4.1.1 State: Instalado / no activado
Install Method: Marketplace printercounters Name: Printer counters Version: 2.0.1 State: Instalado / no activado
Install Method: Marketplace protocolsmanager Name: Protocols manager Version: 1.5.3.2 State: Instalado / no activado
Install Method: Manual purchaserequest Name: Purchase request Version: 3.1.1 State: Instalado / no activado
Install Method: Marketplace releases Name: Releases Version: 2.1.1 State: Instalado / no activado
Install Method: Marketplace reports Name: Reports Version: 1.16.0 State: Instalado / no activado
Install Method: Marketplace room Name: Rooms Version: 3.1.4 State: Activado
Install Method: Manual screenshot Name: Screenshot Version: 2.0.5 State: Instalado / no activado
Install Method: Marketplace singlesignon Name: Single Sign-on Version: 1.3.3 State: Instalado / no activado
Install Method: Manual stab Name: Split Timeline Action Buttons Version: 2.0.0 State: Activado
Install Method: Marketplace statecheck Name: Statecheck Rules Version: 2.4.7 State: Instalado / no activado
Install Method: Marketplace manufacturersimports Name: Suppliers imports Version: 3.1.1 State: Instalado / no activado
Install Method: Marketplace tag Name: Tag Management Version: 2.13.0 State: Activado
Install Method: Marketplace taskdrop Name: TaskDrop Version: 2.1.0 State: Instalado / no activado
Install Method: Marketplace tasklists Name: Tasks list Version: 2.1.1 State: Activado
Install Method: Marketplace ticketfilter Name: Ticketfilter Version: 1.2.0 State: Instalado / no activado
Install Method: Marketplace timelineticket Name: Timeline of tickets Version: 10.0+1.2 State: Instalado / no activado
Install Method: Marketplace treeview Name: Tree view Version: 1.20.0 State: Instalado / no activado
Install Method: Marketplace webresources Name: Web Resources Version: 2.0.4 State: Instalado / no activado
Install Method: Marketplace webhook Name: Webhooks Version: 1.0.20 State: Instalado / no activado
Install Method: Marketplace yagp Name: YAGP Version: 2.3.1 State: Instalado / no activado
Install Method: Marketplace

Anything else?

We need access to the previous submitted forms because we use it for evidence for audits ISO/IATF, we did registered all the maintenance for the computers.

there are the migrated forms: Image

The following image shows the submenu for each form. Adding a section to view submitted forms would be helpful, as the current system configuration only generates form submissions to record scheduled maintenance on equipment within a specific period, without creating tickets: Image

This is the migration status of my forms; we have migrated the forms, but it should be noted that we still cannot access the submitted forms that were created prior to the migration/update:

Image

i hope can help us with this "issue", i think GLPI is great system with a huge potential, we had used it from at least 5-6 years ago.

if you need more information let me know.

thanks in advance.

regards.

j-guevara-m avatar Nov 06 '25 16:11 j-guevara-m

In fact, you can't see the answers to a test form either. Is there any way to see the answers? I would also like to help with the solution. GLPI is the best solution for tickets and inventory on the market. If you would like to run any tests, we would be happy to do so. Thank you!

SeBytev3 avatar Nov 07 '25 00:11 SeBytev3

Many issues have been fixed in versions 11.0.1 and 11.0.2 on forms migration. Please first try to update your v10 database with latest stable release.

trasher avatar Nov 07 '25 06:11 trasher

At this time, we have version 11.0.2 installed.

SeBytev3 avatar Nov 07 '25 11:11 SeBytev3

I updated from 11.0.0 to 11.0.2 but still can't found an option where can see the submitted forms previous the migration. If you need additional information, let me know.

j-guevara-m avatar Nov 10 '25 22:11 j-guevara-m

This data was not taken into account by the migration, I'll look into fixing that so it is corrected for users that have not yet migrated.

For people that have already migrated, they'll need to manually update their database (maybe we can make a small script to make it easier for them).


Personal notes for later:

The data that need to be updated can be found here:

select ti.id, ti.itemtype, ti.items_id, fa.name, fa.plugin_formcreator_forms_id from glpi_items_tickets ti JOIN glpi_plugin_formcreator_formanswers fa on fa.id = ti.items_id where ti.itemtype = 'PluginFormcreatorFormAnswer';
Image

The itemtype must be updated to Glpi\Form\Form and the items_id to the id of the migrated form.

AdrienClairembault avatar Dec 08 '25 15:12 AdrienClairembault

thanks for accept my request and thanks for your great support.

Best regards.

j-guevara-m avatar Dec 17 '25 18:12 j-guevara-m