Hola,
¿es posible formatear un cuadro de diálogo usando el comando waptguihelper.message_dialog u otro comando?
Si es así, ¿dónde puedo encontrar las opciones disponibles?
[RESUELTO] Personalización de un cuadro de diálogo waptguihelper.message_dialog
Reglas del foro
Reglas del foro de la comunidad
* Soporte en inglés en www.reddit.com/r/wapt
* El soporte de la comunidad en francés está disponible en este foro
* Por favor, anteponga [RESUELTO] al título del tema si está resuelto.
* Por favor, no edite un tema que esté etiquetado como [RESUELTO]. Abra un nuevo tema haciendo referencia al anterior.
* Especifique la versión de WAPT instalada, la versión completa y el número de compilación (2.2.1.11957 / 2.2.2.12337 / etc.), así como la edición Enterprise/Discovery.
* Las versiones 1.8.2 y anteriores ya no son compatibles. Las únicas preguntas aceptadas sobre la versión 1.8.2 están relacionadas con la actualización a una versión compatible (2.1, 2.2, etc.).
* Especifique el sistema operativo del servidor (Linux/Windows) y la versión (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Especifique el sistema operativo de la máquina de administración/creación de paquetes y de la máquina con el agente problemático, si corresponde (Windows 7/10/11/Debian 11/etc.).
* Evite hacer varias preguntas al abrir un tema, ya que podría ser ignorado. Si hay varios temas, ábralos por separado, preferiblemente uno tras otro y no todos a la vez (es decir, no sature el foro con spam).
* Incluya fragmentos de código, capturas de pantalla y otras imágenes directamente en la publicación. Los enlaces a Pastebin, Bitly y otros sitios de terceros serán eliminados sistemáticamente.
* Como en cualquier foro comunitario, el soporte es proporcionado voluntariamente por los miembros. Si necesita soporte comercial, puede comunicarse con el departamento de ventas de Tranquil IT al 02.40.97.57.55.
Reglas del foro de la comunidad
* Soporte en inglés en www.reddit.com/r/wapt
* El soporte de la comunidad en francés está disponible en este foro
* Por favor, anteponga [RESUELTO] al título del tema si está resuelto.
* Por favor, no edite un tema que esté etiquetado como [RESUELTO]. Abra un nuevo tema haciendo referencia al anterior.
* Especifique la versión de WAPT instalada, la versión completa y el número de compilación (2.2.1.11957 / 2.2.2.12337 / etc.), así como la edición Enterprise/Discovery.
* Las versiones 1.8.2 y anteriores ya no son compatibles. Las únicas preguntas aceptadas sobre la versión 1.8.2 están relacionadas con la actualización a una versión compatible (2.1, 2.2, etc.).
* Especifique el sistema operativo del servidor (Linux/Windows) y la versión (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Especifique el sistema operativo de la máquina de administración/creación de paquetes y de la máquina con el agente problemático, si corresponde (Windows 7/10/11/Debian 11/etc.).
* Evite hacer varias preguntas al abrir un tema, ya que podría ser ignorado. Si hay varios temas, ábralos por separado, preferiblemente uno tras otro y no todos a la vez (es decir, no sature el foro con spam).
* Incluya fragmentos de código, capturas de pantalla y otras imágenes directamente en la publicación. Los enlaces a Pastebin, Bitly y otros sitios de terceros serán eliminados sistemáticamente.
* Como en cualquier foro comunitario, el soporte es proporcionado voluntariamente por los miembros. Si necesita soporte comercial, puede comunicarse con el departamento de ventas de Tranquil IT al 02.40.97.57.55.
-
regis.lemonnier
- Mensajes: 10
- Inscripciones: 15 oct 2022 - 16:41 horas.
Versión de WAPT instalada: 2.2.1.11957
Sistema operativo del servidor: Red Hat Enterprise Linux 8.6
Sistema operativo de la máquina de administración: Windows 10
Sistema operativo del servidor: Red Hat Enterprise Linux 8.6
Sistema operativo de la máquina de administración: Windows 10
waptguihelper no ofrece ninguna opción de personalización real...
Una pregunta a la vez.
Aparte de waptguihelper.grid_dialog(..) que permite la entrada en una cuadrícula
Alternativamente, puedes usar waptmessage con un formulario HTML
Ejemplo:
configuración.py
Una pregunta a la vez.
Aparte de waptguihelper.grid_dialog(..) que permite la entrada en una cuadrícula
Código: Seleccionar todo
Parameters:
- Title: the title for the dialog
- Data: a list or JSON string
Optional:
- ResultType: GRT_ALL or GRT_SELECTED - default is GRT_ALL
- MetaData: it can be used to change columns data type
- it must be a JSON
- all types: String, Date, Time, DateTime, Integer, Float, Boolean, Memo
- example: {"columns":[{"propertyname":"id","datatype":"Integer"}]}
- Text: the label above search box - default is "Search"
- StayOnTop: indicates if the form will always stay on top - default is FalseEjemplo:
configuración.py
Código: Seleccionar todo
# -*- coding: utf-8 -*-
from setuphelpers import *
import base64
import json
form = """\
<html encoding="utf8">
<form method="STDOUT">
<h2>Formulaire</h2>
Votre machine :
<input type="text" name="machine" value="%(machine)s"><br>
Votre nom:
<input type="text" name="nom" value="%(nom)s"><br>
Votre prénom:
<input type="text" name="prenom" value="%(prenom)s"><br>
<label for="pet-select">Choose a pet:</label>
<select name="pets" id="pet-select">
<option value="">--Please choose an option--</option>
<option value="dog">Dog</option>
<option value="cat">Cat</option>
<option value="hamster">Hamster</option>
<option value="parrot">Parrot</option>
<option value="spider">Spider</option>
<option value="goldfish">Goldfish</option>
</select>
<input type="submit" value="Valider">
</form>
</html>
"""
def install():
pass
def update_package():
nom = ''
prenom = ''
machine = get_computername()
pets=''
s = base64.b64encode((form % locals()).encode('utf8'))
result = run(['waptmessage','-c','-b',s])
if result:
data = json.loads(result)
nom = data['result']['nom']
prenom = data['result']['prenom']
machine = data['result']['machine']
pets = data['result']['pets']
print("""\
Nom: %s
Prénom: %s
Machine: %s
Animal: %s
""" % (nom,prenom,machine,pets))
TI tranquila
-
regis.lemonnier
- Mensajes: 10
- Inscripciones: 15 oct 2022 - 16:41 horas.
El uso de waptmessage con HTML satisface mis necesidades de visualización, pero cuando uso la parte de código proporcionada como ejemplo, el "resultado si" devuelve "Falso" aunque los campos del formulario estén completados y validados (botones "Validar" + Ok).
¿Alguna idea de qué causó el fallo?
¿Alguna idea de qué causó el fallo?
htouvet escribió: ↑6 de julio de 2023 - 16:27 waptguihelper no ofrece ninguna opción de personalización real...
Una pregunta a la vez.
Aparte de waptguihelper.grid_dialog(..) que permite la entrada en una cuadrículaAlternativamente, puedes usar waptmessage con un formulario HTMLCódigo: Seleccionar todo
Parameters: - Title: the title for the dialog - Data: a list or JSON string Optional: - ResultType: GRT_ALL or GRT_SELECTED - default is GRT_ALL - MetaData: it can be used to change columns data type - it must be a JSON - all types: String, Date, Time, DateTime, Integer, Float, Boolean, Memo - example: {"columns":[{"propertyname":"id","datatype":"Integer"}]} - Text: the label above search box - default is "Search" - StayOnTop: indicates if the form will always stay on top - default is False
Ejemplo:
configuración.py
Código: Seleccionar todo
# -*- coding: utf-8 -*- from setuphelpers import * import base64 import json form = """\ <html encoding="utf8"> <form method="STDOUT"> <h2>Formulaire</h2> Votre machine : <input type="text" name="machine" value="%(machine)s"><br> Votre nom: <input type="text" name="nom" value="%(nom)s"><br> Votre prénom: <input type="text" name="prenom" value="%(prenom)s"><br> <label for="pet-select">Choose a pet:</label> <select name="pets" id="pet-select"> <option value="">--Please choose an option--</option> <option value="dog">Dog</option> <option value="cat">Cat</option> <option value="hamster">Hamster</option> <option value="parrot">Parrot</option> <option value="spider">Spider</option> <option value="goldfish">Goldfish</option> </select> <input type="submit" value="Valider"> </form> </html> """ def install(): pass def update_package(): nom = '' prenom = '' machine = get_computername() pets='' s = base64.b64encode((form % locals()).encode('utf8')) result = run(['waptmessage','-c','-b',s]) if result: data = json.loads(result) nom = data['result']['nom'] prenom = data['result']['prenom'] machine = data['result']['machine'] pets = data['result']['pets'] print("""\ Nom: %s Prénom: %s Machine: %s Animal: %s """ % (nom,prenom,machine,pets))
Versión de WAPT instalada: 2.2.1.11957
Sistema operativo del servidor: Red Hat Enterprise Linux 8.6
Sistema operativo de la máquina de administración: Windows 10
Sistema operativo del servidor: Red Hat Enterprise Linux 8.6
Sistema operativo de la máquina de administración: Windows 10
Esto podría deberse a la diferencia de versiones. Probé el fragmento de código con mi versión de desarrollo de Wapt.
Al parecer, estás usando la versión 2.2.
Puedes intentar ejecutarlo manualmente en la línea de comandos para ver el resultado (o la ausencia del mismo en tu caso).
Al parecer, estás usando la versión 2.2.
Puedes intentar ejecutarlo manualmente en la línea de comandos para ver el resultado (o la ausencia del mismo en tu caso).
TI tranquila
Esto funciona con ensure_unicode
Código: Seleccionar todo
s = ensure_unicode(base64.b64encode((form % locals()).encode("utf8")))
{"method":"STDOUT","action":"","target":"","enctype":"","result":{"machine":"jpe-clt-win11","nom":"jghjgj","prenom":"","pets":"--Please choose an option--"}} 