pgkiln 0.84.0 → 0.85.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/apex-feature-parity.md +2 -2
- package/docs/guide/03-builder.md +14 -5
- package/docs/guide/12-development.md +6 -1
- package/package.json +1 -1
- package/src/app.ts +9 -0
- package/src/builder/ai-agents.ts +86 -85
- package/src/builder/ai-builder.ts +30 -30
- package/src/builder/ai.ts +93 -92
- package/src/builder/api.ts +47 -47
- package/src/builder/app-groups.ts +33 -32
- package/src/builder/appfromfile.ts +57 -58
- package/src/builder/appsheets.ts +33 -32
- package/src/builder/appwizard.ts +65 -65
- package/src/builder/arrange.ts +23 -22
- package/src/builder/assistant.ts +39 -38
- package/src/builder/automations.ts +32 -31
- package/src/builder/availability.ts +24 -24
- package/src/builder/backups.ts +30 -31
- package/src/builder/blueprints.ts +62 -61
- package/src/builder/create-page.ts +52 -50
- package/src/builder/cross-app.ts +37 -35
- package/src/builder/dataload.ts +2 -2
- package/src/builder/datasets.ts +107 -106
- package/src/builder/dependencies.ts +20 -19
- package/src/builder/designer.ts +36 -36
- package/src/builder/diagnostics.ts +58 -57
- package/src/builder/features.ts +39 -35
- package/src/builder/feedback.ts +23 -20
- package/src/builder/find-workspace.ts +28 -24
- package/src/builder/form-designer.ts +36 -35
- package/src/builder/gallery.ts +25 -29
- package/src/builder/globalization.ts +50 -49
- package/src/builder/i18n/de.ts +3453 -0
- package/src/builder/i18n/en.ts +3453 -0
- package/src/builder/i18n/es.ts +3453 -0
- package/src/builder/i18n/fr.ts +3453 -0
- package/src/builder/i18n/it.ts +3453 -0
- package/src/builder/i18n/ja.ts +3453 -0
- package/src/builder/i18n/ko.ts +3453 -0
- package/src/builder/i18n/nl.ts +3453 -0
- package/src/builder/i18n/pt.ts +3453 -0
- package/src/builder/i18n/zh-cn.ts +3453 -0
- package/src/builder/i18n/zh-tw.ts +3453 -0
- package/src/builder/i18n.ts +17 -3
- package/src/builder/json-sources.ts +63 -62
- package/src/builder/layouts.ts +12 -11
- package/src/builder/locks.ts +29 -28
- package/src/builder/login-page.ts +26 -25
- package/src/builder/mail.ts +148 -147
- package/src/builder/newapp.ts +15 -12
- package/src/builder/plugins.ts +47 -44
- package/src/builder/process-jobs.ts +11 -10
- package/src/builder/pwa.ts +22 -21
- package/src/builder/remote-databases.ts +55 -56
- package/src/builder/report-settings.ts +1 -1
- package/src/builder/reporter.ts +43 -42
- package/src/builder/rest-catalogs.ts +87 -86
- package/src/builder/rest.ts +9 -8
- package/src/builder/routes.ts +27 -27
- package/src/builder/search.ts +14 -13
- package/src/builder/static-files.ts +31 -32
- package/src/builder/subscriptions.ts +47 -45
- package/src/builder/supporting.ts +23 -18
- package/src/builder/team.ts +179 -179
- package/src/builder/telemetry.ts +59 -62
- package/src/builder/templates.ts +66 -65
- package/src/builder/themeroller.ts +60 -63
- package/src/builder/ui-defaults.ts +21 -20
- package/src/builder/ui.ts +2 -1
- package/src/builder/upgrade.ts +25 -24
- package/src/builder/utilities.ts +48 -47
- package/src/builder/vector-providers.ts +67 -66
- package/src/builder/websources.ts +43 -42
- package/src/builder/wizards.ts +95 -89
- package/src/builder/workflow-migrate.ts +30 -31
- package/src/builder/workflows.ts +40 -39
- package/src/builder/workingcopies.ts +41 -49
- package/src/builder/workspace-backups.ts +21 -20
- package/src/builder/workspace-mail.ts +17 -16
- package/src/builder/workspace-resources.ts +104 -112
- package/src/builder/workspace-transfer.ts +34 -26
package/src/builder/i18n/es.ts
CHANGED
|
@@ -4049,6 +4049,2832 @@ export const es: BuilderMessages = {
|
|
|
4049
4049
|
'docv.view': 'Vista',
|
|
4050
4050
|
'docv.doc_column': 'Columna del documento',
|
|
4051
4051
|
'docv.intro': 'Una vista de documentos muestra cada fila de {table} con sus filas hijas como un documento JSON, como una JSON Relational Duality View de Oracle. Los informes, REST (AutoREST sobre la vista) y MCP leen documentos enteros; un update de la columna del documento escribe la fila y sus hijas en una sentencia. Se aplican la seguridad a nivel de fila y los permisos de la tabla (la vista es security_invoker y recibe los permisos de la tabla).',
|
|
4052
|
+
// ------------------------------------------------------------ Team Development (sprint 164)
|
|
4053
|
+
'tm.team_development': 'Desarrollo en equipo',
|
|
4054
|
+
'tm.you_are_not_a_developer': 'No es desarrollador de ningún espacio de trabajo: Desarrollo en equipo pertenece a un espacio de trabajo.',
|
|
4055
|
+
'tm.search': 'Buscar',
|
|
4056
|
+
'tm.clear': 'Limpiar',
|
|
4057
|
+
'tm.title': 'Título',
|
|
4058
|
+
'tm.description': 'Descripción',
|
|
4059
|
+
'tm.milestone': 'Hito',
|
|
4060
|
+
'tm.application': 'Aplicación',
|
|
4061
|
+
'tm.page_number': 'Número de página',
|
|
4062
|
+
'tm.a_page_of_the_application': 'Una página de la aplicación.',
|
|
4063
|
+
'tm.labels': 'Etiquetas',
|
|
4064
|
+
'tm.set_up_team_development': 'configurar Desarrollo en equipo',
|
|
4065
|
+
'tm.add_labels': 'añadir etiquetas',
|
|
4066
|
+
'tm.assignees': 'Asignados',
|
|
4067
|
+
'tm.set_up_team_development_2': 'Configurar Desarrollo en equipo',
|
|
4068
|
+
'tm.mentions_of_you': 'Menciones a usted',
|
|
4069
|
+
'tm.nobody_mentioned_you_in_an': 'Nadie le ha mencionado en un comentario no visto.',
|
|
4070
|
+
'tm.saved_views': 'Vistas guardadas',
|
|
4071
|
+
'tm.save_the_filters_you_use': 'Guarde los filtros que usa a menudo.',
|
|
4072
|
+
'tm.name_of_the_view': 'Nombre de la vista',
|
|
4073
|
+
'tm.quick_filters': 'Filtros rápidos',
|
|
4074
|
+
'tm.assigned_to_me': 'Asignadas a mí',
|
|
4075
|
+
'tm.not_assigned': 'Sin asignar',
|
|
4076
|
+
'tm.closed': 'Cerradas',
|
|
4077
|
+
'tm.board_by_label': 'Tablero por etiqueta',
|
|
4078
|
+
'tm.board_by_milestone': 'Tablero por hito',
|
|
4079
|
+
'tm.move': 'Mover',
|
|
4080
|
+
'tm.no_issues': 'No hay incidencias.',
|
|
4081
|
+
'tm.start_from_a_template': 'Empezar con una plantilla',
|
|
4082
|
+
'tm.use_template': 'Usar plantilla',
|
|
4083
|
+
'tm.create_issue': 'Crear incidencia',
|
|
4084
|
+
'tm.cancel': 'Cancelar',
|
|
4085
|
+
'tm.no_description': 'Sin descripción.',
|
|
4086
|
+
'tm.activity': 'Actividad',
|
|
4087
|
+
'tm.canned_response': 'Respuesta predefinida',
|
|
4088
|
+
'tm.insert': 'Insertar',
|
|
4089
|
+
'tm.add_a_comment': 'Añadir un comentario',
|
|
4090
|
+
'tm.markdown_name_mentions_a_developer': 'Markdown; @nombre menciona a un desarrollador de este espacio de trabajo.',
|
|
4091
|
+
'tm.comment': 'Comentar',
|
|
4092
|
+
'tm.status': 'Estado',
|
|
4093
|
+
'tm.none': 'Ninguna',
|
|
4094
|
+
'tm.nobody': 'Nadie',
|
|
4095
|
+
'tm.from_feedback': 'Desde comentarios',
|
|
4096
|
+
'tm.from_a_developer_comment': 'Desde un comentario de desarrollador',
|
|
4097
|
+
'tm.delete': 'Eliminar',
|
|
4098
|
+
'tm.save': 'Guardar',
|
|
4099
|
+
'tm.name': 'Nombre',
|
|
4100
|
+
'tm.colour': 'Color',
|
|
4101
|
+
'tm.group': 'Grupo',
|
|
4102
|
+
'tm.edit': 'Editar',
|
|
4103
|
+
'tm.no_labels_in_this_group': 'No hay etiquetas en este grupo.',
|
|
4104
|
+
'tm.delete_group': 'Eliminar grupo',
|
|
4105
|
+
'tm.add_group': 'Añadir grupo',
|
|
4106
|
+
'tm.the_board_groups_issues_by': 'El tablero agrupa las incidencias por las etiquetas de un grupo. Solo los administradores del espacio de trabajo eliminan etiquetas y grupos.',
|
|
4107
|
+
'tm.due': 'Vence',
|
|
4108
|
+
'tm.no_milestones_yet': 'Todavía no hay hitos.',
|
|
4109
|
+
'tm.kind': 'Tipo',
|
|
4110
|
+
'tm.issue_title': 'Título de la incidencia',
|
|
4111
|
+
'tm.issue_templates_only': 'Solo plantillas de incidencia.',
|
|
4112
|
+
'tm.issue_templates_label_names_separated': 'Plantillas de incidencia: nombres de etiqueta separados por comas.',
|
|
4113
|
+
'tm.text': 'Texto',
|
|
4114
|
+
'tm.markdown': 'Markdown.',
|
|
4115
|
+
'tm.use': 'Usar',
|
|
4116
|
+
'tm.none_yet': 'Todavía ninguno.',
|
|
4117
|
+
'tm.language': 'Idioma',
|
|
4118
|
+
'tm.install': 'Instalar',
|
|
4119
|
+
'tm.set_up': 'Configurar',
|
|
4120
|
+
'tm.new_issue': 'Nueva incidencia',
|
|
4121
|
+
'tm.make_an_issue': 'Crear una incidencia',
|
|
4122
|
+
'tm.show': 'Mostrar',
|
|
4123
|
+
'tm.mark_all_as_seen': 'Marcar todo como visto',
|
|
4124
|
+
'tm.save_view': 'Guardar vista',
|
|
4125
|
+
'tm.label': 'Etiqueta',
|
|
4126
|
+
'tm.delete_issue': 'Eliminar incidencia',
|
|
4127
|
+
'tm.edit_the_issue': 'Editar la incidencia',
|
|
4128
|
+
'tm.delete_label': 'Eliminar etiqueta',
|
|
4129
|
+
'tm.delete_milestone': 'Eliminar hito',
|
|
4130
|
+
'tm.delete_template': 'Eliminar plantilla',
|
|
4131
|
+
'tm.filter_the_issues': 'Filtrar las incidencias',
|
|
4132
|
+
'tm.title_text_or_number': 'Título, texto o #número',
|
|
4133
|
+
'tm.name_of_this_view': 'Nombre de esta vista',
|
|
4134
|
+
'tm.label_group': 'Grupo de etiquetas',
|
|
4135
|
+
'tm.group_the_board_by': 'Agrupar el tablero por',
|
|
4136
|
+
'tm.e_g_area': 'p. ej. Área',
|
|
4137
|
+
'tm.open_issues_of_this_page': 'Incidencias abiertas de esta página',
|
|
4138
|
+
'tm.issue_saved': 'Incidencia guardada.',
|
|
4139
|
+
'tm.a_comment_has_1_to': 'Un comentario tiene de 1 a 20000 caracteres.',
|
|
4140
|
+
'tm.comment_added': 'Comentario añadido.',
|
|
4141
|
+
'tm.a_view_has_a_name': 'Una vista tiene un nombre de 1 a 40 caracteres.',
|
|
4142
|
+
'tm.view_deleted': 'Vista eliminada.',
|
|
4143
|
+
'tm.mentions_marked_as_seen': 'Menciones marcadas como vistas.',
|
|
4144
|
+
'tm.a_label_has_a_name': 'Una etiqueta tiene un nombre de 1 a 40 caracteres.',
|
|
4145
|
+
'tm.a_group_has_a_name': 'Un grupo tiene un nombre de 1 a 40 caracteres.',
|
|
4146
|
+
'tm.a_milestone_has_a_name': 'Un hito tiene un nombre de 1 a 40 caracteres y una fecha opcional.',
|
|
4147
|
+
'tm.a_template_has_a_name': 'Una plantilla tiene un nombre de 1 a 60 caracteres y hasta 20000 caracteres de texto.',
|
|
4148
|
+
'tm.template_deleted': 'La plantilla está eliminada.',
|
|
4149
|
+
'tm.an_issue_needs_a_title': 'Una incidencia necesita un título.',
|
|
4150
|
+
'tm.the_title_is_at_most': 'El título tiene como máximo 200 caracteres.',
|
|
4151
|
+
'tm.the_text_is_at_most': 'El texto tiene como máximo 20000 caracteres.',
|
|
4152
|
+
'tm.unknown_label': 'Etiqueta desconocida.',
|
|
4153
|
+
'tm.unknown_milestone': 'Hito desconocido.',
|
|
4154
|
+
'tm.assignees_are_developers_of_this': 'Los asignados son desarrolladores de este espacio de trabajo.',
|
|
4155
|
+
'tm.the_application_is_not_one': 'La aplicación no es de este espacio de trabajo.',
|
|
4156
|
+
'tm.the_page_is_a_page': 'La página es un número de página.',
|
|
4157
|
+
'tm.choose_the_application_of_the': 'Elija la aplicación de la página.',
|
|
4158
|
+
'tm.add_a_label': 'Añadir una etiqueta',
|
|
4159
|
+
'tm.add_a_label_group': 'Añadir un grupo de etiquetas',
|
|
4160
|
+
'tm.milestones': 'Hitos',
|
|
4161
|
+
'tm.add_a_milestone': 'Añadir un hito',
|
|
4162
|
+
'tm.issue_templates': 'Plantillas de incidencia',
|
|
4163
|
+
'tm.canned_responses': 'Respuestas predefinidas',
|
|
4164
|
+
'tm.add_a_template': 'Añadir una plantilla',
|
|
4165
|
+
'tm.board': 'Tablero',
|
|
4166
|
+
'tm.templates': 'Plantillas',
|
|
4167
|
+
'tm.counts_open': '{n} incidencias abiertas',
|
|
4168
|
+
'tm.counts_open_1': '1 incidencia abierta',
|
|
4169
|
+
'tm.counts_mine': '{n} asignadas a usted',
|
|
4170
|
+
'tm.counts_mentions': '{n} menciones a usted',
|
|
4171
|
+
'tm.counts_mentions_1': '1 mención a usted',
|
|
4172
|
+
'tm.tab.issues': 'Incidencias',
|
|
4173
|
+
'tm.tab.board': 'Tablero',
|
|
4174
|
+
'tm.tab.labels': 'Etiquetas',
|
|
4175
|
+
'tm.tab.milestones': 'Hitos',
|
|
4176
|
+
'tm.tab.templates': 'Plantillas',
|
|
4177
|
+
'tm.tab.setup': 'Configurar',
|
|
4178
|
+
'tm.body_help': 'Markdown: títulos, listas, `code`, enlaces. Mencione a un desarrollador con @nombre: lo verá en Desarrollo en equipo.',
|
|
4179
|
+
'tm.no_labels_or': 'Todavía no hay etiquetas: {setup} o {add}.',
|
|
4180
|
+
'tm.no_labels': 'Todavía no hay etiquetas: {setup}.',
|
|
4181
|
+
'tm.new_here': '¿Es nuevo? {setup}: etiquetas de ejemplo (Bug, Feature, Task; prioridades), plantillas e hitos.',
|
|
4182
|
+
'tm.blank_issue': 'Incidencia en blanco',
|
|
4183
|
+
'tm.status_closed': 'Cerrada',
|
|
4184
|
+
'tm.status_open': 'Abierta',
|
|
4185
|
+
'tm.comment_reopen': 'Comentar y reabrir',
|
|
4186
|
+
'tm.comment_close': 'Comentar y cerrar',
|
|
4187
|
+
'tm.reopen_issue': 'Reabrir incidencia',
|
|
4188
|
+
'tm.close_issue': 'Cerrar incidencia',
|
|
4189
|
+
'tm.add_label': 'Añadir etiqueta',
|
|
4190
|
+
'tm.labels_no_group': 'Etiquetas sin grupo',
|
|
4191
|
+
'tm.delete_label_confirm': '¿Eliminar la etiqueta {name}? Las incidencias la pierden.',
|
|
4192
|
+
'tm.delete_group_confirm': '¿Eliminar el grupo {name}? Sus etiquetas se quedan, sin grupo.',
|
|
4193
|
+
'tm.add_milestone': 'Añadir hito',
|
|
4194
|
+
'tm.kind_issue': 'Plantilla de incidencia',
|
|
4195
|
+
'tm.kind_response': 'Respuesta predefinida',
|
|
4196
|
+
'tm.add_template': 'Añadir plantilla',
|
|
4197
|
+
'tm.page_issues': '{n} incidencias abiertas:',
|
|
4198
|
+
'tm.page_issues_1': '1 incidencia abierta:',
|
|
4199
|
+
'tm.all_n': 'las {n}',
|
|
4200
|
+
'tm.no_page': 'La aplicación no tiene página {page}.',
|
|
4201
|
+
'tm.created': 'Incidencia #{id} creada.',
|
|
4202
|
+
'tm.reopened': 'Incidencia #{id} reabierta.',
|
|
4203
|
+
'tm.deleted': 'Incidencia #{id} eliminada.',
|
|
4204
|
+
'tm.view_saved': 'Vista {name} guardada.',
|
|
4205
|
+
'tm.label_saved': 'Etiqueta {name} guardada.',
|
|
4206
|
+
'tm.group_added': 'Grupo {name} añadido.',
|
|
4207
|
+
'tm.group_exists': 'Ya existe un grupo {name}.',
|
|
4208
|
+
'tm.label_deleted': 'La etiqueta está eliminada.',
|
|
4209
|
+
'tm.group_deleted': 'El grupo de etiquetas está eliminado.',
|
|
4210
|
+
'tm.milestone_deleted': 'El hito está eliminado.',
|
|
4211
|
+
'tm.milestone_saved': 'Hito {name} guardado.',
|
|
4212
|
+
'tm.template_saved': 'Plantilla {name} guardada.',
|
|
4213
|
+
'tm.setup_done': 'Configurado: {groups} grupo(s) de etiquetas, {labels} etiqueta(s), {templates} plantilla(s) y {milestones} hito(s) añadidos.',
|
|
4214
|
+
'tm.created_feedback': 'Incidencia #{id} creada a partir del comentario.',
|
|
4215
|
+
'tm.created_comment': 'Incidencia #{id} creada a partir del comentario de desarrollador.',
|
|
4216
|
+
'tm.no_milestone': 'Sin hito',
|
|
4217
|
+
'tm.none_of_these': 'Ninguna de estas',
|
|
4218
|
+
'tm.other_labels': 'Otras etiquetas',
|
|
4219
|
+
'tm.setup_intro': 'Instala datos de ejemplo para {workspace}; lo que ya existe (por nombre) se conserva, así que puede ejecutarlo de nuevo.',
|
|
4220
|
+
'tm.this_workspace': 'este espacio de trabajo',
|
|
4221
|
+
'tm.setup_labels': 'Grupos de etiquetas y etiquetas: {list}',
|
|
4222
|
+
'tm.setup_templates': 'Plantillas: {list}; respuestas predefinidas ({n})',
|
|
4223
|
+
'tm.setup_milestones': 'Hitos: {list}',
|
|
4224
|
+
'tm.issue_closed': 'Incidencia #{id} cerrada.',
|
|
4225
|
+
// ------------------------------------------------------------ Mail services (sprint 164)
|
|
4226
|
+
'ml.only_with_sign_in_oauth2': '(solo con inicio de sesión: OAuth2)',
|
|
4227
|
+
'ml.advanced': 'Avanzado',
|
|
4228
|
+
'ml.choose_another_provider': 'Elegir otro proveedor',
|
|
4229
|
+
'ml.queued_utc': 'En cola (UTC)',
|
|
4230
|
+
'ml.application': 'Aplicación',
|
|
4231
|
+
'ml.to': 'Para',
|
|
4232
|
+
'ml.subject': 'Asunto',
|
|
4233
|
+
'ml.from': 'De',
|
|
4234
|
+
'ml.attempts': 'Intentos',
|
|
4235
|
+
'ml.status': 'Estado',
|
|
4236
|
+
'ml.actions': 'Acciones',
|
|
4237
|
+
'ml.no_mail_yet': 'Todavía no hay correo.',
|
|
4238
|
+
'ml.only_administrators_configure_mail_services': 'Solo los administradores configuran los servicios de correo.',
|
|
4239
|
+
'ml.mail_services': 'Servicios de correo',
|
|
4240
|
+
'ml.send_e_mail': 'Enviar correo',
|
|
4241
|
+
'ml.service': 'Servicio',
|
|
4242
|
+
'ml.provider': 'Proveedor',
|
|
4243
|
+
'ml.senders': 'Remitentes',
|
|
4244
|
+
'ml.secret': 'Secreto',
|
|
4245
|
+
'ml.applications': 'Aplicaciones',
|
|
4246
|
+
'ml.its_applications_without_a_service': 'sus aplicaciones sin servicio propio',
|
|
4247
|
+
'ml.no_mail_services_yet': 'Todavía no hay servicios de correo.',
|
|
4248
|
+
'ml.add_a_mail_service': 'Añadir un servicio de correo',
|
|
4249
|
+
'ml.step_1_of_2_how': 'Paso 1 de 2: ¿cómo deben enviar correo las aplicaciones?',
|
|
4250
|
+
'ml.change': 'Cambiar',
|
|
4251
|
+
'ml.delete_service': 'Eliminar servicio',
|
|
4252
|
+
'ml.the_applications_that_send_through': 'Las aplicaciones que envían a través de este servicio (cada aplicación tiene uno), su dirección De (vacía: la predeterminada del servicio) y un límite diario (UTC; vacío: ninguno). Una aplicación con otro servicio lo muestra.',
|
|
4253
|
+
'ml.sends_through_this_service': 'Envía con este servicio',
|
|
4254
|
+
'ml.from_address': 'Dirección De',
|
|
4255
|
+
'ml.mails_per_day': 'Correos por día',
|
|
4256
|
+
'ml.no_applications': 'No hay aplicaciones.',
|
|
4257
|
+
'ml.save': 'Guardar',
|
|
4258
|
+
'ml.send_again': 'Enviar de nuevo',
|
|
4259
|
+
'ml.cancel': 'Cancelar',
|
|
4260
|
+
'ml.no_from_address': 'sin dirección De',
|
|
4261
|
+
'ml.it_may_not_send_mail': 'Todavía no puede enviar correo',
|
|
4262
|
+
'ml.show': 'Mostrar',
|
|
4263
|
+
'ml.find_my_workspace': 'Buscar mi espacio de trabajo',
|
|
4264
|
+
'ml.test_connection': 'Probar la conexión',
|
|
4265
|
+
'ml.send_test_mail': 'Enviar correo de prueba',
|
|
4266
|
+
'ml.add_service': 'Añadir servicio',
|
|
4267
|
+
'ml.tenant_id_microsoft_entra': 'ID de inquilino (Microsoft Entra)',
|
|
4268
|
+
'ml.client_application_id': 'ID de cliente (aplicación)',
|
|
4269
|
+
'ml.token_url': 'URL del token',
|
|
4270
|
+
'ml.scope': 'Ámbito',
|
|
4271
|
+
'ml.host': 'Host',
|
|
4272
|
+
'ml.port': 'Puerto',
|
|
4273
|
+
'ml.security': 'Seguridad',
|
|
4274
|
+
'ml.sign_in': 'Inicio de sesión',
|
|
4275
|
+
'ml.user_name': 'Nombre de usuario',
|
|
4276
|
+
'ml.check_the_server_s_certificate': 'Comprobar el certificado del servidor',
|
|
4277
|
+
'ml.keep_a_copy_in_the': 'Guardar una copia en Elementos enviados del buzón',
|
|
4278
|
+
'ml.aws_region': 'Región de AWS',
|
|
4279
|
+
'ml.access_key_id': 'ID de clave de acceso',
|
|
4280
|
+
'ml.sending_domain': 'Dominio de envío',
|
|
4281
|
+
'ml.region': 'Región',
|
|
4282
|
+
'ml.message_stream': 'Flujo de mensajes',
|
|
4283
|
+
'ml.remove_the_stored_secret': 'Quitar el secreto guardado',
|
|
4284
|
+
'ml.name': 'Nombre',
|
|
4285
|
+
'ml.description': 'Descripción',
|
|
4286
|
+
'ml.enabled': 'Activado',
|
|
4287
|
+
'ml.allowed_senders': 'Remitentes permitidos',
|
|
4288
|
+
'ml.default_from_address': 'Dirección De predeterminada',
|
|
4289
|
+
'ml.api_base_url': 'URL base de la API',
|
|
4290
|
+
'ml.send_a_test_mail_to': 'Enviar un correo de prueba a',
|
|
4291
|
+
'ml.smtp_server': 'Servidor SMTP',
|
|
4292
|
+
'ml.microsoft_entra_application': 'Aplicación de Microsoft Entra',
|
|
4293
|
+
'ml.amazon_ses': 'Amazon SES',
|
|
4294
|
+
'ml.mailgun': 'Mailgun',
|
|
4295
|
+
'ml.postmark': 'Postmark',
|
|
4296
|
+
'ml.check_before_saving': 'Comprobar antes de guardar',
|
|
4297
|
+
'ml.contoso_onmicrosoft_com_or_its': 'contoso.onmicrosoft.com o su GUID',
|
|
4298
|
+
'ml.empty_microsoft_entra_of_the': 'vacío: Microsoft Entra del inquilino',
|
|
4299
|
+
'ml.another_identity_provider_s_token': 'El endpoint de token de otro proveedor de identidad (concesión de credenciales de cliente), p. ej. el de Google.',
|
|
4300
|
+
'ml.empty_587_starttls_or_465': 'Vacío: 587 (STARTTLS) o 465 (TLS).',
|
|
4301
|
+
'ml.the_mailbox_e_g_noreply': 'el buzón, p. ej. noreply@example.com',
|
|
4302
|
+
'ml.eu_west_1': 'eu-west-1',
|
|
4303
|
+
'ml.e_g_office365': 'p. ej. OFFICE365',
|
|
4304
|
+
'ml.upper_case_letters_digits_and': 'Letras mayúsculas, dígitos y _.',
|
|
4305
|
+
'ml.noreply_example_com_example_com': 'noreply@example.com, @example.com',
|
|
4306
|
+
'ml.the_from_addresses_this_service': 'Las direcciones De con las que este servicio puede enviar: una dirección, o @dominio para todas las direcciones de un dominio (el proveedor también debe aceptarlas).',
|
|
4307
|
+
'ml.noreply_example_com': 'noreply@example.com',
|
|
4308
|
+
'ml.for_applications_that_set_none': 'Para las aplicaciones que no definen ninguna.',
|
|
4309
|
+
'ml.empty_the_provider_s_own': 'vacío: la API del propio proveedor',
|
|
4310
|
+
'ml.a_gateway_or_proxy_that': 'Una pasarela o proxy que habla la API del proveedor. Solo administradores.',
|
|
4311
|
+
'ml.you_example_com': 'usted@example.com',
|
|
4312
|
+
'ml.one_of_the_allowed_senders': 'Uno de los remitentes permitidos.',
|
|
4313
|
+
'ml.pgkiln_example_com': 'pgkiln@example.com',
|
|
4314
|
+
'ml.one_of_the_service_s': 'Uno de los remitentes del servicio.',
|
|
4315
|
+
'ml.any_smtp_server_or_relay': 'Cualquier servidor o relé SMTP. Inicio de sesión con contraseña o con OAuth2 (Exchange Online, Google Workspace).',
|
|
4316
|
+
'ml.microsoft_365_through_the_graph': 'Microsoft 365 a través de la Graph API, como aplicación de Entra con Mail.Send.',
|
|
4317
|
+
'ml.amazon_simple_email_service_api': 'Amazon Simple Email Service (API v2), con una clave de acceso de IAM.',
|
|
4318
|
+
'ml.resend_s_http_api_with': 'La API HTTP de Resend, con una clave de API.',
|
|
4319
|
+
'ml.postmark_s_http_api_with': 'La API HTTP de Postmark, con un token de servidor.',
|
|
4320
|
+
'ml.sendgrid_s_http_api_with': 'La API HTTP de SendGrid, con una clave de API.',
|
|
4321
|
+
'ml.mailgun_s_http_api_with': 'La API HTTP de Mailgun, con una clave de API y un dominio de envío.',
|
|
4322
|
+
'ml.for_development_and_demos_the': 'Para desarrollo y demos: el servidor escribe cada correo en su registro y no envía nada.',
|
|
4323
|
+
'ml.starttls_required': 'STARTTLS (obligatorio)',
|
|
4324
|
+
'ml.tls_from_the_start_port': 'TLS desde el inicio (puerto 465)',
|
|
4325
|
+
'ml.none_a_local_relay_only': 'Ninguna (solo un relé local)',
|
|
4326
|
+
'ml.user_name_and_password': 'Usuario y contraseña',
|
|
4327
|
+
'ml.oauth2_xoauth2_client_credentials': 'OAuth2 (XOAUTH2, credenciales de cliente)',
|
|
4328
|
+
'ml.none': 'Ninguno',
|
|
4329
|
+
'ml.all': 'Todos',
|
|
4330
|
+
'ml.queued': 'En cola',
|
|
4331
|
+
'ml.sending': 'Enviando',
|
|
4332
|
+
'ml.sent': 'Enviado',
|
|
4333
|
+
'ml.error': 'Error',
|
|
4334
|
+
'ml.cancelled': 'Cancelado',
|
|
4335
|
+
'ml.password_or_the_client_secret': 'Contraseña o secreto de cliente (OAuth2)',
|
|
4336
|
+
'ml.client_secret': 'Secreto de cliente',
|
|
4337
|
+
'ml.secret_access_key': 'Clave de acceso secreta',
|
|
4338
|
+
'ml.server_token': 'Token de servidor',
|
|
4339
|
+
'ml.secret_not_used': 'Secreto (no se usa)',
|
|
4340
|
+
'ml.stored_encrypted_never_shown_again': 'Guardado cifrado; nunca se vuelve a mostrar.',
|
|
4341
|
+
'ml.the_check_failed': 'La comprobación ha fallado.',
|
|
4342
|
+
'ml.builder_mail_saved_find_my': 'Correo del builder guardado: «Buscar mi espacio de trabajo» envía a través de él.',
|
|
4343
|
+
'ml.the_builder_sends_no_mail': 'El builder ya no envía correo.',
|
|
4344
|
+
'ml.not_saved_yet_fill_in': 'Todavía no guardado: rellene la configuración de abajo y guarde para cambiar.',
|
|
4345
|
+
'ml.add': 'Añadir',
|
|
4346
|
+
'ml.the_mail_is_queued_again': 'El correo vuelve a estar en cola.',
|
|
4347
|
+
'ml.the_mail_is_cancelled': 'El correo está cancelado.',
|
|
4348
|
+
'ml.the_mail_has_changed_meanwhile': 'El correo ha cambiado mientras tanto.',
|
|
4349
|
+
'ml.switch_off_only_for_a': 'Desactívelo solo para un relé con certificado autofirmado en su propia red.',
|
|
4350
|
+
'ml.mail_service_added_choose_the': 'Servicio de correo añadido. Elija abajo las aplicaciones que envían a través de él y pruébelo.',
|
|
4351
|
+
'ml.mail_service_saved': 'Servicio de correo guardado.',
|
|
4352
|
+
'ml.applications_saved': 'Aplicaciones guardadas.',
|
|
4353
|
+
'ml.mail_service_deleted': 'Servicio de correo eliminado.',
|
|
4354
|
+
'ml.name_at_least_one_allowed': 'Indique al menos un remitente permitido (una dirección o @dominio).',
|
|
4355
|
+
'ml.the_default_from_address_must': 'La dirección De predeterminada debe ser una con la que el servicio pueda enviar.',
|
|
4356
|
+
'ml.choose_one_of_the_mail': 'Elija uno de los servicios de correo.',
|
|
4357
|
+
'ml.the_from_address_is_an': 'La dirección De es una dirección de correo, p. ej. pgkiln@example.com.',
|
|
4358
|
+
'ml.the_name_is_upper_case': 'El nombre son letras mayúsculas, dígitos y _ (p. ej. OFFICE365).',
|
|
4359
|
+
'ml.not_found': 'No encontrado.',
|
|
4360
|
+
'ml.mails_per_day_a_whole': 'Correos por día: un número entero de 0 o más (vacío: sin límite).',
|
|
4361
|
+
'ml.services': 'Servicios',
|
|
4362
|
+
'ml.recent_mail': 'Correo reciente',
|
|
4363
|
+
'ml.settings': 'Configuración',
|
|
4364
|
+
'ml.mail': 'Correo',
|
|
4365
|
+
'ml.builder_mail': 'Correo del builder',
|
|
4366
|
+
'ml.mail_service': 'Servicio de correo',
|
|
4367
|
+
'ml.app_builder': 'App Builder',
|
|
4368
|
+
'ml.workspace_utilities': 'Utilidades del espacio de trabajo',
|
|
4369
|
+
'ml.activity': 'Actividad',
|
|
4370
|
+
'ml.api_key': 'Clave de API',
|
|
4371
|
+
'ml.no_secret_key': 'El servidor no tiene `PGKILN_SECRET_KEY`: no se pueden guardar secretos hasta que se defina.',
|
|
4372
|
+
'ml.check_help': 'Usa la configuración de arriba tal como está rellenada, sin guardarla. Probar la conexión inicia sesión (SMTP) o hace una llamada de solo lectura con la clave; un correo de prueba se envía de verdad.',
|
|
4373
|
+
'ml.check_help_secret': 'Usa la configuración de arriba tal como está rellenada, sin guardarla. Un campo de secreto vacío usa el secreto guardado. Probar la conexión inicia sesión (SMTP) o hace una llamada de solo lectura con la clave; un correo de prueba se envía de verdad.',
|
|
4374
|
+
'ml.secret_unreadable': 'No se puede leer el secreto guardado: {error}',
|
|
4375
|
+
'ml.test_to_missing': 'Indique la dirección a la que enviar el correo de prueba.',
|
|
4376
|
+
'ml.from_not_allowed': 'La dirección De debe ser uno de los remitentes permitidos.',
|
|
4377
|
+
'ml.test_handed': 'El correo de prueba se entregó a {provider}. Revise el buzón de {to}.',
|
|
4378
|
+
'ml.test_handed_id': 'El correo de prueba se entregó a {provider} (su id: {id}). Revise el buzón de {to}.',
|
|
4379
|
+
'ml.intro': 'Cómo envían correo las aplicaciones de esta instalación (`meta.send_mail()` desde SQL, el proceso {process}, plantillas de correo). El correo se pone en cola en la transacción de la aplicación y el servidor lo envía tras el commit. Elija el servicio de cada aplicación en la página del servicio.',
|
|
4380
|
+
'ml.may_not_send_as': 'El servicio {name} no puede enviar como {from}: añádalo antes a sus remitentes.',
|
|
4381
|
+
'ml.delete_confirm': '¿Eliminar el servicio de correo {name}? Sus aplicaciones no podrán enviar correo hasta que tengan otro.',
|
|
4382
|
+
'ml.aria_from': 'Dirección De para {app}',
|
|
4383
|
+
'ml.aria_max': 'Correos por día para {app}',
|
|
4384
|
+
'ml.queue_intro': 'El correo que esta aplicación puso en cola (`meta.send_mail()`, el proceso Enviar correo), conservado 30 días.',
|
|
4385
|
+
'ml.sends_through': 'Envía con {service} ({provider}) como {from}; hoy: {today}.',
|
|
4386
|
+
'ml.sends_through_max': 'Envía con {service} ({provider}) como {from}; hoy: {today} de {max}.',
|
|
4387
|
+
'ml.disabled_l': 'desactivado',
|
|
4388
|
+
'ml.no_service_admin': '{none}: un administrador elige su servicio de correo en {link}.',
|
|
4389
|
+
'ml.no_service': '{none}: un administrador elige su servicio de correo.',
|
|
4390
|
+
'ml.mail_of': 'Correo · {app}',
|
|
4391
|
+
'ml.builder_intro': 'El servicio con el que envía el propio builder: {find} en la página de inicio de sesión envía a los desarrolladores sus espacios de trabajo (a la dirección de su cuenta). Ninguno: el builder no envía correo.',
|
|
4392
|
+
// ------------------------------------------------------------ Workspace mail service (sprint 164)
|
|
4393
|
+
'wml.workspace_mail_service': 'Servicio de correo del espacio de trabajo',
|
|
4394
|
+
'wml.only_the_workspace_s_administrators': 'Solo los administradores del espacio de trabajo gestionan su servicio de correo.',
|
|
4395
|
+
'wml.network_access': 'acceso de red',
|
|
4396
|
+
'wml.change': 'Cambiar',
|
|
4397
|
+
'wml.delete_service': 'Eliminar servicio',
|
|
4398
|
+
'wml.application': 'Aplicación',
|
|
4399
|
+
'wml.sends_through': 'Envía con',
|
|
4400
|
+
'wml.chosen_by_an_administrator': '(elegido por un administrador)',
|
|
4401
|
+
'wml.nothing_yet': 'nada todavía',
|
|
4402
|
+
'wml.no_applications': 'No hay aplicaciones.',
|
|
4403
|
+
'wml.delete_this_workspace_s_mail': '¿Eliminar el servicio de correo de este espacio de trabajo? Sus aplicaciones sin servicio propio no podrán enviar correo.',
|
|
4404
|
+
'wml.provider': 'Proveedor',
|
|
4405
|
+
'wml.not_saved_yet_fill_in': 'Todavía no guardado: rellene la configuración de abajo y guarde para cambiar.',
|
|
4406
|
+
'wml.mail_service_saved': 'Servicio de correo guardado.',
|
|
4407
|
+
'wml.mail_service_added_send_a': 'Servicio de correo añadido: envíe un correo de prueba para comprobarlo.',
|
|
4408
|
+
'wml.mail_service_deleted': 'Servicio de correo eliminado.',
|
|
4409
|
+
'wml.there_was_no_mail_service': 'No había ningún servicio de correo.',
|
|
4410
|
+
'wml.settings': 'Configuración',
|
|
4411
|
+
'wml.applications': 'Aplicaciones',
|
|
4412
|
+
'wml.administration': 'Administración',
|
|
4413
|
+
'wml.mail_service': 'Servicio de correo',
|
|
4414
|
+
'wml.title': 'Servicio de correo · {workspace}',
|
|
4415
|
+
'wml.intro': 'El servicio de correo propio de este espacio de trabajo: sus aplicaciones a las que un administrador no dio servicio propio envían a través de él ({fn}, el proceso Enviar correo). El secreto se guarda cifrado y nunca se vuelve a mostrar. Usa la API del propio proveedor; un servidor SMTP debe estar en la lista de permitidos de la instalación y en la lista de {network} de este espacio de trabajo.',
|
|
4416
|
+
// ------------------------------------------------------------ Data Reporter datasets (sprint 164)
|
|
4417
|
+
'dts.data_reporter': 'Data Reporter',
|
|
4418
|
+
'dts.dataset': 'Conjunto de datos',
|
|
4419
|
+
'dts.schema': 'Esquema',
|
|
4420
|
+
'dts.tables_and_views': 'Tablas y vistas',
|
|
4421
|
+
'dts.columns': 'Columnas',
|
|
4422
|
+
'dts.updated_utc': 'Actualizado (UTC)',
|
|
4423
|
+
'dts.actions': 'Acciones',
|
|
4424
|
+
'dts.no_datasets_yet_create_one': 'Todavía no hay conjuntos de datos: cree uno sobre tablas y vistas de un esquema o importe un archivo de conjunto de datos.',
|
|
4425
|
+
'dts.application': 'Aplicación',
|
|
4426
|
+
'dts.datasets': 'Conjuntos de datos',
|
|
4427
|
+
'dts.users': 'Usuarios',
|
|
4428
|
+
'dts.published_reports': 'Informes publicados',
|
|
4429
|
+
'dts.no_reporting_applications_yet_choose': 'Todavía no hay aplicaciones de informes: elija Crear aplicación de informes en un conjunto de datos.',
|
|
4430
|
+
'dts.new_dataset': 'Nuevo conjunto de datos',
|
|
4431
|
+
'dts.show_its_tables_and_views': 'Mostrar sus tablas y vistas',
|
|
4432
|
+
'dts.tables_and_views_the_first': 'Tablas y vistas (la primera es la principal)',
|
|
4433
|
+
'dts.the_schema_has_no_tables': 'El esquema no tiene tablas ni vistas que pueda usar.',
|
|
4434
|
+
'dts.joins_are_proposed_from_foreign': 'Los joins se proponen a partir de las claves foráneas; al principio se ofrece cada columna, etiquetada según su nombre. Todo se cambia en la página siguiente.',
|
|
4435
|
+
'dts.cancel': 'Cancelar',
|
|
4436
|
+
'dts.the_dataset_doesn_t_match': 'El conjunto de datos no coincide con la base de datos (ya):',
|
|
4437
|
+
'dts.description_shown_to_users': 'Descripción (visible para los usuarios)',
|
|
4438
|
+
'dts.alias': 'Alias',
|
|
4439
|
+
'dts.table_or_view': 'Tabla o vista',
|
|
4440
|
+
'dts.joins_to': 'Se une a',
|
|
4441
|
+
'dts.join': 'Join',
|
|
4442
|
+
'dts.remove': 'Quitar',
|
|
4443
|
+
'dts.the_main_table': 'la tabla principal',
|
|
4444
|
+
'dts.add_a_table_or_view': 'Añadir una tabla o vista',
|
|
4445
|
+
'dts.joined_to': 'Unida a',
|
|
4446
|
+
'dts.on': 'Condición',
|
|
4447
|
+
'dts.empty_proposed_from_a_foreign': 'Vacío: propuesto a partir de una clave foránea.',
|
|
4448
|
+
'dts.business_users_see_only_the': 'Los usuarios de negocio solo ven las columnas ofrecidas, con sus etiquetas. El nombre es cómo los informes se refieren a una columna: cambiarlo rompe los informes guardados que la usan.',
|
|
4449
|
+
'dts.offer': 'Ofrecer',
|
|
4450
|
+
'dts.column': 'Columna',
|
|
4451
|
+
'dts.name': 'Nombre',
|
|
4452
|
+
'dts.label': 'Etiqueta',
|
|
4453
|
+
'dts.format_mask': 'Máscara de formato',
|
|
4454
|
+
'dts.description': 'Descripción',
|
|
4455
|
+
'dts.only_rows_that_match_every': 'Solo las filas que cumplen todas las condiciones están en el conjunto de datos (además de la seguridad a nivel de fila del rol de la aplicación).',
|
|
4456
|
+
'dts.the_query_reports_run_on': 'La consulta sobre la que se ejecutan los informes (con el rol de la aplicación). La vista previa la ejecuta en solo lectura con su conexión de SQL Workshop.',
|
|
4457
|
+
'dts.no_rows': 'No hay filas.',
|
|
4458
|
+
'dts.import_datasets': 'Importar conjuntos de datos',
|
|
4459
|
+
'dts.file': 'Archivo',
|
|
4460
|
+
'dts.or_paste_it': 'O péguelo',
|
|
4461
|
+
'dts.replace_datasets_with_the_same': 'Reemplazar los conjuntos de datos con el mismo nombre',
|
|
4462
|
+
'dts.create_a_reporting_application': 'Crear una aplicación de informes',
|
|
4463
|
+
'dts.the_first_dataset_s_schema': 'El esquema del primer conjunto de datos es el esquema de análisis de la aplicación.',
|
|
4464
|
+
'dts.import': 'Importar',
|
|
4465
|
+
'dts.export_all': 'Exportar todo',
|
|
4466
|
+
'dts.create_reporting_application': 'Crear aplicación de informes',
|
|
4467
|
+
'dts.run': 'Ejecutar',
|
|
4468
|
+
'dts.users_and_roles': 'Usuarios y roles',
|
|
4469
|
+
'dts.create_dataset': 'Crear conjunto de datos',
|
|
4470
|
+
'dts.download': 'Descargar',
|
|
4471
|
+
'dts.save_dataset': 'Guardar conjunto de datos',
|
|
4472
|
+
'dts.delete_dataset': 'Eliminar conjunto de datos',
|
|
4473
|
+
'dts.create': 'Crear',
|
|
4474
|
+
'dts.from_a_foreign_key': 'a partir de una clave foránea',
|
|
4475
|
+
'dts.first_administrator': 'Primer administrador',
|
|
4476
|
+
'dts.password': 'Contraseña',
|
|
4477
|
+
'dts.e_g_sales': 'p. ej. sales',
|
|
4478
|
+
'dts.lower_case_letters_digits_and': 'Letras minúsculas, dígitos y _ (como máximo 40): lo usan los informes y los archivos. No se puede cambiar después.',
|
|
4479
|
+
'dts.e_g_sales_2': 'p. ej. Ventas',
|
|
4480
|
+
'dts.what_business_users_see': 'Lo que ven los usuarios de negocio.',
|
|
4481
|
+
'dts.its_address_a_alias_its': 'Su dirección: /a/<alias>. Su rol de base de datos es app_<alias>, que solo puede leer las tablas y vistas de los conjuntos de datos.',
|
|
4482
|
+
'dts.an_account_of_the_user': 'Una cuenta del directorio de usuarios (los usuarios inician sesión con sus cuentas del espacio de trabajo).',
|
|
4483
|
+
'dts.only_for_a_new_account': 'Solo para una cuenta nueva.',
|
|
4484
|
+
'dts.the_dataset_offers_no_columns': 'El conjunto de datos no ofrece columnas.',
|
|
4485
|
+
'dts.no_reporting_application_uses_it': 'Ninguna aplicación de informes lo usa.',
|
|
4486
|
+
'dts.dataset_saved': 'Conjunto de datos guardado.',
|
|
4487
|
+
'dts.create_a_dataset_first': 'Cree primero un conjunto de datos.',
|
|
4488
|
+
'dts.reporting_applications': 'Aplicaciones de informes',
|
|
4489
|
+
'dts.1_schema': '1. Esquema',
|
|
4490
|
+
'dts.2_tables_and_views': '2. Tablas y vistas',
|
|
4491
|
+
'dts.row_filter': 'Filtro de filas',
|
|
4492
|
+
'dts.query_and_preview': 'Consulta y vista previa',
|
|
4493
|
+
'dts.delete': 'Eliminar',
|
|
4494
|
+
'dts.a_dataset_file': 'Un archivo de conjunto de datos',
|
|
4495
|
+
'dts.app_builder': 'App Builder',
|
|
4496
|
+
'dts.choose_one_of_the_schemas': 'Elija uno de los esquemas de la lista.',
|
|
4497
|
+
'dts.choose_at_least_one_table': 'Elija al menos una tabla o vista.',
|
|
4498
|
+
'dts.roles_help': 'Roles: {viewer} ejecuta informes publicados (cualquier usuario con acceso), {editor} además crea, guarda, publica y retira informes, {administrator} además retira y elimina los de cualquiera. Dé acceso y roles a las cuentas en Usuarios y roles.',
|
|
4499
|
+
'dts.exists': 'Ya existe un conjunto de datos {name}.',
|
|
4500
|
+
'dts.created': 'Conjunto de datos {name} creado: revise sus columnas y etiquetas.',
|
|
4501
|
+
'dts.created_errors': 'Conjunto de datos {name} creado. {errors}',
|
|
4502
|
+
'dts.on_header': 'Condición (columna = su columna)',
|
|
4503
|
+
'dts.join_left': 'Left (conservar filas sin coincidencia)',
|
|
4504
|
+
'dts.join_inner': 'Inner (solo filas coincidentes)',
|
|
4505
|
+
'dts.aria_join_type': 'Tipo de join de {table}',
|
|
4506
|
+
'dts.aria_join_cols': 'Columnas del join de {table}',
|
|
4507
|
+
'dts.aria_remove': 'Quitar {table}',
|
|
4508
|
+
'dts.aria_offer': 'Ofrecer {column}',
|
|
4509
|
+
'dts.aria_name': 'Nombre de {column}',
|
|
4510
|
+
'dts.aria_label': 'Etiqueta de {column}',
|
|
4511
|
+
'dts.aria_format': 'Máscara de formato de {column}',
|
|
4512
|
+
'dts.aria_desc': 'Descripción de {column}',
|
|
4513
|
+
'dts.aria_filter_col': 'Filtro {n}: columna',
|
|
4514
|
+
'dts.aria_filter_op': 'Filtro {n}: operador',
|
|
4515
|
+
'dts.aria_filter_value': 'Filtro {n}: valor',
|
|
4516
|
+
'dts.value': 'valor',
|
|
4517
|
+
'dts.none_opt': '- ninguna -',
|
|
4518
|
+
'dts.used_by': 'Las aplicaciones de informes que lo usan ({apps}) pierden este origen de datos: sus informes sobre él dejan de funcionar.',
|
|
4519
|
+
'dts.delete_confirm': '¿Eliminar el conjunto de datos {name}?',
|
|
4520
|
+
'dts.schema_refused': 'Su conexión de SQL Workshop no puede usar el esquema {schema}.',
|
|
4521
|
+
'dts.deleted': 'Conjunto de datos {name} eliminado.',
|
|
4522
|
+
'dts.import_intro': 'Un archivo descargado de un Data Reporter (`*.dataset.json`, formato pgkiln-dataset/1), con uno o varios conjuntos de datos. Cada uno se comprueba con la base de datos de esta instalación: su esquema, tablas, vistas y columnas deben existir aquí.',
|
|
4523
|
+
'dts.import_title': 'Importar conjuntos de datos',
|
|
4524
|
+
'dts.too_large': 'El archivo supera los 2 MB.',
|
|
4525
|
+
'dts.no_file': 'Elija un archivo o pegue uno.',
|
|
4526
|
+
'dts.no_schema': 'Conjunto de datos {name}: el esquema «{schema}» no existe aquí, o su conexión de SQL Workshop no puede usarlo.',
|
|
4527
|
+
'dts.import_errors': 'Conjunto de datos {name}: {errors}',
|
|
4528
|
+
'dts.no_columns': 'no ofrece columnas.',
|
|
4529
|
+
'dts.nothing_imported': 'No se importó nada. {error}',
|
|
4530
|
+
'dts.create_app_title': 'Crear aplicación de informes',
|
|
4531
|
+
'dts.choose_one': 'Elija al menos un conjunto de datos.',
|
|
4532
|
+
'dts.choose_max': 'Elija como máximo {n} conjuntos de datos.',
|
|
4533
|
+
'dts.app_created': 'Aplicación de informes {name} creada: ejecútela en {path} y dé a las cuentas acceso y los roles viewer, editor o administrator en Usuarios y roles.',
|
|
4534
|
+
'dts.new_dataset_title': 'Nuevo conjunto de datos',
|
|
4535
|
+
// ------------------------------------------------------------ Team Development (2) (sprint 164)
|
|
4536
|
+
'tm.changed_the_title': 'cambió el título',
|
|
4537
|
+
'tm.problem': 'Problema',
|
|
4538
|
+
'tm.idea': 'Idea',
|
|
4539
|
+
'tm.feedback': 'Comentario',
|
|
4540
|
+
'tm.untitled': 'Sin título',
|
|
4541
|
+
'tm.ev.created': 'creó la incidencia',
|
|
4542
|
+
'tm.ev.closed': 'cerró la incidencia',
|
|
4543
|
+
'tm.ev.reopened': 'reabrió la incidencia',
|
|
4544
|
+
'tm.ev.body': 'editó la descripción',
|
|
4545
|
+
'tm.ev.labels': 'cambió las etiquetas',
|
|
4546
|
+
'tm.ev.assignees': 'cambió los asignados',
|
|
4547
|
+
'tm.ev.milestone': 'estableció el hito',
|
|
4548
|
+
'tm.ev.link': 'enlazó',
|
|
4549
|
+
'tm.ev.commented': 'comentó',
|
|
4550
|
+
'tm.someone': 'alguien',
|
|
4551
|
+
'tm.f.status': 'Estado',
|
|
4552
|
+
'tm.f.open': 'Abiertas',
|
|
4553
|
+
'tm.f.all': 'Todas',
|
|
4554
|
+
'tm.f.any': 'Cualquiera',
|
|
4555
|
+
'tm.f.assignee': 'Asignado',
|
|
4556
|
+
'tm.f.anyone': 'Cualquiera',
|
|
4557
|
+
'tm.f.me': 'Yo',
|
|
4558
|
+
'tm.delete_view_confirm': '¿Eliminar la vista {name}?',
|
|
4559
|
+
'tm.delete_named': 'Eliminar {name}',
|
|
4560
|
+
'tm.delete_issue_confirm': '¿Eliminar la incidencia #{id} con sus comentarios e historial?',
|
|
4561
|
+
'tm.delete_milestone_confirm': '¿Eliminar el hito {name}? Sus incidencias se quedan sin hito.',
|
|
4562
|
+
'tm.delete_template_confirm': '¿Eliminar la plantilla {name}?',
|
|
4563
|
+
// ------------------------------------------------------------ REST data sources and web credentials (sprint 164)
|
|
4564
|
+
'wsrc.secrets': 'Secretos',
|
|
4565
|
+
'wsrc.a_secret_is_stored': 'Hay un secreto guardado',
|
|
4566
|
+
'wsrc.no_secret_yet': 'Todavía no hay secreto.',
|
|
4567
|
+
'wsrc.a_password_is_stored': 'Hay una contraseña guardada',
|
|
4568
|
+
'wsrc.no_password_yet': 'Todavía no hay contraseña.',
|
|
4569
|
+
'wsrc.a_refresh_token_is_stored': 'Hay un token de actualización guardado',
|
|
4570
|
+
'wsrc.no_refresh_token_yet': 'Todavía no hay token de actualización.',
|
|
4571
|
+
'wsrc.synchronisation': 'Sincronización',
|
|
4572
|
+
'wsrc.set_a_local_table_above': 'Defina arriba una tabla local para copiar las filas de este origen en una tabla (a demanda, desde SQL o según una programación).',
|
|
4573
|
+
'wsrc.the_scheduler_is_off_on': '(el planificador está desactivado en este servidor: AUTOMATIONS=off)',
|
|
4574
|
+
'wsrc.requested': 'Solicitado',
|
|
4575
|
+
'wsrc.took': 'Duración',
|
|
4576
|
+
'wsrc.by': 'Por',
|
|
4577
|
+
'wsrc.status': 'Estado',
|
|
4578
|
+
'wsrc.rows': 'Filas',
|
|
4579
|
+
'wsrc.inserted': 'Insertadas',
|
|
4580
|
+
'wsrc.updated': 'Actualizadas',
|
|
4581
|
+
'wsrc.deleted': 'Eliminadas',
|
|
4582
|
+
'wsrc.message': 'Mensaje',
|
|
4583
|
+
'wsrc.no_runs_yet': 'Todavía no hay ejecuciones.',
|
|
4584
|
+
'wsrc.test': 'Probar',
|
|
4585
|
+
'wsrc.suggested_columns': 'Columnas sugeridas',
|
|
4586
|
+
'wsrc.use_these_columns': 'Usar estas columnas',
|
|
4587
|
+
'wsrc.response': 'Respuesta',
|
|
4588
|
+
'wsrc.synchronise_now': 'Sincronizar ahora',
|
|
4589
|
+
'wsrc.the_secret': 'el secreto',
|
|
4590
|
+
'wsrc.the_password': 'la contraseña',
|
|
4591
|
+
'wsrc.the_refresh_token': 'el token de actualización',
|
|
4592
|
+
'wsrc.not_found': 'No encontrado.',
|
|
4593
|
+
'wsrc.the_synchronisation_failed': 'La sincronización ha fallado.',
|
|
4594
|
+
'wsrc.the_columns_are_not_valid': 'Las columnas no son JSON válido.',
|
|
4595
|
+
'wsrc.columns_saved': 'Columnas guardadas.',
|
|
4596
|
+
'wsrc.remove_confirm': '¿Quitar {what}?',
|
|
4597
|
+
'wsrc.remove': 'Quitar {what}',
|
|
4598
|
+
'wsrc.secret_stored': '{stored} (cifrado). Nunca se muestra; escriba uno nuevo arriba para reemplazarlo.',
|
|
4599
|
+
'wsrc.secret_missing': '{none} Las solicitudes con esta credencial fallan hasta que se introduzca uno.',
|
|
4600
|
+
'wsrc.no_client_secret': 'Sin secreto de cliente (un cliente público).',
|
|
4601
|
+
'wsrc.password_stored': '{stored} (cifrada).',
|
|
4602
|
+
'wsrc.password_missing': '{none} El flujo de contraseña falla hasta que se introduzca una.',
|
|
4603
|
+
'wsrc.refresh_stored': '{stored} (cifrado). pgkiln lo usa para renovar el token de acceso y guarda el más reciente que envía el servicio.',
|
|
4604
|
+
'wsrc.refresh_stored_at': '{stored} (cifrado), recibido {at} UTC. pgkiln lo usa para renovar el token de acceso y guarda el más reciente que envía el servicio.',
|
|
4605
|
+
'wsrc.refresh_missing': '{none} Introduzca uno arriba.',
|
|
4606
|
+
'wsrc.no_refresh': 'Todavía no hay token de actualización (se guarda cuando el endpoint de token envía uno).',
|
|
4607
|
+
'wsrc.no_secret_key': 'El servidor no tiene `PGKILN_SECRET_KEY`: no se pueden guardar ni usar secretos hasta que se defina (al menos 32 caracteres).',
|
|
4608
|
+
'wsrc.sync_into': 'En {table} ({mode}). Próxima ejecución: {next}',
|
|
4609
|
+
'wsrc.deleting_missing': 'eliminando las filas que faltan',
|
|
4610
|
+
'wsrc.sync_from_code': 'Desde el código de la aplicación: {call} pone en cola una ejecución para la próxima pasada del planificador.',
|
|
4611
|
+
'wsrc.answered': 'El servicio web respondió {status}.',
|
|
4612
|
+
'wsrc.the_source': 'El origen',
|
|
4613
|
+
'wsrc.synced': '{rows} fila(s) sincronizada(s): {inserted} insertada(s), {updated} actualizada(s), {deleted} eliminada(s).',
|
|
4614
|
+
// ------------------------------------------------------------ Workspace files, remote servers and web credentials (sprint 164)
|
|
4615
|
+
'wres.you_are_not_a_developer': 'Todavía no es desarrollador de ningún espacio de trabajo.',
|
|
4616
|
+
'wres.only_the_workspace_s_administrators': 'Solo los administradores del espacio de trabajo los cambian.',
|
|
4617
|
+
'wres.you_can_see_these_the': 'Puede verlos; los administradores del espacio de trabajo los cambian.',
|
|
4618
|
+
'wres.content': 'Contenido',
|
|
4619
|
+
'wres.cancel': 'Cancelar',
|
|
4620
|
+
'wres.static_workspace_files': 'Archivos estáticos del espacio de trabajo',
|
|
4621
|
+
'wres.name': 'Nombre',
|
|
4622
|
+
'wres.type': 'Tipo',
|
|
4623
|
+
'wres.size': 'Tamaño',
|
|
4624
|
+
'wres.loaded_by': 'Cargado por',
|
|
4625
|
+
'wres.changed_utc': 'Modificado (UTC)',
|
|
4626
|
+
'wres.actions': 'Acciones',
|
|
4627
|
+
'wres.edit': 'Editar',
|
|
4628
|
+
'wres.no_files_yet': 'Todavía no hay archivos.',
|
|
4629
|
+
'wres.a_file_with_the_same': 'Un archivo con el mismo nombre se reemplaza.',
|
|
4630
|
+
'wres.not_a_valid_url': 'no es una URL válida',
|
|
4631
|
+
'wres.may_be_called': 'se puede llamar',
|
|
4632
|
+
'wres.description': 'Descripción',
|
|
4633
|
+
'wres.delete_server': 'Eliminar servidor',
|
|
4634
|
+
'wres.remote_servers': 'Servidores remotos',
|
|
4635
|
+
'wres.network_access': 'acceso de red',
|
|
4636
|
+
'wres.server': 'Servidor',
|
|
4637
|
+
'wres.url_now': 'URL actual',
|
|
4638
|
+
'wres.network_access_2': 'Acceso de red',
|
|
4639
|
+
'wres.default_credential': 'Credencial predeterminada',
|
|
4640
|
+
'wres.used_by': 'Usado por',
|
|
4641
|
+
'wres.nothing_yet': 'nada todavía',
|
|
4642
|
+
'wres.no_remote_servers_yet': 'Todavía no hay servidores remotos.',
|
|
4643
|
+
'wres.delete_credential': 'Eliminar credencial',
|
|
4644
|
+
'wres.workspace_web_credentials': 'Credenciales web del espacio de trabajo',
|
|
4645
|
+
'wres.authentication': 'Autenticación',
|
|
4646
|
+
'wres.secret': 'Secreto',
|
|
4647
|
+
'wres.valid_for': 'Válida para',
|
|
4648
|
+
'wres.overridden_by': 'Reemplazada por',
|
|
4649
|
+
'wres.none_yet': 'ninguno todavía',
|
|
4650
|
+
'wres.any_url': 'cualquier URL',
|
|
4651
|
+
'wres.no_workspace_web_credentials_yet': 'Todavía no hay credenciales web del espacio de trabajo.',
|
|
4652
|
+
'wres.save': 'Guardar',
|
|
4653
|
+
'wres.new_file': 'Nuevo archivo',
|
|
4654
|
+
'wres.upload': 'Subir',
|
|
4655
|
+
'wres.new_server': 'Nuevo servidor',
|
|
4656
|
+
'wres.new_credential': 'Nueva credencial',
|
|
4657
|
+
'wres.changed': 'Modificado',
|
|
4658
|
+
'wres.files_to_upload': 'Archivos para subir',
|
|
4659
|
+
'wres.file_name': 'Nombre del archivo',
|
|
4660
|
+
'wres.static_id': 'Id estático',
|
|
4661
|
+
'wres.base_url_this_installation': 'URL base (esta instalación)',
|
|
4662
|
+
'wres.or_from_the_environment_variable': 'O desde la variable de entorno',
|
|
4663
|
+
'wres.default_web_credential': 'Credencial web predeterminada',
|
|
4664
|
+
'wres.user_name_client_id_access': 'Usuario / id de cliente / id de clave de acceso',
|
|
4665
|
+
'wres.grant_type_oauth2': 'Tipo de concesión (oauth2)',
|
|
4666
|
+
'wres.oauth2_user_name_password_grant': 'Usuario de OAuth2 (concesión de contraseña)',
|
|
4667
|
+
'wres.header_name_header': 'Nombre de cabecera (header)',
|
|
4668
|
+
'wres.token_url_oauth2': 'URL del token (oauth2)',
|
|
4669
|
+
'wres.scope_oauth2_region_aws_sigv4': 'Ámbito (oauth2) / región (aws_sigv4)',
|
|
4670
|
+
'wres.valid_for_urls': 'Válida para URL',
|
|
4671
|
+
'wres.letters_digits_and_e_g': 'Letras, dígitos, _, - y . (p. ej. brand.css, common.js).',
|
|
4672
|
+
'wres.upper_case_letters_digits_and': 'Letras mayúsculas, dígitos y _: los orígenes de datos REST, catálogos y servicios de IA nombran el servidor con él. Renombrarlo mueve también los orígenes y catálogos de este espacio de trabajo.',
|
|
4673
|
+
'wres.crm_system': 'Sistema CRM',
|
|
4674
|
+
'wres.https_crm_example_com_api': 'https://crm.example.com/api',
|
|
4675
|
+
'wres.no_trailing_slash_query_or': 'Sin barra final, consulta ni fragmento. Los orígenes añaden su ruta detrás.',
|
|
4676
|
+
'wres.e_g_crm_api': 'p. ej. CRM_API',
|
|
4677
|
+
'wres.sources_on_this_server_that': 'Los orígenes de este servidor que no nombran credencial propia usan esta (la credencial de una aplicación con ese nombre, si no la del espacio de trabajo).',
|
|
4678
|
+
'wres.the_applications_of_the_workspace': 'Las aplicaciones del espacio de trabajo la usan con este nombre (gana la credencial propia de una aplicación con el mismo nombre).',
|
|
4679
|
+
'wres.x_api_key': 'X-API-Key',
|
|
4680
|
+
'wres.https_login_example_com_oauth': 'https://login.example.com/oauth/token',
|
|
4681
|
+
'wres.https_crm_example_com_api_2': 'https://crm.example.com/api/',
|
|
4682
|
+
'wres.comma_separated_url_prefixes_the': 'Prefijos de URL separados por comas: la credencial solo se envía a ellos. Recomendado.',
|
|
4683
|
+
'wres.new_remote_server': 'Nuevo servidor remoto',
|
|
4684
|
+
'wres.one_is_stored_encrypted_it': 'Hay uno guardado (cifrado): nunca se muestra; escriba uno nuevo para reemplazarlo.',
|
|
4685
|
+
'wres.write_only_never_shown_again': 'Solo escritura: nunca se vuelve a mostrar ni se exporta.',
|
|
4686
|
+
'wres.new_web_credential': 'Nueva credencial web',
|
|
4687
|
+
'wres.no_such_file': 'No existe ese archivo.',
|
|
4688
|
+
'wres.no_such_remote_server': 'No existe ese servidor remoto.',
|
|
4689
|
+
'wres.no_such_web_credential': 'No existe esa credencial web.',
|
|
4690
|
+
'wres.the_password_header_value_token': 'La contraseña, el valor de cabecera, el token, el secreto de cliente o la clave de acceso secreta.',
|
|
4691
|
+
'wres.the_password_grant_the_oauth2': 'La concesión de contraseña: la contraseña del usuario de OAuth2.',
|
|
4692
|
+
'wres.the_refresh_token_grant_a': 'La concesión de token de actualización: un token de actualización para empezar.',
|
|
4693
|
+
'wres.choose_one_or_more_files': 'Elija uno o varios archivos.',
|
|
4694
|
+
'wres.the_name_must_end_in': 'El nombre debe terminar en un tipo de texto (.js, .css, .json, .txt, .csv, .md, .map) y usar solo letras, dígitos, _, - y ..',
|
|
4695
|
+
'wres.files': 'Archivos',
|
|
4696
|
+
'wres.servers': 'Servidores',
|
|
4697
|
+
'wres.credentials': 'Credenciales',
|
|
4698
|
+
'wres.app_builder': 'App Builder',
|
|
4699
|
+
'wres.workspace_utilities': 'Utilidades del espacio de trabajo',
|
|
4700
|
+
'wres.the_name_is_upper_case': 'El nombre son letras mayúsculas, dígitos y _, empezando por una letra, p. ej. CRM_API.',
|
|
4701
|
+
'wres.server_title': 'Servidor remoto {id}',
|
|
4702
|
+
'wres.env_help': 'Cuando el entorno del servidor la define, prevalece sobre la URL base (un valor por entorno: desarrollo, pruebas, producción). Solo nombres {prefix}….',
|
|
4703
|
+
'wres.delete_server_confirm': '¿Eliminar el servidor remoto {id}? Los orígenes en él fallan hasta que un servidor vuelva a tener su id estático.',
|
|
4704
|
+
'wres.servers_intro': 'URL base con nombre de {workspace}: un origen de datos REST, un catálogo de orígenes REST o un servicio de IA nombra un servidor y una ruta en lugar de una URL completa, así que pasar de desarrollo a producción cambia un valor aquí (o una variable de entorno) y todos los orígenes del servidor lo siguen al instante. La URL sigue pasando todas las comprobaciones de una URL completa: la lista de permitidos de la instalación, la lista de {network} de este espacio de trabajo y las comprobaciones de dirección al hacer la llamada.',
|
|
4705
|
+
'wres.credential_title': 'Credencial web {name}',
|
|
4706
|
+
'wres.no_secret_key': 'El servidor no tiene `PGKILN_SECRET_KEY`: no se pueden guardar secretos hasta que se defina.',
|
|
4707
|
+
'wres.refresh_token': 'Token de actualización',
|
|
4708
|
+
'wres.delete_credential_confirm': '¿Eliminar la credencial web {name}? Las aplicaciones que la usan fallan hasta que exista una con ese nombre.',
|
|
4709
|
+
'wres.files_title': 'Archivos estáticos del espacio de trabajo',
|
|
4710
|
+
'wres.servers_title': 'Servidores remotos',
|
|
4711
|
+
'wres.credentials_title': 'Credenciales web del espacio de trabajo',
|
|
4712
|
+
'wres.too_large': 'El archivo supera {size}.',
|
|
4713
|
+
'wres.file_exists': 'Ya existe un archivo {name}.',
|
|
4714
|
+
'wres.server_saved': 'Servidor remoto {id} guardado.',
|
|
4715
|
+
'wres.server_exists': 'Este espacio de trabajo ya tiene un servidor remoto {id}.',
|
|
4716
|
+
'wres.server_deleted': 'Servidor remoto {id} eliminado.',
|
|
4717
|
+
'wres.credential_saved': 'Credencial web {name} guardada.',
|
|
4718
|
+
'wres.credential_exists': 'Este espacio de trabajo ya tiene una credencial web {name}.',
|
|
4719
|
+
'wres.credential_deleted': 'Credencial web {name} eliminada.',
|
|
4720
|
+
'wres.files_intro': 'CSS, JavaScript, JSON, imágenes y fuentes que cualquier aplicación de {workspace} puede usar: una aplicación carga uno en cada página con {tag} en Componentes compartidos → Archivos estáticos de la aplicación → Cada página carga (una página: Página → Apariencia), y las plantillas, el HTML y los enlaces usan {sub} para su URL. Cada aplicación los sirve desde su propia dirección ({path}), nunca los de otro espacio de trabajo. Hasta {size} por archivo; sin HTML. Viajan con la exportación del espacio de trabajo.',
|
|
4721
|
+
'wres.type_help': 'basic: usuario + contraseña · header: una cabecera HTTP con el secreto (clave de API) · bearer: Authorization: Bearer <secret> · oauth2: concesión de credenciales de cliente, contraseña o token de actualización · aws_sigv4: un almacén de objetos compatible con S3.',
|
|
4722
|
+
'wres.credentials_intro': 'Credenciales web de {workspace} que sus aplicaciones usan por nombre en orígenes de datos REST, el proceso Invocar API, servidores remotos y almacenamiento de objetos, así que una clave se introduce una vez para el espacio de trabajo. Gana la credencial propia de una aplicación (Componentes compartidos → Credenciales web) con el mismo nombre. Los secretos se cifran con la clave del servidor, nunca se vuelven a mostrar y nunca se exportan.',
|
|
4723
|
+
'wres.edit_named': 'Editar {name}',
|
|
4724
|
+
'wres.delete_file_confirm': '¿Eliminar {name}? Las aplicaciones que lo cargan lo omiten.',
|
|
4725
|
+
'wres.delete_named': 'Eliminar {name}',
|
|
4726
|
+
// ------------------------------------------------------------ Template components (sprint 164)
|
|
4727
|
+
'tpl.custom_attributes': 'Atributos personalizados',
|
|
4728
|
+
'tpl.name': 'Nombre',
|
|
4729
|
+
'tpl.label': 'Etiqueta',
|
|
4730
|
+
'tpl.type': 'Tipo',
|
|
4731
|
+
'tpl.default': 'Predeterminado',
|
|
4732
|
+
'tpl.none_the_template_uses_the': 'Ninguno: la plantilla solo usa las columnas de la fila.',
|
|
4733
|
+
'tpl.preview': 'Vista previa',
|
|
4734
|
+
'tpl.sample_rows': 'Filas de ejemplo',
|
|
4735
|
+
'tpl.one_name_value_per_line': 'Un NAME=value por línea; una línea en blanco empieza la fila siguiente. Los atributos toman sus valores predeterminados; #LINK# es "#".',
|
|
4736
|
+
'tpl.as_multiple_in_the_wrapper': 'Como "multiple" (en el contenedor)',
|
|
4737
|
+
'tpl.plug_in': 'Plug-in',
|
|
4738
|
+
'tpl.share_this_component_with_other': 'Comparta este componente con otras aplicaciones e instalaciones como un archivo JSON; impórtelo en Componentes compartidos → Componentes de plantilla → Añadir.',
|
|
4739
|
+
'tpl.download_plug_in_file': 'Descargar archivo de plug-in',
|
|
4740
|
+
'tpl.built_in_components': 'Componentes integrados',
|
|
4741
|
+
'tpl.every_application_can_use_these': 'Cualquier aplicación puede usarlos en una región de componente de plantilla o como plantilla de columna de un informe. Para cambiar uno, cópielo en esta aplicación: la copia (mismo id estático) ocupa su lugar.',
|
|
4742
|
+
'tpl.component': 'Componente',
|
|
4743
|
+
'tpl.static_id': 'Id estático',
|
|
4744
|
+
'tpl.actions': 'Acciones',
|
|
4745
|
+
'tpl.copy_into_this_application': 'Copiar en esta aplicación',
|
|
4746
|
+
'tpl.import_a_plug_in': 'Importar un plug-in',
|
|
4747
|
+
'tpl.plug_in_file_json': 'Archivo de plug-in (JSON)',
|
|
4748
|
+
'tpl.paste_the_contents_of_a': 'Pegue el contenido de un archivo .plugin.json, p. ej. uno de examples/plugins/. La plantilla se comprueba antes de guardarse.',
|
|
4749
|
+
'tpl.replace_a_component_with_the': 'Reemplazar un componente con el mismo id estático',
|
|
4750
|
+
'tpl.import_plug_in': 'Importar plug-in',
|
|
4751
|
+
'tpl.choose_a_component_and_save': 'Elija un componente y guarde para definir sus atributos.',
|
|
4752
|
+
'tpl.template_component_settings': 'Configuración del componente de plantilla',
|
|
4753
|
+
'tpl.these_fields_write_the_region': 'Estos campos escriben el JSON de configuración de la región de arriba (las demás claves se conservan).',
|
|
4754
|
+
'tpl.no_query_the_component_shows': 'Sin consulta: el componente se muestra una vez, a partir de sus atributos.',
|
|
4755
|
+
'tpl.template_component': 'Componente de plantilla',
|
|
4756
|
+
'tpl.shared_components_template_components': 'Componentes compartidos → Componentes de plantilla',
|
|
4757
|
+
'tpl.display': 'Visualización',
|
|
4758
|
+
'tpl.at_most_rows': 'Como máximo filas',
|
|
4759
|
+
'tpl.text_when_there_are_no': 'Texto cuando no hay filas',
|
|
4760
|
+
'tpl.attributes': 'Atributos',
|
|
4761
|
+
'tpl.link_link': 'Enlace (#LINK#)',
|
|
4762
|
+
'tpl.each_instance_links_to_page': 'Cada instancia enlaza a la página',
|
|
4763
|
+
'tpl.the_template_puts_it_in': 'La plantilla lo pone en href="#LINK#"; los valores de elementos llevan una suma de comprobación. Vacío para los usuarios que no pueden abrir la página.',
|
|
4764
|
+
'tpl.set_items': 'Establecer elementos',
|
|
4765
|
+
'tpl.item_column_comma_separated': 'ITEM=#column#, separados por comas.',
|
|
4766
|
+
'tpl.save_template_component_settings': 'Guardar configuración del componente de plantilla',
|
|
4767
|
+
'tpl.not_in_the_query': 'no está en la consulta',
|
|
4768
|
+
'tpl.column_templates': 'Plantillas de columna',
|
|
4769
|
+
'tpl.render_a_column_s_cells': 'Mostrar las celdas de una columna mediante un componente de plantilla. Su plantilla ve cada columna de la fila como #NAME# (también las ocultas), y #LINK# es el enlace del informe. Atributos: NAME=value por línea, con sustituciones #column# y &ITEM..',
|
|
4770
|
+
'tpl.column': 'Columna',
|
|
4771
|
+
'tpl.no_columns_yet': 'Todavía no hay columnas.',
|
|
4772
|
+
'tpl.save_column_templates': 'Guardar plantillas de columna',
|
|
4773
|
+
'tpl.no_data_found': 'No se encontraron datos',
|
|
4774
|
+
'tpl.p3_id_id': 'P3_ID=#id#',
|
|
4775
|
+
'tpl.template_component_settings_saved': 'Configuración del componente de plantilla guardada.',
|
|
4776
|
+
'tpl.column_templates_saved': 'Plantillas de columna guardadas.',
|
|
4777
|
+
'tpl.import_failed_the_plug_in': 'La importación falló: el archivo de plug-in no es JSON válido.',
|
|
4778
|
+
'tpl.tc_list': 'tc-list',
|
|
4779
|
+
'tpl.choose': '- elegir -',
|
|
4780
|
+
'tpl.each_row_as_an_instance': 'Cada fila como una instancia',
|
|
4781
|
+
'tpl.multiple_all_rows_in_the': 'Múltiple: todas las filas en el contenedor',
|
|
4782
|
+
'tpl.no_link': '- sin enlace -',
|
|
4783
|
+
'tpl.plain_value': '- valor simple -',
|
|
4784
|
+
'tpl.builtin_help': 'Los integrados (avatar, badge, comments, media list, metric card, timeline) y los propios de la aplicación en {link}.',
|
|
4785
|
+
'tpl.aria_component': 'Componente de plantilla de {column}',
|
|
4786
|
+
'tpl.aria_attrs': 'Atributos de {column}',
|
|
4787
|
+
'tpl.missing': '{name} (¡falta!)',
|
|
4788
|
+
'tpl.import_failed': 'La importación falló: {error}',
|
|
4789
|
+
'tpl.imported': 'Componente de plantilla {name} importado.',
|
|
4790
|
+
'tpl.copy_failed': 'La copia falló: {error}',
|
|
4791
|
+
'tpl.built_in': 'integrado',
|
|
4792
|
+
// ------------------------------------------------------------ Vector providers (sprint 164)
|
|
4793
|
+
'vp.pgvector_is_not_installed_in': 'pgvector no está instalado en esta base de datos.',
|
|
4794
|
+
'vp.vector_provider': 'Proveedor de vectores',
|
|
4795
|
+
'vp.ai_service': 'Servicio de IA',
|
|
4796
|
+
'vp.workspace_utilities_ai_services': 'Utilidades del espacio de trabajo → Servicios de IA',
|
|
4797
|
+
'vp.model_in_the_database': 'Modelo en la base de datos',
|
|
4798
|
+
'vp.function': 'Función',
|
|
4799
|
+
'vp.used_by': 'Usado por',
|
|
4800
|
+
'vp.no_search_configuration_or_vector': 'Todavía ninguna configuración de búsqueda ni columna vectorial usa este proveedor.',
|
|
4801
|
+
'vp.delete_vector_provider': 'Eliminar proveedor de vectores',
|
|
4802
|
+
'vp.vector_providers': 'Proveedores de vectores',
|
|
4803
|
+
'vp.a_vector_provider_turns_text': 'Un proveedor de vectores convierte texto en un embedding: una lista de números cuya distancia indica lo cerca que están dos textos en significado. Las columnas vectoriales guardan los embeddings de las filas de una tabla (SQL Workshop › Propiedades de la tabla › Añadir columna vectorial), y las configuraciones de búsqueda de tipo vector o hybrid y las herramientas Retrieve de los agentes de IA encuentran filas por significado. Los textos van al servicio de IA del proveedor.',
|
|
4804
|
+
'vp.name': 'Nombre',
|
|
4805
|
+
'vp.type': 'Tipo',
|
|
4806
|
+
'vp.model_or_function': 'Modelo o función',
|
|
4807
|
+
'vp.dimensions': 'Dimensiones',
|
|
4808
|
+
'vp.no_vector_providers_yet': 'Todavía no hay proveedores de vectores.',
|
|
4809
|
+
'vp.the_vector_providers_of_this': 'Los proveedores de vectores de las aplicaciones de este espacio de trabajo (cada aplicación define los suyos en Componentes compartidos → Proveedores de vectores) y las columnas vectoriales que mantienen al día.',
|
|
4810
|
+
'vp.application': 'Aplicación',
|
|
4811
|
+
'vp.column': 'Columna',
|
|
4812
|
+
'vp.provider': 'Proveedor',
|
|
4813
|
+
'vp.source_columns': 'Columnas de origen',
|
|
4814
|
+
'vp.kept_by': 'Mantenida por',
|
|
4815
|
+
'vp.no_vector_columns_yet_sql': 'Todavía no hay columnas vectoriales (SQL Workshop › Propiedades de la tabla › Añadir columna vectorial).',
|
|
4816
|
+
'vp.test_embed_a_sample_text': 'Probar: incrustar un texto de ejemplo',
|
|
4817
|
+
'vp.add_vector_provider': 'Añadir proveedor de vectores',
|
|
4818
|
+
'vp.name_static_id': 'Nombre (id estático)',
|
|
4819
|
+
'vp.description': 'Descripción',
|
|
4820
|
+
'vp.embedding_model': 'Modelo de embeddings',
|
|
4821
|
+
'vp.texts_per_request': 'Textos por solicitud',
|
|
4822
|
+
'vp.requests_per_minute': 'Solicitudes por minuto',
|
|
4823
|
+
'vp.engine': 'Motor',
|
|
4824
|
+
'vp.model': 'Modelo',
|
|
4825
|
+
'vp.e_g_doc_embeddings': 'p. ej. DOC_EMBEDDINGS',
|
|
4826
|
+
'vp.upper_case_letters_digits_and': 'Letras mayúsculas, dígitos y _. Las configuraciones de búsqueda lo nombran; en SQL: meta.embed(text, \'DOC_EMBEDDINGS\') (proveedores de función y de modelo en la base de datos).',
|
|
4827
|
+
'vp.e_g_text_embedding_3': 'p. ej. text-embedding-3-small',
|
|
4828
|
+
'vp.exactly_as_the_provider_names': 'Exactamente como lo nombra el proveedor: text-embedding-3-small, gemini-embedding-001, nomic-embed-text, mxbai-embed-large …',
|
|
4829
|
+
'vp.when_the_server_embeds_queued': 'Cuando el servidor incrusta filas en cola (columnas vectoriales).',
|
|
4830
|
+
'vp.at_most_this_many_background': 'Como máximo esta cantidad de solicitudes en segundo plano por minuto (por servidor), por debajo del límite del proveedor.',
|
|
4831
|
+
'vp.e_g_intfloat_e5_small': 'p. ej. intfloat/e5-small-v2',
|
|
4832
|
+
'vp.a_model_the_engine_loads': 'Un modelo que carga el motor (la primera llamada lo descarga): intfloat/e5-small-v2 (384), Alibaba-NLP/gte-base-en-v1.5 (768), mixedbread-ai/mxbai-embed-large-v1 (1024) …',
|
|
4833
|
+
'vp.e_g_sales_embed': 'p. ej. sales.embed',
|
|
4834
|
+
'vp.schema_name_of_a_function': 'schema.nombre de una función (text) que devuelve vector, real[] o float8[]. meta.embed la llama con el rol que ejecuta la consulta (se aplican sus permisos): conceda execute sobre ella al rol de la aplicación.',
|
|
4835
|
+
'vp.ai_service_with_an_embedding': 'Servicio de IA con un modelo de embeddings',
|
|
4836
|
+
'vp.model_in_the_database_postgresml': 'Modelo en la base de datos (PostgresML)',
|
|
4837
|
+
'vp.sql_or_pl_pgsql_function': 'Función SQL o PL/pgSQL',
|
|
4838
|
+
'vp.postgresml_pgml_embed_model_text': 'PostgresML: pgml.embed(model, text)',
|
|
4839
|
+
'vp.save': 'Guardar',
|
|
4840
|
+
'vp.where_the_embeddings_come_from': 'De dónde vienen los embeddings.',
|
|
4841
|
+
'vp.its_key_base_url_and': 'Se aplican su clave, URL base y límites diarios; los textos que incrustar van a su proveedor.',
|
|
4842
|
+
'vp.the_extension_that_runs_the': 'La extensión que ejecuta el modelo. Nada sale de la base de datos; conceda usage sobre su esquema (pgml) al rol de la aplicación.',
|
|
4843
|
+
'vp.vector_provider_saved': 'Proveedor de vectores guardado.',
|
|
4844
|
+
'vp.the_pgvector_extension_is_installed': 'La extensión pgvector está instalada.',
|
|
4845
|
+
'vp.providers': 'Proveedores',
|
|
4846
|
+
'vp.vector_columns': 'Columnas vectoriales',
|
|
4847
|
+
'vp.app_builder': 'App Builder',
|
|
4848
|
+
'vp.shared_components': 'Componentes compartidos',
|
|
4849
|
+
'vp.the_quick_brown_fox_jumps': 'El veloz murciélago hindú comía feliz cardillo y kiwi.',
|
|
4850
|
+
'vp.workspace_utilities': 'Utilidades del espacio de trabajo',
|
|
4851
|
+
'vp.installed': 'pgvector {version} está instalado (esquema {schema}).',
|
|
4852
|
+
'vp.not_installed_detail': 'Se pueden definir proveedores de vectores, pero las columnas vectoriales, la búsqueda vectorial y las herramientas Retrieve necesitan la extensión.',
|
|
4853
|
+
'vp.create_extension': 'Crear la extensión vector {version}',
|
|
4854
|
+
'vp.has_pgvector': 'El servidor de base de datos tiene pgvector {version}: {who} ejecuta {sql} en esta base de datos.',
|
|
4855
|
+
'vp.a_superuser': 'un superusuario',
|
|
4856
|
+
'vp.an_administrator': 'un administrador',
|
|
4857
|
+
'vp.no_package': 'El servidor de base de datos no tiene el paquete pgvector: instálelo (por ejemplo {apt}, la imagen Docker {docker} o la extensión {vector} de su proveedor de nube) y luego cree la extensión.',
|
|
4858
|
+
'vp.eg_1536': 'p. ej. 1536',
|
|
4859
|
+
'vp.dimensions_help': 'La longitud de cada vector: text-embedding-3-small 1536 (o menos: OpenAI los acorta), text-embedding-3-large 3072, nomic-embed-text 768, gemini-embedding-001 3072. Una columna vectorial es vector(n) con este n; un índice HNSW admite hasta {max}.',
|
|
4860
|
+
'vp.no_service': 'Esta aplicación todavía no puede usar un servicio de IA de OpenAI, Gemini o compatible con OpenAI: un administrador añade uno en {link} (Claude no tiene embeddings) y permite que esta aplicación lo use.',
|
|
4861
|
+
'vp.no_pgml': 'PostgresML ({pgml}) no está instalado en esta base de datos: instálelo en el servidor de base de datos y luego {sql}. Ejecuta modelos de Hugging Face (entre ellos ONNX) dentro de PostgreSQL.',
|
|
4862
|
+
'vp.used_config': 'Configuración de búsqueda {link} ({type})',
|
|
4863
|
+
'vp.used_column': 'Columna vectorial {link} ({mode})',
|
|
4864
|
+
'vp.set_by_trigger': 'establecida por un trigger',
|
|
4865
|
+
'vp.queued_server': 'en cola para el servidor',
|
|
4866
|
+
'vp.delete_confirm': '¿Eliminar el proveedor de vectores {name}? Las configuraciones de búsqueda y columnas vectoriales que lo usan dejan de funcionar.',
|
|
4867
|
+
'vp.whole_number': '{what} es un número entero.',
|
|
4868
|
+
'vp.f_dimensions': 'Dimensiones',
|
|
4869
|
+
'vp.f_batch': 'Textos por solicitud',
|
|
4870
|
+
'vp.f_per_minute': 'Solicitudes por minuto',
|
|
4871
|
+
'vp.gone': 'El proveedor de vectores {name} ya no existe.',
|
|
4872
|
+
'vp.exists': 'Ya existe un proveedor de vectores {name}.',
|
|
4873
|
+
'vp.deleted': 'Proveedor de vectores {name} eliminado.',
|
|
4874
|
+
// ------------------------------------------------------------ AI assistant (sprint 164)
|
|
4875
|
+
'asst.workspace_utilities_ai_services': 'Utilidades del espacio de trabajo → Servicios de IA',
|
|
4876
|
+
'asst.ai_assistant_settings': 'Configuración del asistente de IA',
|
|
4877
|
+
'asst.a_chat_with_an_ai': 'Un chat con un servicio de IA. Lo que escriben los usuarios, las filas de contexto y los resultados de las herramientas van al proveedor del servicio (Claude, OpenAI, Gemini o el endpoint compatible con OpenAI de su URL base). Las consultas de contexto y las herramientas SQL se ejecutan con el rol de base de datos de la aplicación; las herramientas SQL se revierten salvo que puedan cambiar datos.',
|
|
4878
|
+
'asst.assistant': 'Asistente',
|
|
4879
|
+
'asst.ai_agent': 'Agente de IA',
|
|
4880
|
+
'asst.shared_components_ai_agents': 'Componentes compartidos → Agentes de IA',
|
|
4881
|
+
'asst.ai_service': 'Servicio de IA',
|
|
4882
|
+
'asst.tool_rounds_per_question': 'Rondas de herramientas por pregunta',
|
|
4883
|
+
'asst.questions_per_conversation': 'Preguntas por conversación',
|
|
4884
|
+
'asst.system_prompt': 'Prompt del sistema',
|
|
4885
|
+
'asst.welcome_text': 'Texto de bienvenida',
|
|
4886
|
+
'asst.placeholder': 'Marcador de posición',
|
|
4887
|
+
'asst.error_message': 'Mensaje de error',
|
|
4888
|
+
'asst.also_for_users_who_are': 'También para usuarios sin sesión iniciada (cada pregunta cuesta tokens)',
|
|
4889
|
+
'asst.context_and_tools': 'Contexto y herramientas',
|
|
4890
|
+
'asst.context_queries_json': 'Consultas de contexto (JSON)',
|
|
4891
|
+
'asst.tools_json': 'Herramientas (JSON)',
|
|
4892
|
+
'asst.save_ai_assistant_settings': 'Guardar configuración del asistente de IA',
|
|
4893
|
+
'asst.ask_in_your_own_words': 'Preguntar con sus propias palabras (IA)',
|
|
4894
|
+
'asst.built_in_phrases': 'frases integradas',
|
|
4895
|
+
'asst.also_for_users_who_are_2': 'También para usuarios sin sesión iniciada',
|
|
4896
|
+
'asst.save': 'Guardar',
|
|
4897
|
+
'asst.the_service_s_message': 'el mensaje del servicio',
|
|
4898
|
+
'asst.none_the_service_prompt_and': '- ninguno: el servicio, prompt y herramientas de abajo -',
|
|
4899
|
+
'asst.choose': '- elegir -',
|
|
4900
|
+
'asst.off': '- desactivado -',
|
|
4901
|
+
'asst.built_in_phrases_no_ai': 'Frases integradas (sin IA)',
|
|
4902
|
+
'asst.tools': 'Herramientas',
|
|
4903
|
+
'asst.context_queries': 'Consultas de contexto',
|
|
4904
|
+
'asst.settings_saved': 'Configuración guardada.',
|
|
4905
|
+
'asst.no_service': 'Esta aplicación todavía no puede usar ningún servicio de IA: un administrador añade uno en {link} y permite que esta aplicación lo use.',
|
|
4906
|
+
'asst.who_the_assistant_is_and': 'Quién es el asistente y qué puede responder. `&ITEM.` se sustituye por el valor del elemento como datos delimitados (nunca el id de sesión ni contraseñas).',
|
|
4907
|
+
'asst.run_before_each_question_their': 'Se ejecutan antes de cada pregunta; sus filas van al modelo como datos. `[{"name": "policy", "sql": "select title, body from hr.policy where body @@ plainto_tsquery(:AI_PROMPT)", "max_rows": 5}]` (`:AI_PROMPT` es la pregunta, `:APP_USER` y los elementos como siempre).',
|
|
4908
|
+
'asst.the_model_calls_them_when': 'El modelo las llama cuando las necesita. SQL: `{"name": "my_leave", "description": "…", "sql": "select … where status = :STATUS", "parameters": {"STATUS": {"type": "string", "enum": ["PENDING", "APPROVED"]}}}`; añada `"writes": true` para una herramienta que cambia datos y `"authz": "SCHEME"` para ofrecerla solo a algunos usuarios. REST: `{"name": "department", "type": "rest", "source": "DEPARTMENT", "description": "…", "parameters": {"dname": {"type": "string"}}}`. Tipos de parámetro: string, integer, number, boolean, date; `"optional": true` permite ninguno.',
|
|
4909
|
+
'asst.agent_help': 'Un agente de {link} define el servicio, el prompt del sistema, el esfuerzo de razonamiento, las herramientas y los pasos; guardar con un agente quita el servicio, prompt del sistema, herramientas y rondas propios de la región.',
|
|
4910
|
+
'asst.no_rest_source': 'Herramienta «{tool}»: no hay origen de datos REST {source}.',
|
|
4911
|
+
'asst.no_authz': 'Herramienta «{tool}»: no hay esquema de autorización {scheme}.',
|
|
4912
|
+
'asst.no_agent': 'No hay agente de IA {agent}.',
|
|
4913
|
+
'asst.filter_intro': 'Los usuarios escriben una pregunta; se convierte en la configuración propia del informe (filtros, resaltados, orden, saltos de control, totales, agrupar por, pivote, gráfico, columnas calculadas; solo columnas que muestra el informe, solo sus operadores), mostrada como chips que pueden editar, quitar o deshacer. Con un servicio de IA la pregunta y los nombres de columna van al proveedor del servicio; sin él ({builtin}) pgkiln lee frases comunes por sí mismo, en inglés, neerlandés y alemán.',
|
|
4914
|
+
// ------------------------------------------------------------ AI services (sprint 164)
|
|
4915
|
+
'aisv.service': 'Servicio',
|
|
4916
|
+
'aisv.api_key': 'Clave de API',
|
|
4917
|
+
'aisv.when_utc': 'Cuándo (UTC)',
|
|
4918
|
+
'aisv.application': 'Aplicación',
|
|
4919
|
+
'aisv.page': 'Página',
|
|
4920
|
+
'aisv.user': 'Usuario',
|
|
4921
|
+
'aisv.model': 'Modelo',
|
|
4922
|
+
'aisv.source': 'Origen',
|
|
4923
|
+
'aisv.input': 'Entrada',
|
|
4924
|
+
'aisv.output': 'Salida',
|
|
4925
|
+
'aisv.status': 'Estado',
|
|
4926
|
+
'aisv.no_ai_requests_yet': 'Todavía no hay solicitudes de IA.',
|
|
4927
|
+
'aisv.only_administrators_configure_ai_services': 'Solo los administradores configuran los servicios de IA.',
|
|
4928
|
+
'aisv.ai_services': 'Servicios de IA',
|
|
4929
|
+
'aisv.generate_text_with_ai': 'Generar texto con IA',
|
|
4930
|
+
'aisv.provider': 'Proveedor',
|
|
4931
|
+
'aisv.applications': 'Aplicaciones',
|
|
4932
|
+
'aisv.no_ai_services_yet': 'Todavía no hay servicios de IA.',
|
|
4933
|
+
'aisv.requests': 'Solicitudes',
|
|
4934
|
+
'aisv.input_tokens': 'Tokens de entrada',
|
|
4935
|
+
'aisv.output_tokens': 'Tokens de salida',
|
|
4936
|
+
'aisv.not_ok': 'No ok',
|
|
4937
|
+
'aisv.builder_tests': 'pruebas del builder',
|
|
4938
|
+
'aisv.no_ai_requests_in_the': 'No hay solicitudes de IA en los últimos 30 días.',
|
|
4939
|
+
'aisv.tokens_model_duration_and_status': 'Tokens, modelo, duración y estado de cada llamada. Los prompts y las respuestas nunca se registran (los mensajes de depuración de una aplicación en el nivel 9 los muestran).',
|
|
4940
|
+
'aisv.delete_service': 'Eliminar servicio',
|
|
4941
|
+
'aisv.instead_of_the_base_url': 'En lugar de la URL base: la URL de un servidor remoto (Utilidades del espacio de trabajo → Servidores remotos) más una ruta, así mover el endpoint cambia un valor. La clave de API se envía allí: elija un servidor en cuyos administradores del espacio de trabajo confíe.',
|
|
4942
|
+
'aisv.save': 'Guardar',
|
|
4943
|
+
'aisv.sends_a_prompt_to_the': 'Envía un prompt al servicio (se cuenta en el registro de uso como prueba del builder).',
|
|
4944
|
+
'aisv.prompt': 'Prompt',
|
|
4945
|
+
'aisv.may_use': 'Puede usar',
|
|
4946
|
+
'aisv.requests_per_day': 'Solicitudes por día',
|
|
4947
|
+
'aisv.tokens_per_day': 'Tokens por día',
|
|
4948
|
+
'aisv.no_applications': 'No hay aplicaciones.',
|
|
4949
|
+
'aisv.save_access': 'Guardar acceso',
|
|
4950
|
+
'aisv.requests_today': 'Solicitudes hoy',
|
|
4951
|
+
'aisv.tokens_today': 'Tokens hoy',
|
|
4952
|
+
'aisv.this_application_may_not_use': 'Esta aplicación todavía no puede usar ningún servicio de IA.',
|
|
4953
|
+
'aisv.test': 'Probar',
|
|
4954
|
+
'aisv.when': 'Cuándo',
|
|
4955
|
+
'aisv.name': 'Nombre',
|
|
4956
|
+
'aisv.description': 'Descripción',
|
|
4957
|
+
'aisv.effort_claude': 'Esfuerzo (Claude)',
|
|
4958
|
+
'aisv.maximum_output_tokens': 'Tokens de salida máximos',
|
|
4959
|
+
'aisv.time_limit_seconds': 'Límite de tiempo (segundos)',
|
|
4960
|
+
'aisv.base_url': 'URL base',
|
|
4961
|
+
'aisv.refusal_fallbacks_claude': 'Alternativas ante rechazo (Claude)',
|
|
4962
|
+
'aisv.enabled': 'Activado',
|
|
4963
|
+
'aisv.remove_the_stored_key_use': 'Quitar la clave guardada (usar la predeterminada del servidor)',
|
|
4964
|
+
'aisv.remote_server': 'Servidor remoto',
|
|
4965
|
+
'aisv.path': 'Ruta',
|
|
4966
|
+
'aisv.e_g_claude': 'p. ej. CLAUDE',
|
|
4967
|
+
'aisv.upper_case_letters_digits_and': 'Letras mayúsculas, dígitos y _. Los procesos se refieren al servicio con este nombre.',
|
|
4968
|
+
'aisv.per_request_1_128000_a': 'Por solicitud (1 – 128000); un proceso puede pedir menos.',
|
|
4969
|
+
'aisv.5_600_pages_wait_for': '5 – 600. Las páginas esperan la respuesta.',
|
|
4970
|
+
'aisv.empty_the_provider_s_own': 'vacío: la API del propio proveedor',
|
|
4971
|
+
'aisv.after_the_server_s_base': 'Tras la URL base del servidor, p. ej. /v1; vacío: la propia URL base.',
|
|
4972
|
+
'aisv.claude_anthropic': 'Claude (Anthropic)',
|
|
4973
|
+
'aisv.openai': 'OpenAI',
|
|
4974
|
+
'aisv.gemini_google_openai_compatible_endpoint': 'Gemini (Google, endpoint compatible con OpenAI)',
|
|
4975
|
+
'aisv.openai_compatible_ollama_vllm_azure': 'Compatible con OpenAI (Ollama, vLLM, Azure OpenAI, una pasarela)',
|
|
4976
|
+
'aisv.model_default': 'Predeterminado del modelo',
|
|
4977
|
+
'aisv.none_the_base_url_above': 'ninguno: la URL base de arriba',
|
|
4978
|
+
'aisv.add_service': 'Añadir servicio',
|
|
4979
|
+
'aisv.not_found': 'No encontrado.',
|
|
4980
|
+
'aisv.the_service_now_calls_its': 'El servicio llama ahora a su servidor remoto: pruébelo.',
|
|
4981
|
+
'aisv.the_service_calls_its_base': 'El servicio vuelve a llamar a su URL base.',
|
|
4982
|
+
'aisv.an_openai_compatible_service_needs': 'Un servicio compatible con OpenAI necesita una URL base o un servidor remoto.',
|
|
4983
|
+
'aisv.the_test_failed': 'La prueba ha fallado.',
|
|
4984
|
+
'aisv.prompts_and_the_item_values': 'Los prompts, y los valores de elementos que contienen, se envían a este proveedor. Los endpoints de Gemini y compatibles con OpenAI hablan Chat Completions de OpenAI.',
|
|
4985
|
+
'aisv.how_deeply_claude_thinks_thinking': 'Cuánto razona Claude (el razonamiento siempre está activo en los modelos Claude actuales): menos es más rápido y barato; high o más para tareas difíciles. Predeterminado del modelo: medium para Claude Opus 5.5.',
|
|
4986
|
+
'aisv.when_claude_declines_a_request': 'Cuando Claude rechaza una solicitud por motivos de seguridad, Anthropic la vuelve a ejecutar con su modelo alternativo recomendado. El registro de uso muestra el modelo que respondió.',
|
|
4987
|
+
'aisv.access_saved': 'Acceso guardado.',
|
|
4988
|
+
'aisv.ai_service_added_allow_applications': 'Servicio de IA añadido. Permita abajo que las aplicaciones lo usen y pruébelo.',
|
|
4989
|
+
'aisv.ai_service_deleted': 'Servicio de IA eliminado.',
|
|
4990
|
+
'aisv.the_model_is_a_name': 'El modelo es un nombre como claude-opus-5-5 (letras, dígitos y . _ : / @ -).',
|
|
4991
|
+
'aisv.maximum_output_tokens_1_to': 'Tokens de salida máximos: de 1 a 128000.',
|
|
4992
|
+
'aisv.time_limit_5_to_600': 'Límite de tiempo: de 5 a 600 segundos.',
|
|
4993
|
+
'aisv.the_base_url_starts_with': 'La URL base empieza por http:// o https://.',
|
|
4994
|
+
'aisv.an_openai_compatible_service_needs_2': 'Un servicio compatible con OpenAI necesita una URL base (p. ej. http://localhost:11434/v1 para Ollama).',
|
|
4995
|
+
'aisv.the_name_is_upper_case': 'El nombre son letras mayúsculas, dígitos y _ (p. ej. CLAUDE).',
|
|
4996
|
+
'aisv.the_path_starts_with_without': 'La ruta empieza por /, sin espacios, p. ej. /v1.',
|
|
4997
|
+
'aisv.no_such_remote_server': 'No existe ese servidor remoto.',
|
|
4998
|
+
'aisv.limits_are_whole_numbers_of': 'Los límites son números enteros de 0 o más (vacío: sin límite).',
|
|
4999
|
+
'aisv.services': 'Servicios',
|
|
5000
|
+
'aisv.usage_30_days': 'Uso (30 días)',
|
|
5001
|
+
'aisv.recent_requests': 'Solicitudes recientes',
|
|
5002
|
+
'aisv.settings': 'Configuración',
|
|
5003
|
+
'aisv.app_builder': 'App Builder',
|
|
5004
|
+
'aisv.workspace_utilities': 'Utilidades del espacio de trabajo',
|
|
5005
|
+
'aisv.activity': 'Actividad',
|
|
5006
|
+
'aisv.ai_usage': 'Uso de IA',
|
|
5007
|
+
'aisv.the_server_has_no_pgkiln': 'El servidor no tiene `PGKILN_SECRET_KEY`: no se pueden guardar claves de API hasta que se defina (las variables de entorno del servidor siguen funcionando).',
|
|
5008
|
+
'aisv.model_help': 'Exactamente como lo nombra el proveedor, p. ej. {model} (Claude) o el modelo de OpenAI que usa su cuenta. pgkiln nunca lo cambia.',
|
|
5009
|
+
'aisv.intro': 'Modelos de lenguaje grandes que pueden usar las aplicaciones de esta instalación (procesos y acciones dinámicas {process}, y {fn} desde SQL). Los prompts, incluidos los valores de elementos que contienen, se envían al proveedor elegido. Permita cada aplicación en la página del servicio.',
|
|
5010
|
+
'aisv.delete_confirm': '¿Eliminar el servicio de IA {name}? Los procesos que lo usan fallan hasta que otro servicio tenga su nombre.',
|
|
5011
|
+
'aisv.test_prompt': 'Responde con una frase corta para confirmar que puedes leer esto.',
|
|
5012
|
+
'aisv.apps_intro': 'Qué aplicaciones pueden usar este servicio, con límites diarios opcionales (UTC). Límites vacíos: sin límite. Las solicitudes por encima de un límite fallan con un mensaje y se registran como {limited}.',
|
|
5013
|
+
'aisv.limited': 'limitada',
|
|
5014
|
+
'aisv.aria_req': 'Solicitudes por día para {app}',
|
|
5015
|
+
'aisv.aria_tok': 'Tokens por día para {app}',
|
|
5016
|
+
'aisv.answered_by': 'Respondido por {model}: {input} tokens de entrada y {output} de salida.',
|
|
5017
|
+
// ------------------------------------------------------------ REST source catalogs (sprint 164)
|
|
5018
|
+
'rcat.what_the_document_had_that': 'Lo que tenía el documento que el catálogo no usa:',
|
|
5019
|
+
'rcat.openapi_3': 'OpenAPI 3',
|
|
5020
|
+
'rcat.swagger_2_0': 'Swagger 2.0',
|
|
5021
|
+
'rcat.file': 'Archivo',
|
|
5022
|
+
'rcat.or_paste_it': 'O péguelo',
|
|
5023
|
+
'rcat.method': 'Método',
|
|
5024
|
+
'rcat.description': 'Descripción',
|
|
5025
|
+
'rcat.rest_source_catalogs': 'Catálogos de orígenes REST',
|
|
5026
|
+
'rcat.catalog': 'Catálogo',
|
|
5027
|
+
'rcat.base_url': 'URL base',
|
|
5028
|
+
'rcat.services': 'Servicios',
|
|
5029
|
+
'rcat.from': 'Desde',
|
|
5030
|
+
'rcat.updated_utc': 'Actualizado (UTC)',
|
|
5031
|
+
'rcat.no_catalogs_yet_import_an': 'Todavía no hay catálogos: importe un documento OpenAPI o cree uno abajo.',
|
|
5032
|
+
'rcat.service': 'Servicio',
|
|
5033
|
+
'rcat.path': 'Ruta',
|
|
5034
|
+
'rcat.parameters': 'Parámetros',
|
|
5035
|
+
'rcat.columns': 'Columnas',
|
|
5036
|
+
'rcat.write_back': 'Escritura',
|
|
5037
|
+
'rcat.no_services_yet': 'Todavía no hay servicios.',
|
|
5038
|
+
'rcat.delete_service': 'Eliminar servicio',
|
|
5039
|
+
'rcat.delete_catalog': 'Eliminar catálogo',
|
|
5040
|
+
'rcat.web_credential': 'Credencial web',
|
|
5041
|
+
'rcat.create': 'Crear',
|
|
5042
|
+
'rcat.download': 'Descargar',
|
|
5043
|
+
'rcat.add_a_service': 'Añadir un servicio',
|
|
5044
|
+
'rcat.save': 'Guardar',
|
|
5045
|
+
'rcat.create_from_the_catalog': 'Crear desde el catálogo',
|
|
5046
|
+
'rcat.updated': 'Actualizado',
|
|
5047
|
+
'rcat.or_read_it_from_a': 'O leerlo desde una URL',
|
|
5048
|
+
'rcat.name': 'Nombre',
|
|
5049
|
+
'rcat.row_selector': 'Selector de filas',
|
|
5050
|
+
'rcat.parameters_json': 'Parámetros (JSON)',
|
|
5051
|
+
'rcat.columns_json': 'Columnas (JSON)',
|
|
5052
|
+
'rcat.headers_json': 'Cabeceras (JSON)',
|
|
5053
|
+
'rcat.body_template': 'Plantilla del cuerpo',
|
|
5054
|
+
'rcat.key_columns': 'Columnas clave',
|
|
5055
|
+
'rcat.operations_json': 'Operaciones (JSON)',
|
|
5056
|
+
'rcat.remote_server': 'Servidor remoto',
|
|
5057
|
+
'rcat.api_version': 'Versión de la API',
|
|
5058
|
+
'rcat.https_api_example_com_openapi': 'https://api.example.com/openapi.json',
|
|
5059
|
+
'rcat.the_server_reads_it_the': 'El servidor lo lee; el host debe estar en su lista de permitidos (PGKILN_REST_ALLOWED_HOSTS).',
|
|
5060
|
+
'rcat.from_the_document': 'del documento',
|
|
5061
|
+
'rcat.instead_of_the_document_s': 'En lugar del servidor del documento, p. ej. https://test.api.example.com/v1.',
|
|
5062
|
+
'rcat.the_document_s_title': 'el título del documento',
|
|
5063
|
+
'rcat.the_data_source_s_name': 'El nombre del origen de datos cuando una aplicación crea uno a partir de este servicio.',
|
|
5064
|
+
'rcat.pets_pet_id': '/pets/{pet_id}',
|
|
5065
|
+
'rcat.after_the_catalog_s_base': 'Tras la URL base del catálogo; {name} es un parámetro de ruta.',
|
|
5066
|
+
'rcat.where_the_rows_are_in': 'Dónde están las filas en la respuesta; vacío: la respuesta.',
|
|
5067
|
+
'rcat.e_g_weather_service': 'p. ej. Servicio meteorológico',
|
|
5068
|
+
'rcat.https_api_example_com_v1': 'https://api.example.com/v1',
|
|
5069
|
+
'rcat.e_g_a_test_system': 'p. ej. la URL de un sistema de pruebas (opcional con un servidor remoto). Los orígenes de datos creados antes conservan la URL con la que se crearon.',
|
|
5070
|
+
'rcat.e_g_crm': 'p. ej. CRM',
|
|
5071
|
+
'rcat.the_static_id_of_a': 'El id estático de un servidor remoto de este espacio de trabajo (Utilidades del espacio de trabajo → Servidores remotos): los orígenes de datos creados desde el catálogo nombran entonces el servidor y la ruta del servicio, y se mueven con él.',
|
|
5072
|
+
'rcat.the_service_s_name': 'el nombre del servicio',
|
|
5073
|
+
'rcat.replace_the_services': 'Reemplazar los servicios',
|
|
5074
|
+
'rcat.import': 'Importar',
|
|
5075
|
+
'rcat.this_application_has_a_rest': 'Esta aplicación ya tiene un origen de datos REST con ese nombre: elija otro nombre.',
|
|
5076
|
+
'rcat.catalog_created_add_its_services': 'Catálogo creado: añada sus servicios.',
|
|
5077
|
+
'rcat.catalog_saved': 'Catálogo guardado.',
|
|
5078
|
+
'rcat.service_deleted': 'Servicio eliminado.',
|
|
5079
|
+
'rcat.the_file_is_larger_than': 'El archivo supera los 5 MB.',
|
|
5080
|
+
'rcat.choose_a_file_paste_a': 'Elija un archivo, pegue un documento o indique su URL.',
|
|
5081
|
+
'rcat.the_url_starts_with_http': 'La URL empieza por http:// o https://.',
|
|
5082
|
+
'rcat.choose_a_service_of_one': 'Elija un servicio de uno de los catálogos de este espacio de trabajo.',
|
|
5083
|
+
'rcat.the_name_is_upper_case': 'El nombre son letras mayúsculas, dígitos y _, empezando por una letra, p. ej. COUNTRIES.',
|
|
5084
|
+
'rcat.catalogs': 'Catálogos',
|
|
5085
|
+
'rcat.import_a_catalog': 'Importar un catálogo',
|
|
5086
|
+
'rcat.create_a_catalog_by_hand': 'Crear un catálogo a mano',
|
|
5087
|
+
'rcat.new_service': 'Nuevo servicio',
|
|
5088
|
+
'rcat.replace_from_a_document': 'Reemplazar desde un documento',
|
|
5089
|
+
'rcat.from_a_rest_source_catalog': 'Desde un catálogo de orígenes REST',
|
|
5090
|
+
'rcat.app_builder': 'App Builder',
|
|
5091
|
+
'rcat.workspace_utilities': 'Utilidades del espacio de trabajo',
|
|
5092
|
+
'rcat.doc_intro': 'Un documento {openapi} o {swagger} en JSON (p. ej. {file}), o un archivo de catálogo descargado de pgkiln.',
|
|
5093
|
+
'rcat.doc_replacing': 'Los servicios del catálogo se sustituyen por los del documento; los orígenes de datos creados antes a partir de él se quedan como están.',
|
|
5094
|
+
'rcat.url_answered': 'La URL respondió HTTP {status}.',
|
|
5095
|
+
'rcat.headers_help': 'Cabeceras de solicitud adicionales, no secretos: inicia sesión la credencial web de una aplicación.',
|
|
5096
|
+
'rcat.unusable': 'El catálogo no se puede usar tal como está: {problems}',
|
|
5097
|
+
'rcat.and_more': '(y {n} más)',
|
|
5098
|
+
'rcat.imported': 'Catálogo {name} importado con {n} servicio(s).',
|
|
5099
|
+
'rcat.import_failed': 'La importación falló: {error}',
|
|
5100
|
+
'rcat.on_server': 'En el servidor remoto {server}',
|
|
5101
|
+
'rcat.from_openapi': 'de un documento OpenAPI',
|
|
5102
|
+
'rcat.from_openapi_version': 'de un documento OpenAPI (versión {version})',
|
|
5103
|
+
'rcat.updated_when': 'actualizado {when} UTC',
|
|
5104
|
+
'rcat.add': 'Añadir',
|
|
5105
|
+
'rcat.service_title': 'Servicio {name}',
|
|
5106
|
+
'rcat.url': 'URL:',
|
|
5107
|
+
'rcat.delete_service_confirm': '¿Eliminar el servicio {name}?',
|
|
5108
|
+
'rcat.delete_catalog_confirm': '¿Eliminar el catálogo {name} y sus servicios? Los orígenes de datos creados a partir de él se quedan.',
|
|
5109
|
+
'rcat.no_server': 'Catálogo guardado. Este espacio de trabajo todavía no tiene servidor remoto {server}: añádalo en Utilidades del espacio de trabajo → Servidores remotos.',
|
|
5110
|
+
'rcat.replaced': 'Se reemplazaron los servicios de {name}: {n} servicio(s).',
|
|
5111
|
+
'rcat.deleted': 'Catálogo {name} eliminado.',
|
|
5112
|
+
'rcat.service_saved': 'Servicio {name} guardado.',
|
|
5113
|
+
'rcat.no_credential': 'Esta aplicación no tiene credencial web {name} (ni su espacio de trabajo).',
|
|
5114
|
+
'rcat.copy_of': 'Una copia de un servicio de los {link} de este espacio de trabajo: su URL, parámetros, columnas y operaciones de escritura.',
|
|
5115
|
+
'rcat.catalogs_link': 'catálogos',
|
|
5116
|
+
// ------------------------------------------------------------ Blueprints (sprint 164)
|
|
5117
|
+
'bp.review': 'Revisar',
|
|
5118
|
+
'bp.describe_the_application': 'Describa la aplicación',
|
|
5119
|
+
'bp.draft_a_blueprint': 'Redactar un blueprint',
|
|
5120
|
+
'bp.sql_workshop_ai': 'SQL Workshop → IA',
|
|
5121
|
+
'bp.name': 'Nombre',
|
|
5122
|
+
'bp.save': 'Guardar',
|
|
5123
|
+
'bp.this_is_what_the_blueprint': 'Esto es lo que crea el blueprint. Revíselo; vuelva atrás para cambiarlo o cree la aplicación.',
|
|
5124
|
+
'bp.alias': 'Alias',
|
|
5125
|
+
'bp.schema': 'Esquema',
|
|
5126
|
+
'bp.sign_in': 'Inicio de sesión',
|
|
5127
|
+
'bp.table': 'Tabla',
|
|
5128
|
+
'bp.columns': 'Columnas',
|
|
5129
|
+
'bp.sample_rows': 'Filas de ejemplo',
|
|
5130
|
+
'bp.the_sql': 'El SQL',
|
|
5131
|
+
'bp.a_dashboard_with_charts_per': 'Un panel con gráficos por tabla',
|
|
5132
|
+
'bp.menu_home_and_the_pages': 'Menú: Inicio y las entradas propias de las páginas.',
|
|
5133
|
+
'bp.first_user_admin_role': 'Primer usuario (rol admin)',
|
|
5134
|
+
'bp.password_for_a_new_account': 'Contraseña (para una cuenta nueva)',
|
|
5135
|
+
'bp.back_to_the_editor': 'Volver al editor',
|
|
5136
|
+
'bp.the_blueprint_can_t_be': 'El blueprint todavía no se puede crear:',
|
|
5137
|
+
'bp.blueprints': 'Blueprints',
|
|
5138
|
+
'bp.blueprint': 'Blueprint',
|
|
5139
|
+
'bp.application_created': 'Aplicación creada',
|
|
5140
|
+
'bp.changed': 'Modificado',
|
|
5141
|
+
'bp.delete': 'Eliminar',
|
|
5142
|
+
'bp.no_saved_blueprints_yet': 'Todavía no hay blueprints guardados.',
|
|
5143
|
+
'bp.a_blueprint_of_an_application': 'Un blueprint de una aplicación de este espacio de trabajo: las tablas que usan sus páginas, sus páginas y su menú, para revisarlo y cambiarlo en el editor (para una copia, una nueva versión o un sistema de pruebas). No se crea nada hasta que confirme la revisión.',
|
|
5144
|
+
'bp.application': 'Aplicación',
|
|
5145
|
+
'bp.sample_rows_up_to_20': 'Filas de ejemplo: hasta 20 por tabla',
|
|
5146
|
+
'bp.the_rows_are_copied_into': 'Las filas se copian tal cual en el blueprint: déjelo desactivado para datos personales o confidenciales.',
|
|
5147
|
+
'bp.drafted_by_ai_review_it': 'Redactado por IA: revíselo antes de crear nada.',
|
|
5148
|
+
'bp.create_the_application': 'Crear la aplicación',
|
|
5149
|
+
'bp.new_blueprint': 'Nuevo blueprint',
|
|
5150
|
+
'bp.create_a_blueprint': 'Crear un blueprint',
|
|
5151
|
+
'bp.e_g_track_projects_with': 'p. ej. Seguir proyectos con tareas y fechas de vencimiento, y las horas que dedica la gente',
|
|
5152
|
+
'bp.projects': 'Proyectos',
|
|
5153
|
+
'bp.blueprint_deleted_applications_created_from': 'Blueprint eliminado (las aplicaciones creadas a partir de él se quedan).',
|
|
5154
|
+
'bp.there_is_no_such_blueprint': 'No existe ese blueprint.',
|
|
5155
|
+
'bp.the_app_builder_has_no': 'El App Builder todavía no tiene servicio de IA.',
|
|
5156
|
+
'bp.describe_the_application_2': 'Describa la aplicación.',
|
|
5157
|
+
'bp.draft_with_ai': 'Redactar con IA',
|
|
5158
|
+
'bp.tables': 'Tablas',
|
|
5159
|
+
'bp.pages': 'Páginas',
|
|
5160
|
+
'bp.from_an_application': 'Desde una aplicación',
|
|
5161
|
+
'bp.app_builder': 'App Builder',
|
|
5162
|
+
'bp.create': 'Crear',
|
|
5163
|
+
'bp.too_long': 'El blueprint es demasiado largo (como máximo {n} caracteres).',
|
|
5164
|
+
'bp.bad_json': 'JSON no válido: {error}',
|
|
5165
|
+
'bp.title': 'Blueprint: {name}',
|
|
5166
|
+
'bp.intro': 'Un blueprint describe una aplicación: sus tablas (cada tabla recibe un {id}; {references} crea una clave foránea), páginas ({pages}), menú y filas de ejemplo. {review} muestra lo que creará; no se crea nada antes de que lo confirme allí.',
|
|
5167
|
+
'bp.no_service': 'El App Builder no tiene servicio de IA: un administrador elige uno en {link}. Puede escribir el blueprint usted mismo.',
|
|
5168
|
+
'bp.db_role': '(rol de base de datos {role})',
|
|
5169
|
+
'bp.alias_taken': 'Ya existe una aplicación con el alias {alias}: cambie "alias" y "schema" en el blueprint.',
|
|
5170
|
+
'bp.alias_taken_short': 'Ya existe una aplicación con el alias {alias}.',
|
|
5171
|
+
'bp.review_title': 'Revisar',
|
|
5172
|
+
'bp.list_intro': 'Describa una aplicación como blueprint (tablas, páginas, menú, filas de ejemplo), revísela y créela.',
|
|
5173
|
+
'bp.saved': 'Blueprint {name} guardado.',
|
|
5174
|
+
'bp.created': 'Aplicación {alias} creada a partir del blueprint: {tables} tabla(s), {rows} fila(s) de ejemplo.',
|
|
5175
|
+
'bp.admin_role': 'La cuenta existente {user} recibió el rol admin.',
|
|
5176
|
+
'bp.not_created': 'No se creó ninguna aplicación: {error}',
|
|
5177
|
+
// ------------------------------------------------------------ JSON sources (sprint 164)
|
|
5178
|
+
'jsrc.a_column_per_path_in': 'Una columna por ruta en el documento (claves separadas por puntos, p. ej. `address.city`). Un valor que no se lee como el tipo aparece vacío. Al guardar una fila solo se escriben las rutas cuyos valores cambiaron: las claves que esta lista no nombra se quedan en el documento. Vacíe un nombre para quitar una columna.',
|
|
5179
|
+
'jsrc.column': 'Columna',
|
|
5180
|
+
'jsrc.path': 'Ruta',
|
|
5181
|
+
'jsrc.type': 'Tipo',
|
|
5182
|
+
'jsrc.read_only': 'Solo lectura',
|
|
5183
|
+
'jsrc.json_source': 'Origen JSON',
|
|
5184
|
+
'jsrc.table_and_jsonb_column': 'Tabla y columna jsonb',
|
|
5185
|
+
'jsrc.a_column_of_a_table': 'Una columna de una tabla, o la columna de documento de una tabla de documentos. La tabla necesita una clave primaria.',
|
|
5186
|
+
'jsrc.the_view_also_adds_and': 'La vista también añade y elimina filas de la tabla',
|
|
5187
|
+
'jsrc.for_a_table_of_documents': 'Para una tabla de documentos: un insert en la vista añade una fila, un delete la quita. Desactivado: la vista solo cambia los documentos de las filas existentes.',
|
|
5188
|
+
'jsrc.columns': 'Columnas',
|
|
5189
|
+
'jsrc.remove_this_array': 'Quitar este array',
|
|
5190
|
+
'jsrc.add_an_array': 'Añadir un array',
|
|
5191
|
+
'jsrc.add_the_array_then_propose': 'Añada el array y luego Proponer a partir de los datos rellena sus columnas (o escríbalas tras guardar).',
|
|
5192
|
+
'jsrc.json_sources': 'Orígenes JSON',
|
|
5193
|
+
'jsrc.a_json_source_describes_a': 'Un origen JSON describe una columna jsonb: una columna por ruta en sus documentos y los arrays de objetos como filas propias. pgkiln crea vistas actualizables a partir de él, así que formularios, informes, cuadrículas interactivas, REST y MCP leen y escriben los documentos como tablas. Guardar una fila cambia solo las rutas que cambió: las claves que el origen no conoce se quedan. Para una tabla con sus tablas hijas como un documento, vea SQL Workshop › Propiedades de la tabla › Vista de documentos.',
|
|
5194
|
+
'jsrc.name': 'Nombre',
|
|
5195
|
+
'jsrc.views': 'Vistas',
|
|
5196
|
+
'jsrc.not_made': 'no creadas',
|
|
5197
|
+
'jsrc.no_json_sources_yet': 'Todavía no hay orígenes JSON.',
|
|
5198
|
+
'jsrc.delete_json_source': 'Eliminar origen JSON',
|
|
5199
|
+
'jsrc.proposed_from_up_to_200': 'Propuesto a partir de hasta 200 documentos: revise los nombres y tipos y luego guarde.',
|
|
5200
|
+
'jsrc.propose_from_the_data': 'Proponer a partir de los datos',
|
|
5201
|
+
'jsrc.add_json_source': 'Añadir origen JSON',
|
|
5202
|
+
'jsrc.open_in_the_sql_worksheet': 'Abrir en la hoja de trabajo SQL',
|
|
5203
|
+
'jsrc.create_page': 'Crear página',
|
|
5204
|
+
'jsrc.the_element_itself': '(el propio elemento)',
|
|
5205
|
+
'jsrc.name_static_id': 'Nombre (id estático)',
|
|
5206
|
+
'jsrc.description': 'Descripción',
|
|
5207
|
+
'jsrc.view': 'Vista',
|
|
5208
|
+
'jsrc.page_number': 'Número de página',
|
|
5209
|
+
'jsrc.title': 'Título',
|
|
5210
|
+
'jsrc.e_g_emp_profile': 'p. ej. EMP_PROFILE',
|
|
5211
|
+
'jsrc.upper_case_letters_digits_and': 'Letras mayúsculas, dígitos y _.',
|
|
5212
|
+
'jsrc.e_g_emp_profile_2': 'p. ej. emp_profile',
|
|
5213
|
+
'jsrc.made_in_the_table_s': 'Se crea en el esquema de la tabla. Las regiones, REST y MCP la usan como una tabla.',
|
|
5214
|
+
'jsrc.the_array_in_the_document': 'El array del documento, p. ej. skills.',
|
|
5215
|
+
'jsrc.e_g_skills': 'p. ej. skills',
|
|
5216
|
+
'jsrc.e_g_emp_profile_skills': 'p. ej. emp_profile_skills',
|
|
5217
|
+
'jsrc.save': 'Guardar',
|
|
5218
|
+
'jsrc.the_views_are_not_made': 'Las vistas todavía no están creadas.',
|
|
5219
|
+
'jsrc.make_the_views_again': 'Volver a crear las vistas',
|
|
5220
|
+
'jsrc.create_views': 'Crear vistas',
|
|
5221
|
+
'jsrc.check_the_statements_then_run': 'Revise las sentencias y luego ejecútelas como un script.',
|
|
5222
|
+
'jsrc.json_source_saved': 'Origen JSON guardado.',
|
|
5223
|
+
'jsrc.the_page_number_is_a': 'El número de página es un número entero desde 1.',
|
|
5224
|
+
'jsrc.choose_a_table_and_its': 'Elija una tabla y su columna json o jsonb.',
|
|
5225
|
+
'jsrc.create_page_needs_a_table': 'Crear página necesita una tabla con clave de una columna; use las vistas en regiones propias.',
|
|
5226
|
+
'jsrc.sources': 'Orígenes',
|
|
5227
|
+
'jsrc.app_builder': 'App Builder',
|
|
5228
|
+
'jsrc.shared_components': 'Componentes compartidos',
|
|
5229
|
+
'jsrc.aria_name': 'Columna {n}: nombre',
|
|
5230
|
+
'jsrc.aria_path': 'Columna {n}: ruta',
|
|
5231
|
+
'jsrc.aria_type': 'Columna {n}: tipo',
|
|
5232
|
+
'jsrc.aria_readonly': 'Columna {n}: solo lectura',
|
|
5233
|
+
'jsrc.no_json_table': '(no hay tabla con columna json o jsonb)',
|
|
5234
|
+
'jsrc.array_view_help': 'Una fila por elemento: la clave de la tabla, {rowkey} (la clave del elemento) y {position} (1, 2 …), y luego estas columnas. Úsela como cuadrícula de detalle.',
|
|
5235
|
+
'jsrc.page_exists': 'La página {n} ya existe.',
|
|
5236
|
+
'jsrc.form_on': 'Un formulario sobre {view}. Ábralo con la clave en la URL ({item}), p. ej. desde el enlace de un informe.',
|
|
5237
|
+
'jsrc.form_on_grid': 'Un formulario sobre {view} con una cuadrícula de detalle para {arrays}. Ábralo con la clave en la URL ({item}), p. ej. desde el enlace de un informe.',
|
|
5238
|
+
'jsrc.form_on_grids': 'Un formulario sobre {view} con cuadrículas de detalle para {arrays}. Ábralo con la clave en la URL ({item}), p. ej. desde el enlace de un informe.',
|
|
5239
|
+
'jsrc.delete_confirm': '¿Eliminar el origen JSON {name}? Sus vistas se quedan en la base de datos (elimínelas en el SQL Workshop).',
|
|
5240
|
+
'jsrc.view_taken': 'La vista {view} pertenece al origen JSON {source}.',
|
|
5241
|
+
'jsrc.key_changed': 'La clave primaria de {table} cambió: vuelva a guardar el origen.',
|
|
5242
|
+
'jsrc.nothing_changed': 'No se cambió nada: {error}',
|
|
5243
|
+
'jsrc.views_made': 'Las vistas de {name} están creadas: {views}.',
|
|
5244
|
+
'jsrc.page_made': 'Página {n} creada: un formulario sobre {view}.',
|
|
5245
|
+
'jsrc.page_made_grids': 'Página {n} creada: un formulario sobre {view} con cuadrículas de detalle.',
|
|
5246
|
+
// ------------------------------------------------------------ REST API (PostgREST, OAuth clients) (sprint 164)
|
|
5247
|
+
'apip.for_development_and_trusted_scripts': 'Para desarrollo y scripts de confianza: el token actúa como la cuenta hasta que caduca. Los roles se leen en cada solicitud; desactivar la cuenta o revocar su acceso detiene el token al instante (`meta.api_check`). Para invalidar todos los tokens, cambie `API_JWT_SECRET`.',
|
|
5248
|
+
'apip.roles': 'Roles',
|
|
5249
|
+
'apip.create_client': 'Crear cliente',
|
|
5250
|
+
'apip.client_id': 'ID de cliente',
|
|
5251
|
+
'apip.client_secret': 'Secreto de cliente',
|
|
5252
|
+
'apip.client': 'Cliente',
|
|
5253
|
+
'apip.token': 'Token',
|
|
5254
|
+
'apip.secret_changed': 'Secreto cambiado',
|
|
5255
|
+
'apip.last_used': 'Último uso',
|
|
5256
|
+
'apip.actions': 'Acciones',
|
|
5257
|
+
'apip.save': 'Guardar',
|
|
5258
|
+
'apip.no_clients_yet': 'Todavía no hay clientes.',
|
|
5259
|
+
'apip.not_reachable': 'no accesible',
|
|
5260
|
+
'apip.users_create_their_own_tokens': 'Los usuarios crean sus propios tokens',
|
|
5261
|
+
'apip.my_account': 'Mi cuenta',
|
|
5262
|
+
'apip.issue_token': 'Emitir token',
|
|
5263
|
+
'apip.path': 'Ruta',
|
|
5264
|
+
'apip.kind': 'Tipo',
|
|
5265
|
+
'apip.try_it': 'Probar',
|
|
5266
|
+
'apip.new_client': 'Nuevo cliente',
|
|
5267
|
+
'apip.comma_separated_or_pick_below': 'separados por comas, o elija abajo',
|
|
5268
|
+
'apip.no_roles': 'sin roles',
|
|
5269
|
+
'apip.keep_the_old_secret': 'Conservar el secreto anterior',
|
|
5270
|
+
'apip.status': 'Estado',
|
|
5271
|
+
'apip.methods': 'Métodos',
|
|
5272
|
+
'apip.name': 'Nombre',
|
|
5273
|
+
'apip.token_lifetime_minutes': 'Duración del token (minutos)',
|
|
5274
|
+
'apip.description': 'Descripción',
|
|
5275
|
+
'apip.api_database_role': 'Rol de base de datos de la API',
|
|
5276
|
+
'apip.account': 'Cuenta',
|
|
5277
|
+
'apip.valid_for_hours': 'Válido durante (horas)',
|
|
5278
|
+
'apip.e_g_payroll_sync': 'p. ej. payroll-sync',
|
|
5279
|
+
'apip.lower_case_letters_digits': 'Letras minúsculas, dígitos, . _ -',
|
|
5280
|
+
'apip.5_to_1440': 'De 5 a 1440.',
|
|
5281
|
+
'apip.who_uses_it': 'quién lo usa',
|
|
5282
|
+
'apip.e_g_myapp_api': 'p. ej. myapp_api',
|
|
5283
|
+
'apip.grant_it_only_the_api': 'Concédale solo las vistas y funciones del esquema api, y concédala a pgkiln_authenticator. Vacío: los tokens solo funcionan para los módulos REST que sirve pgkiln (Componentes compartidos → Módulos REST).',
|
|
5284
|
+
'apip.revoke': 'Revocar',
|
|
5285
|
+
'apip.reactivate': 'Reactivar',
|
|
5286
|
+
'apip.problem': 'Problema:',
|
|
5287
|
+
'apip.check_the_name_lower_case': 'Revise el nombre (letras minúsculas, dígitos, . _ -) y la duración del token (5–1440 minutos).',
|
|
5288
|
+
'apip.setup': 'Configuración',
|
|
5289
|
+
'apip.issue_a_token': 'Emitir un token',
|
|
5290
|
+
'apip.endpoints': 'Endpoints',
|
|
5291
|
+
'apip.app_builder': 'App Builder',
|
|
5292
|
+
'apip.rest_api': 'API REST',
|
|
5293
|
+
'apip.oauth_intro': 'Para sistemas que llaman a la API (como {ords} de ORDS): un cliente intercambia su id y secreto por un token de acceso en {url} ({grant}) y actúa como {client} con sus roles, leídos en cada solicitud.',
|
|
5294
|
+
'apip.new_secret_for': 'Nuevo secreto para {name}',
|
|
5295
|
+
'apip.client_created': 'Cliente {name} creado',
|
|
5296
|
+
'apip.copy_now': 'Copie el secreto ahora: solo se muestra una vez.',
|
|
5297
|
+
'apip.grace': 'El secreto anterior sigue funcionando durante {n} horas.',
|
|
5298
|
+
'apip.aria_roles': 'Roles de {name}',
|
|
5299
|
+
'apip.add': 'Añadir',
|
|
5300
|
+
'apip.minutes': '{n} min',
|
|
5301
|
+
'apip.old_valid_until': 'secreto anterior válido hasta {when}',
|
|
5302
|
+
'apip.never': 'nunca',
|
|
5303
|
+
'apip.new_secret': 'Nuevo secreto',
|
|
5304
|
+
'apip.old_24h': 'el anterior válido 24 h',
|
|
5305
|
+
'apip.old_7d': 'el anterior válido 7 días',
|
|
5306
|
+
'apip.old_now': 'el anterior inválido ya',
|
|
5307
|
+
'apip.delete': 'Eliminar',
|
|
5308
|
+
'apip.ok': 'OK:',
|
|
5309
|
+
'apip.intro': 'PostgREST se ejecuta junto a pgkiln y sirve el esquema {schema} por HTTP. Las solicitudes llevan un JWT cuya claim {role} es el rol de API de esta aplicación; la seguridad a nivel de fila usa los mismos {user} y {has} que las páginas web.',
|
|
5310
|
+
'apip.at': 'PostgREST en {url}:',
|
|
5311
|
+
'apip.dedicated': '{role} es un rol dedicado',
|
|
5312
|
+
'apip.no_role': 'Sin rol de API: los tokens son solo para los módulos REST que sirve pgkiln',
|
|
5313
|
+
'apip.may_switch': 'pgkiln_authenticator puede cambiar a {role}',
|
|
5314
|
+
'apip.run_grant': '{run} {sql}',
|
|
5315
|
+
'apip.run': 'ejecute',
|
|
5316
|
+
'apip.self_help': 'En {account}, los usuarios con sesión iniciada crean un token que actúa como ellos. Un usuario al que la aplicación exige inicio de sesión en dos pasos da primero un segundo paso (si el último tiene más de 15 minutos).',
|
|
5317
|
+
'apip.methods_for': 'Métodos para {role}',
|
|
5318
|
+
'apip.none': 'ninguno',
|
|
5319
|
+
'apip.nothing_yet': 'Todavía no hay nada en el esquema {schema}. Cree vistas y funciones allí y concédalas al rol de API.',
|
|
5320
|
+
'apip.nothing_yet_no_role': 'Todavía no hay nada en el esquema {schema}, o no se definió rol de API. Cree vistas y funciones allí y concédalas al rol de API.',
|
|
5321
|
+
'apip.reload': 'Tras cambiar el esquema ejecute {sql} para que PostgREST los recoja. Descripción OpenAPI: {link}.',
|
|
5322
|
+
'apip.roles_saved': 'Roles de {name} guardados.',
|
|
5323
|
+
// ------------------------------------------------------------ AI agents and tools (sprint 164)
|
|
5324
|
+
'agt.this_application_may_not_use': 'Esta aplicación todavía no puede usar ningún servicio de IA: un administrador añade uno en Utilidades del espacio de trabajo → Servicios de IA y permite que esta aplicación lo use.',
|
|
5325
|
+
'agt.agent': 'Agente',
|
|
5326
|
+
'agt.tools': 'Herramientas',
|
|
5327
|
+
'agt.the_agent_acts_only_through': 'El agente actúa solo mediante las herramientas que marque.',
|
|
5328
|
+
'agt.add_one': 'añada una',
|
|
5329
|
+
'agt.used_by': 'Usado por',
|
|
5330
|
+
'agt.no_ai_assistant_region_uses': 'Todavía ninguna región de asistente de IA usa este agente (Page Designer → una región de asistente de IA → Agente de IA).',
|
|
5331
|
+
'agt.delete_agent': 'Eliminar agente',
|
|
5332
|
+
'agt.tool': 'Herramienta',
|
|
5333
|
+
'agt.no_agent_uses_this_tool': 'Todavía ningún agente usa esta herramienta.',
|
|
5334
|
+
'agt.delete_tool': 'Eliminar herramienta',
|
|
5335
|
+
'agt.every_tool_call_of_the': 'Cada llamada a herramienta de los asistentes y agentes de IA de la aplicación, con los argumentos que dio el modelo (se conservan 30 días).',
|
|
5336
|
+
'agt.when_utc': 'Cuándo (UTC)',
|
|
5337
|
+
'agt.page': 'Página',
|
|
5338
|
+
'agt.user': 'Usuario',
|
|
5339
|
+
'agt.arguments': 'Argumentos',
|
|
5340
|
+
'agt.status': 'Estado',
|
|
5341
|
+
'agt.no_tool_calls_yet': 'Todavía no hay llamadas a herramientas.',
|
|
5342
|
+
'agt.ai_agents': 'Agentes de IA',
|
|
5343
|
+
'agt.ai_usage': 'Uso de IA',
|
|
5344
|
+
'agt.ai_service': 'Servicio de IA',
|
|
5345
|
+
'agt.authorization': 'Autorización',
|
|
5346
|
+
'agt.no_ai_agents_yet': 'Todavía no hay agentes de IA.',
|
|
5347
|
+
'agt.type': 'Tipo',
|
|
5348
|
+
'agt.no_ai_tools_yet': 'Todavía no hay herramientas de IA.',
|
|
5349
|
+
'agt.add_agent': 'Añadir agente',
|
|
5350
|
+
'agt.add_tool': 'Añadir herramienta',
|
|
5351
|
+
'agt.when': 'Cuándo',
|
|
5352
|
+
'agt.authorization_scheme': 'Esquema de autorización',
|
|
5353
|
+
'agt.name': 'Nombre',
|
|
5354
|
+
'agt.description': 'Descripción',
|
|
5355
|
+
'agt.reasoning_effort': 'Esfuerzo de razonamiento',
|
|
5356
|
+
'agt.maximum_steps': 'Pasos máximos',
|
|
5357
|
+
'agt.maximum_output_tokens': 'Tokens de salida máximos',
|
|
5358
|
+
'agt.system_prompt': 'Prompt del sistema',
|
|
5359
|
+
'agt.sql_query_sql': 'Consulta SQL (SQL)',
|
|
5360
|
+
'agt.function_pl_pgsql': 'Función (PL/pgSQL)',
|
|
5361
|
+
'agt.rest_data_source_rest': 'Origen de datos REST (REST)',
|
|
5362
|
+
'agt.action_javascript': 'Acción (JavaScript)',
|
|
5363
|
+
'agt.pages_navigate': 'Páginas (Navigate)',
|
|
5364
|
+
'agt.search_configuration_retrieve': 'Configuración de búsqueda (Retrieve)',
|
|
5365
|
+
'agt.parameters_json_not_for_navigate': 'Parámetros (JSON; no para Navigate ni Retrieve)',
|
|
5366
|
+
'agt.maximum_rows': 'Filas máximas',
|
|
5367
|
+
'agt.time_limit_seconds': 'Límite de tiempo (segundos)',
|
|
5368
|
+
'agt.e_g_sales_agent': 'p. ej. SALES_AGENT',
|
|
5369
|
+
'agt.upper_case_letters_digits_and': 'Letras mayúsculas, dígitos y _. Las regiones de asistente de IA nombran el agente.',
|
|
5370
|
+
'agt.rounds_of_tool_calls_per': 'Rondas de llamadas a herramientas por pregunta (1 – 20); luego el modelo debe responder.',
|
|
5371
|
+
'agt.the_service_s': 'la del servicio',
|
|
5372
|
+
'agt.per_call_to_the_model': 'Por llamada al modelo (nunca por encima del máximo del servicio).',
|
|
5373
|
+
'agt.e_g_top_earners': 'p. ej. top_earners',
|
|
5374
|
+
'agt.letters_digits_and_the_model': 'Letras, dígitos y _: el modelo llama a la herramienta con este nombre.',
|
|
5375
|
+
'agt.e_g_sales_give_discount': 'p. ej. sales.give_discount',
|
|
5376
|
+
'agt.schema_name_called_as_the': 'schema.nombre, llamada con el rol de la aplicación con argumentos con nombre: cada nombre de parámetro en minúsculas es un nombre de argumento (P_ORDER → p_order). Puede cambiar datos.',
|
|
5377
|
+
'agt.e_g_highlightorder': 'p. ej. highlightOrder',
|
|
5378
|
+
'agt.after_the_answer_the_browser': 'Tras la respuesta el navegador llama a la función registrada con pgkiln.actions.register(name) con {value: the arguments}, y a las acciones dinámicas del evento personalizado con ese nombre.',
|
|
5379
|
+
'agt.the_page_numbers_the_agent': 'Los números de página a los que el agente puede enlazar. pgkiln ofrece solo las que el usuario puede abrir y crea la URL (valores de elementos con su suma de comprobación).',
|
|
5380
|
+
'agt.rows_the_model_gets_back': 'Filas que recibe el modelo (1 – 500).',
|
|
5381
|
+
'agt.sql_and_function_tools_1': 'Herramientas SQL y de función (1 – 60).',
|
|
5382
|
+
'agt.none_everyone_who_may_use': '- ninguno: todos los que pueden usar la página -',
|
|
5383
|
+
'agt.must_not_be_the_public': 'No debe ser el usuario público',
|
|
5384
|
+
'agt.choose': '- elegir -',
|
|
5385
|
+
'agt.the_service_s_2': 'La del servicio',
|
|
5386
|
+
'agt.save': 'Guardar',
|
|
5387
|
+
'agt.the_conversation_the_tools_results': 'La conversación, los resultados de las herramientas y el prompt del sistema van al proveedor de este servicio.',
|
|
5388
|
+
'agt.only_users_who_pass_it': 'Solo los usuarios que lo superan pueden usar el agente (las regiones muestran un mensaje a los demás).',
|
|
5389
|
+
'agt.what_the_tool_does_each': 'Lo que hace la herramienta; cada tipo usa los campos de abajo que lo nombran.',
|
|
5390
|
+
'agt.tells_the_model_what_the': 'Le dice al modelo qué hace la herramienta y cuándo usarla.',
|
|
5391
|
+
'agt.the_parameters_become_the_source': 'Los parámetros pasan a ser los parámetros del origen.',
|
|
5392
|
+
'agt.only_users_who_pass_it_2': 'Solo a los usuarios que lo superan se les ofrece la herramienta.',
|
|
5393
|
+
'agt.ai_agent_saved': 'Agente de IA guardado.',
|
|
5394
|
+
'agt.ai_tool_saved': 'Herramienta de IA guardada.',
|
|
5395
|
+
'agt.parameters_not_valid_json': 'Parámetros: JSON no válido.',
|
|
5396
|
+
'agt.tool_calls': 'Llamadas a herramientas',
|
|
5397
|
+
'agt.agents': 'Agentes',
|
|
5398
|
+
'agt.ai_agent': 'Agente de IA',
|
|
5399
|
+
'agt.ai_tool': 'Herramienta de IA',
|
|
5400
|
+
'agt.app_builder': 'App Builder',
|
|
5401
|
+
'agt.shared_components': 'Componentes compartidos',
|
|
5402
|
+
'agt.type.sql': 'Consulta SQL (solo lectura, con el rol de la aplicación)',
|
|
5403
|
+
'agt.type.function': 'Función PL/pgSQL (puede cambiar datos)',
|
|
5404
|
+
'agt.type.rest': 'Origen de datos REST',
|
|
5405
|
+
'agt.type.javascript': 'Acción JavaScript en el navegador',
|
|
5406
|
+
'agt.type.navigate': 'Navigate: un enlace a una página',
|
|
5407
|
+
'agt.type.retrieve': 'Retrieve (RAG): filas de una configuración de búsqueda',
|
|
5408
|
+
'agt.effort_help': 'Claude: el esfuerzo de salida (profundidad de razonamiento). OpenAI, Gemini y compatibles con OpenAI: reasoning_effort (déjelo vacío para modelos sin razonamiento).',
|
|
5409
|
+
'agt.system_help': 'Quién es el agente, qué puede responder y cuándo usar cada herramienta. &ITEM. se sustituye por el valor del elemento como datos delimitados.',
|
|
5410
|
+
'agt.no_tools': 'Todavía no hay herramientas de IA: {link}.',
|
|
5411
|
+
'agt.delete_agent_confirm': '¿Eliminar el agente {name}? Las regiones que lo usan muestran que el asistente no está configurado.',
|
|
5412
|
+
'agt.sql_help': 'Un SELECT con los parámetros como valores de enlace :NAME (y :APP_USER, elementos). Se ejecuta con el rol de base de datos de la aplicación (se aplican permisos y seguridad a nivel de fila) en una transacción de solo lectura.',
|
|
5413
|
+
'agt.delete_tool_confirm': '¿Eliminar la herramienta {name}?',
|
|
5414
|
+
'agt.whole_number': '{what} es un número entero.',
|
|
5415
|
+
'agt.f_steps': 'Pasos máximos',
|
|
5416
|
+
'agt.f_tokens': 'Tokens de salida máximos',
|
|
5417
|
+
'agt.f_rows': 'Filas máximas',
|
|
5418
|
+
'agt.f_timeout': 'Límite de tiempo',
|
|
5419
|
+
'agt.intro': 'Un agente responde en una región de asistente de IA y actúa solo mediante las herramientas que le dé: consultas SQL (solo lectura, con el rol de base de datos de la aplicación, así que se aplica la seguridad a nivel de fila), funciones PL/pgSQL, orígenes de datos REST, acciones JavaScript en el navegador y enlaces a páginas (pgkiln crea la URL y su suma de comprobación, solo para páginas que el usuario puede abrir). Una herramienta Retrieve da al agente las filas de una configuración de búsqueda que coinciden con un texto por significado (RAG), de nuevo con el rol de la aplicación. Lo que escriben los usuarios y los resultados de las herramientas van al servicio de IA del agente. {usage} lista cada llamada a herramienta.',
|
|
5420
|
+
'agt.agent_gone': 'El agente {name} ya no existe.',
|
|
5421
|
+
'agt.agent_exists': 'Ya existe un agente {name}.',
|
|
5422
|
+
'agt.no_rest_source': 'No hay origen de datos REST {name}.',
|
|
5423
|
+
'agt.no_search_config': 'No hay configuración de búsqueda {name} con origen de tabla o SQL.',
|
|
5424
|
+
'agt.no_page': 'No hay página {n}.',
|
|
5425
|
+
'agt.tool_gone': 'La herramienta {name} ya no existe.',
|
|
5426
|
+
'agt.tool_used': 'La herramienta {name} la usan {agents}: quítela antes de esos agentes.',
|
|
5427
|
+
// ------------------------------------------------------------ Data Reporter settings (sprint 164)
|
|
5428
|
+
'drep.static_id': 'Id estático',
|
|
5429
|
+
'drep.label': 'Etiqueta',
|
|
5430
|
+
'drep.description_shown_to_users': 'Descripción (visible para los usuarios)',
|
|
5431
|
+
'drep.app_builder_data_reporter': 'App Builder → Data Reporter',
|
|
5432
|
+
'drep.remove_this_data_source_users': 'Quitar este origen de datos (los informes de los usuarios sobre él dejan de funcionar)',
|
|
5433
|
+
'drep.offer': 'Ofrecer',
|
|
5434
|
+
'drep.column': 'Columna',
|
|
5435
|
+
'drep.format_mask': 'Máscara de formato',
|
|
5436
|
+
'drep.not_in_the_table': 'no está en la tabla',
|
|
5437
|
+
'drep.data_reporter_settings': 'Configuración del Data Reporter',
|
|
5438
|
+
'drep.signed_in_users_build_their': 'Los usuarios con sesión iniciada crean sus propios informes a partir de los orígenes de datos de abajo: eligen columnas ofrecidas, filtran, agrupan con totales, ordenan y dibujan un gráfico, y guardan informes en privado o compartidos. Los informes se ejecutan con el rol de base de datos de la aplicación, así que se aplican los permisos y la seguridad a nivel de fila.',
|
|
5439
|
+
'drep.reports': 'Informes',
|
|
5440
|
+
'drep.who_may_share_reports': 'Quién puede compartir informes',
|
|
5441
|
+
'drep.rows_per_page': 'Filas por página',
|
|
5442
|
+
'drep.who_may_build_and_save': 'Quién puede crear y guardar informes',
|
|
5443
|
+
'drep.others_only_run_shared_reports': 'Los demás solo ejecutan informes compartidos.',
|
|
5444
|
+
'drep.who_may_unpublish_and_delete': 'Quién puede retirar y eliminar informes de cualquiera',
|
|
5445
|
+
'drep.shared_reports_are_published_a': 'Los informes compartidos se publican: una URL estable, chinchetas',
|
|
5446
|
+
'drep.text_when_there_are_no': 'Texto cuando no hay filas',
|
|
5447
|
+
'drep.add_a_data_source': 'Añadir un origen de datos',
|
|
5448
|
+
'drep.table_or_view': 'Tabla o vista',
|
|
5449
|
+
'drep.all_columns_are_offered_at': 'Al principio se ofrecen todas las columnas (salvo las binarias); desmarque las que los usuarios no deben ver. Prefiera una vista que muestre exactamente sobre qué pueden informar los usuarios de negocio.',
|
|
5450
|
+
'drep.or_a_dataset_of_the': 'O un conjunto de datos del espacio de trabajo',
|
|
5451
|
+
'drep.save_data_reporter_settings': 'Guardar configuración del Data Reporter',
|
|
5452
|
+
'drep.the_dataset_s': 'los del conjunto de datos',
|
|
5453
|
+
'drep.no_data_found': 'No se encontraron datos',
|
|
5454
|
+
'drep.from_the_name': 'a partir del nombre',
|
|
5455
|
+
'drep.every_signed_in_user': 'Cualquier usuario con sesión iniciada',
|
|
5456
|
+
'drep.nobody_private_reports_only': 'Nadie (solo informes privados)',
|
|
5457
|
+
'drep.every_user': 'Cualquier usuario',
|
|
5458
|
+
'drep.nobody': 'Nadie',
|
|
5459
|
+
'drep.settings_saved': 'Configuración guardada.',
|
|
5460
|
+
'drep.choose_a_table_or_view': 'Elija una tabla o vista para el nuevo origen de datos.',
|
|
5461
|
+
'drep.choose_one_of_the_workspace': 'Elija uno de los conjuntos de datos del espacio de trabajo.',
|
|
5462
|
+
'drep.no_columns': 'El origen de datos {id} no ofrece columnas.',
|
|
5463
|
+
'drep.exists': 'Ya existe un origen de datos {id}.',
|
|
5464
|
+
'drep.dataset_note': 'Sus tablas, columnas, etiquetas, máscaras y filtro de filas son los del conjunto de datos: {link}.',
|
|
5465
|
+
'drep.aria_offer': 'Ofrecer {column}',
|
|
5466
|
+
'drep.aria_label': 'Etiqueta de {column}',
|
|
5467
|
+
'drep.aria_format': 'Máscara de formato de {column}',
|
|
5468
|
+
// ------------------------------------------------------------ Globalization (sprint 164)
|
|
5469
|
+
'glob.for_texts_pgkiln_derives_itself': 'Para textos que pgkiln deriva por sí mismo, como encabezados de columna a partir de nombres de columna (`hiredate` → «Hiredate»).',
|
|
5470
|
+
'glob.use_them_in_sql_with': 'Úselos en SQL con `meta.message(\'NAME\', param0, …)` (marcadores `%0`…`%9`) y en textos como `&APP_TEXT$NAME.`, como APEX_LANG.MESSAGE. Un mensaje con el nombre de un texto de pgkiln (p. ej. `login.title`, `report.no_data`) lo sustituye. Los idiomas que faltan recurren al idioma principal.',
|
|
5471
|
+
'glob.automatic_time_zone': 'Zona horaria automática',
|
|
5472
|
+
'glob.each_user_sees_times_in': 'Cada usuario ve las horas en su propia zona horaria: la del navegador (enviada una vez por sesión) o la que elija en Mi cuenta. Sin JavaScript se aplica la zona horaria de la aplicación (APEX: Automatic Time Zone).',
|
|
5473
|
+
'glob.shared_components': 'Componentes compartidos',
|
|
5474
|
+
'glob.none_yet': 'ninguno todavía',
|
|
5475
|
+
'glob.change_languages_in_settings': 'Cambiar idiomas en Configuración',
|
|
5476
|
+
'glob.give_translators_an_xliff_file': 'Dé a los traductores un archivo XLIFF (como en APEX) o un archivo CSV y luego impórtelo aquí. Los destinos vacíos se ignoran al importar.',
|
|
5477
|
+
'glob.file': 'Archivo',
|
|
5478
|
+
'glob.or_paste_xliff_csv': '…o pegue XLIFF / CSV',
|
|
5479
|
+
'glob.used_in': 'Usado en',
|
|
5480
|
+
'glob.save_translations': 'Guardar traducciones',
|
|
5481
|
+
'glob.add_a_text': 'Añadir un texto',
|
|
5482
|
+
'glob.add': 'Añadir',
|
|
5483
|
+
'glob.settings_globalization': 'Configuración → Globalización',
|
|
5484
|
+
'glob.name': 'Nombre',
|
|
5485
|
+
'glob.language': 'Idioma',
|
|
5486
|
+
'glob.text': 'Texto',
|
|
5487
|
+
'glob.save': 'Guardar',
|
|
5488
|
+
'glob.delete': 'Eliminar',
|
|
5489
|
+
'glob.no_text_messages': 'No hay mensajes de texto.',
|
|
5490
|
+
'glob.add_a_text_message': 'Añadir un mensaje de texto',
|
|
5491
|
+
'glob.add_message': 'Añadir mensaje',
|
|
5492
|
+
'glob.currency': 'Moneda',
|
|
5493
|
+
'glob.time_zone': 'Zona horaria',
|
|
5494
|
+
'glob.e_g_eur_empty_per': 'p. ej. EUR (vacío: por idioma)',
|
|
5495
|
+
'glob.iso_4217_code_for_l': 'Código ISO 4217 para L (símbolo) y C (código) en máscaras de formato numérico como FML999G990D00. Un mensaje de texto FORMAT.CURRENCY lo reemplaza por idioma.',
|
|
5496
|
+
'glob.e_g_greeting_or_login': 'p. ej. GREETING o login.title',
|
|
5497
|
+
'glob.hello_0': '¡Hola %0!',
|
|
5498
|
+
'glob.names_start_with_a_letter': 'Los nombres empiezan por una letra y contienen letras, dígitos, _ . $ o -.',
|
|
5499
|
+
'glob.queries_run_in_this_time': 'Las consultas se ejecutan en esta zona horaria (SET LOCAL timezone), así que los valores timestamp with time zone se muestran en ella.',
|
|
5500
|
+
'glob.text_message_saved': 'Mensaje de texto guardado.',
|
|
5501
|
+
'glob.text_message_deleted': 'Mensaje de texto eliminado.',
|
|
5502
|
+
'glob.currency_a_three_letter_iso': 'Moneda: un código ISO 4217 de tres letras como EUR o USD.',
|
|
5503
|
+
'glob.languages': 'Idiomas',
|
|
5504
|
+
'glob.export_and_import': 'Exportar e importar',
|
|
5505
|
+
'glob.translate': 'Traducir',
|
|
5506
|
+
'glob.text_messages': 'Mensajes de texto',
|
|
5507
|
+
'glob.app_builder': 'App Builder',
|
|
5508
|
+
'glob.globalization': 'Globalización',
|
|
5509
|
+
'glob.unknown_zone': 'Zona horaria desconocida «{zone}».',
|
|
5510
|
+
'glob.primary': 'Idioma principal: {lang}',
|
|
5511
|
+
'glob.derived': 'Idioma derivado de: {from}',
|
|
5512
|
+
'glob.from.browser': 'el navegador',
|
|
5513
|
+
'glob.from.user': 'la preferencia del usuario, luego el navegador',
|
|
5514
|
+
'glob.from.primary': 'siempre el idioma principal',
|
|
5515
|
+
'glob.translated_into': 'Traducido a: {langs}',
|
|
5516
|
+
'glob.builtin': 'Los textos propios de pgkiln (inicio de sesión, informes, mensajes) existen en {list} y {last}; reemplace cualquiera con un mensaje de texto del mismo nombre.',
|
|
5517
|
+
'glob.translate_into': 'Traducir a {lang}',
|
|
5518
|
+
'glob.aria_translation': 'Traducción de: {text}',
|
|
5519
|
+
'glob.text_lang': 'Texto ({lang})',
|
|
5520
|
+
'glob.translation_lang': 'Traducción ({lang})',
|
|
5521
|
+
'glob.add_lang_first': 'Añada primero un idioma traducido en {link} (por ejemplo {example}).',
|
|
5522
|
+
'glob.aria_text_of': 'Texto de {name} ({lang})',
|
|
5523
|
+
'glob.delete_confirm': '¿Eliminar {name} ({lang})?',
|
|
5524
|
+
'glob.import_failed': 'La importación falló: {error}',
|
|
5525
|
+
// ------------------------------------------------------------ Remote databases (sprint 164)
|
|
5526
|
+
'rdb.grant_to_the_applications_database': 'Conceder a los roles de base de datos de las aplicaciones',
|
|
5527
|
+
'rdb.no_application_has_a_database': 'Todavía ninguna aplicación tiene rol de base de datos (Configuración de la aplicación → Rol de base de datos).',
|
|
5528
|
+
'rdb.also_insert_update_and_delete': 'También INSERT, UPDATE y DELETE (si no, solo SELECT)',
|
|
5529
|
+
'rdb.test_the_connection': 'Probar la conexión',
|
|
5530
|
+
'rdb.cancel': 'Cancelar',
|
|
5531
|
+
'rdb.another_postgresql_database_s_tables': 'Las tablas de otra base de datos PostgreSQL como tablas foráneas (postgres_fdw) en un esquema local: regiones, informes, formularios y listas de valores las usan como las tablas propias de la aplicación, con su rol de base de datos y los permisos concedidos aquí.',
|
|
5532
|
+
'rdb.postgres_fdw_is_not_installed': 'postgres_fdw no está instalado en esta base de datos.',
|
|
5533
|
+
'rdb.create_extension_postgres_fdw': 'Crear la extensión postgres_fdw',
|
|
5534
|
+
'rdb.name': 'Nombre',
|
|
5535
|
+
'rdb.connection': 'Conexión',
|
|
5536
|
+
'rdb.local_schema': 'Esquema local',
|
|
5537
|
+
'rdb.tables': 'Tablas',
|
|
5538
|
+
'rdb.granted_to': 'Concedido a',
|
|
5539
|
+
'rdb.imported': 'Importado',
|
|
5540
|
+
'rdb.actions': 'Acciones',
|
|
5541
|
+
'rdb.edit': 'Editar',
|
|
5542
|
+
'rdb.import_again': 'Volver a importar',
|
|
5543
|
+
'rdb.delete': 'Eliminar',
|
|
5544
|
+
'rdb.no_remote_databases_yet': 'Todavía no hay bases de datos remotas.',
|
|
5545
|
+
'rdb.description': 'Descripción',
|
|
5546
|
+
'rdb.host': 'Host',
|
|
5547
|
+
'rdb.port': 'Puerto',
|
|
5548
|
+
'rdb.database': 'Base de datos',
|
|
5549
|
+
'rdb.user': 'Usuario',
|
|
5550
|
+
'rdb.password': 'Contraseña',
|
|
5551
|
+
'rdb.remote_schema': 'Esquema remoto',
|
|
5552
|
+
'rdb.a_static_id_e_g': 'Un id estático, p. ej. CRM. El servidor es pgkiln_rdb_<name>.',
|
|
5553
|
+
'rdb.as_the_database_server_reaches': 'Tal como la alcanza el servidor de base de datos (él hace la conexión, no pgkiln).',
|
|
5554
|
+
'rdb.a_user_of_the_remote': 'Un usuario de la base de datos remota: lo que pueda leer o cambiar allí es lo que pueden las aplicaciones.',
|
|
5555
|
+
'rdb.a_new_schema_here_for': 'Un esquema nuevo aquí para las tablas foráneas, p. ej. crm: las regiones consultan crm.<table>.',
|
|
5556
|
+
'rdb.add_a_remote_database': 'Añadir una base de datos remota',
|
|
5557
|
+
'rdb.kept_by_postgresql_in_the': 'PostgreSQL la guarda en el user mapping y nunca se muestra; escriba una nueva para reemplazarla.',
|
|
5558
|
+
'rdb.kept_by_postgresql_in_the_2': 'PostgreSQL la guarda en el user mapping (pgkiln nunca la guarda).',
|
|
5559
|
+
'rdb.save_and_import_again': 'Guardar y volver a importar',
|
|
5560
|
+
'rdb.add_and_import': 'Añadir e importar',
|
|
5561
|
+
'rdb.the_test_failed': 'La prueba falló',
|
|
5562
|
+
'rdb.nothing_was_changed': 'No se cambió nada',
|
|
5563
|
+
'rdb.the_postgres_fdw_extension_is': 'La extensión postgres_fdw está instalada.',
|
|
5564
|
+
'rdb.no_such_remote_database': 'No existe esa base de datos remota.',
|
|
5565
|
+
'rdb.the_password_has_at_most': 'La contraseña tiene como máximo 1000 caracteres.',
|
|
5566
|
+
'rdb.renaming_it_or_moving_it': 'Renombrarla o moverla a otro esquema local requiere de nuevo la contraseña.',
|
|
5567
|
+
'rdb.rolled_back': 'revertido',
|
|
5568
|
+
'rdb.remote_databases': 'Bases de datos remotas',
|
|
5569
|
+
'rdb.app_builder': 'App Builder',
|
|
5570
|
+
'rdb.workspace_utilities': 'Utilidades del espacio de trabajo',
|
|
5571
|
+
'rdb.title': 'Bases de datos remotas',
|
|
5572
|
+
'rdb.edit_named': 'Editar {name}',
|
|
5573
|
+
'rdb.tables_help': 'Tablas y vistas remotas que importar, separadas por comas (como máximo {n}); vacío: todas las del esquema remoto.',
|
|
5574
|
+
'rdb.fdw_superuser': 'Un superusuario ejecuta {create} y {grant} el rol propietario de pgkiln.',
|
|
5575
|
+
'rdb.fdw_missing': 'El servidor necesita el paquete contrib de PostgreSQL; luego un superusuario ejecuta {create} y {grant} el rol propietario de pgkiln.',
|
|
5576
|
+
'rdb.delete_confirm': '¿Eliminar {name}? Su esquema {schema} y sus tablas foráneas se eliminan.',
|
|
5577
|
+
'rdb.test_ok': 'La conexión funciona: se importarían {n} tabla(s) en {schema}. No se guardó nada.',
|
|
5578
|
+
'rdb.name_taken': 'Ya existe una base de datos remota {name}.',
|
|
5579
|
+
'rdb.schema_taken': 'Otra base de datos remota usa el esquema {schema}.',
|
|
5580
|
+
// ------------------------------------------------------------ Debug messages and installation log (sprint 164)
|
|
5581
|
+
'diag.no_runs_recorded_yet_runs': 'Todavía no hay ejecuciones registradas: se registran desde la versión 0.25 (cada `db:migrate` o `pgkiln migrate` que aplica o falla un archivo). Las migraciones aplicadas de abajo muestran cuándo se aplicó cada archivo.',
|
|
5582
|
+
'diag.save': 'Guardar',
|
|
5583
|
+
'diag.page': 'Página',
|
|
5584
|
+
'diag.user': 'Usuario',
|
|
5585
|
+
'diag.only_with_errors_or_warnings': 'Solo con errores o advertencias',
|
|
5586
|
+
'diag.when': 'Cuándo',
|
|
5587
|
+
'diag.request': 'Solicitud',
|
|
5588
|
+
'diag.status': 'Estado',
|
|
5589
|
+
'diag.entries': 'Entradas',
|
|
5590
|
+
'diag.view': 'Ver',
|
|
5591
|
+
'diag.older_page_views': 'Vistas de página anteriores',
|
|
5592
|
+
'diag.back_to_activity': 'Volver a Actividad',
|
|
5593
|
+
'diag.total_time': 'tiempo total',
|
|
5594
|
+
'diag.http_status': 'Estado HTTP',
|
|
5595
|
+
'diag.previous': '◂ Anterior',
|
|
5596
|
+
'diag.all_page_views': 'Todas las vistas de página',
|
|
5597
|
+
'diag.next': 'Siguiente ▸',
|
|
5598
|
+
'diag.elapsed_ms': 'Transcurrido ms',
|
|
5599
|
+
'diag.duration_ms': 'Duración ms',
|
|
5600
|
+
'diag.until_next': 'Hasta el siguiente',
|
|
5601
|
+
'diag.level': 'Nivel',
|
|
5602
|
+
'diag.component': 'Componente',
|
|
5603
|
+
'diag.message': 'Mensaje',
|
|
5604
|
+
'diag.installation': 'Instalación',
|
|
5605
|
+
'diag.only_administrators_see_the_installation': 'Solo los administradores ven el registro de instalación.',
|
|
5606
|
+
'diag.pgkiln_version_of_this_server': 'versión de pgkiln de este servidor',
|
|
5607
|
+
'diag.migrations_not_applied': 'migraciones no aplicadas',
|
|
5608
|
+
'diag.started': 'Iniciado',
|
|
5609
|
+
'diag.kind': 'Tipo',
|
|
5610
|
+
'diag.version': 'Versión',
|
|
5611
|
+
'diag.files': 'Archivos',
|
|
5612
|
+
'diag.applied': 'Aplicado',
|
|
5613
|
+
'diag.by': 'Por',
|
|
5614
|
+
'diag.file': 'Archivo',
|
|
5615
|
+
'diag.filter': 'Filtrar',
|
|
5616
|
+
'diag.delete_all_debug_messages': 'Eliminar todos los mensajes de depuración',
|
|
5617
|
+
'diag.debug_level': 'Nivel de depuración',
|
|
5618
|
+
'diag.keep_messages_for': 'Conservar mensajes durante',
|
|
5619
|
+
'diag.debug_messages_off': 'Mensajes de depuración desactivados.',
|
|
5620
|
+
'diag.level_9_records_posted_item': 'El nivel 9 registra los valores de elementos enviados (nunca los de elementos de contraseña).',
|
|
5621
|
+
'diag.choose_a_debug_level_and': 'Elija un nivel de depuración y una retención de 1 a 90 días.',
|
|
5622
|
+
'diag.page_views': 'Vistas de página',
|
|
5623
|
+
'diag.install_and_upgrade_runs': 'Ejecuciones de instalación y actualización',
|
|
5624
|
+
'diag.applied_migrations': 'Migraciones aplicadas',
|
|
5625
|
+
'diag.example_and_seed_scripts': 'Scripts de ejemplo y de datos iniciales',
|
|
5626
|
+
'diag.app_builder': 'App Builder',
|
|
5627
|
+
'diag.activity': 'Actividad',
|
|
5628
|
+
'diag.debug_messages': 'Mensajes de depuración',
|
|
5629
|
+
'diag.workspace_utilities': 'Utilidades del espacio de trabajo',
|
|
5630
|
+
'diag.on': '{state}: cada solicitud de esta aplicación registra sus pasos con tiempos, y el SQL puede añadir mensajes con {fn}. Esto cuesta tiempo y espacio: desactívelo cuando termine.',
|
|
5631
|
+
'diag.on_state': 'Los mensajes de depuración están activados (nivel {level})',
|
|
5632
|
+
'diag.off': 'Los mensajes de depuración están desactivados: las solicitudes no registran nada y {fn} vuelve al instante. Elija un nivel para registrar las solicitudes de esta aplicación.',
|
|
5633
|
+
'diag.delete_confirm': '¿Eliminar todos los mensajes de depuración de {app}?',
|
|
5634
|
+
'diag.title': 'Mensajes de depuración · {app}',
|
|
5635
|
+
'diag.page_view': 'Vista de página {id}',
|
|
5636
|
+
'diag.view_title': 'Depuración {id} · {app}',
|
|
5637
|
+
'diag.on_flash': 'Mensajes de depuración activados (nivel {level}).',
|
|
5638
|
+
'diag.applied_n': 'migraciones aplicadas',
|
|
5639
|
+
'diag.applied_latest': 'migraciones aplicadas, la última {name}',
|
|
5640
|
+
'diag.missing': 'A esta base de datos le faltan {n} migraciones de este servidor ({list}). Ejecute {npm} o {cli}.',
|
|
5641
|
+
'diag.missing_1': 'A esta base de datos le falta 1 migración de este servidor ({list}). Ejecute {npm} o {cli}.',
|
|
5642
|
+
// ------------------------------------------------------------ Login page and two-factor settings (sprint 164)
|
|
5643
|
+
'lgp.not_offered_yet': 'Todavía no se ofrece:',
|
|
5644
|
+
'lgp.login_page': 'Página de inicio de sesión',
|
|
5645
|
+
'lgp.login': 'Inicio de sesión',
|
|
5646
|
+
'lgp.minimal': 'Mínima',
|
|
5647
|
+
'lgp.create_a_login_page': 'Crear una página de inicio de sesión',
|
|
5648
|
+
'lgp.offer_forgot_password': 'Ofrecer «¿Olvidó la contraseña?»',
|
|
5649
|
+
'lgp.second_step': 'Segundo paso',
|
|
5650
|
+
'lgp.my_account': 'Mi cuenta',
|
|
5651
|
+
'lgp.not_available_yet': 'Todavía no disponible:',
|
|
5652
|
+
'lgp.required_for_roles': 'Obligatorio para los roles',
|
|
5653
|
+
'lgp.required_for_some_roles': 'Obligatorio para algunos roles',
|
|
5654
|
+
'lgp.offer_a_code_by_e': 'Ofrecer un código por correo',
|
|
5655
|
+
'lgp.multi_factor_sign_in': 'Inicio de sesión multifactor',
|
|
5656
|
+
'lgp.second_step_within_minutes': 'Segundo paso en (minutos)',
|
|
5657
|
+
'lgp.admin_manager': 'admin, manager',
|
|
5658
|
+
'lgp.the_built_in_sign_in': '- la página de inicio de sesión integrada -',
|
|
5659
|
+
'lgp.off': 'Desactivado',
|
|
5660
|
+
'lgp.optional_users_may_add_an': 'Opcional (los usuarios pueden añadir una app)',
|
|
5661
|
+
'lgp.required': 'Obligatorio',
|
|
5662
|
+
'lgp.two_factor_sign_in_a': 'Inicio de sesión en dos pasos: un nombre de rol es demasiado largo.',
|
|
5663
|
+
'lgp.two_factor_sign_in_name': 'Inicio de sesión en dos pasos: indique los roles que deben usarlo.',
|
|
5664
|
+
'lgp.two_factor_sign_in_the': 'Inicio de sesión en dos pasos: el servidor necesita PGKILN_SECRET_KEY antes de poder exigirlo.',
|
|
5665
|
+
'lgp.requires_signin': '{page} (requiere inicio de sesión: no utilizable)',
|
|
5666
|
+
'lgp.page_help': 'Una página pública con una región {login} (APEX: la página de inicio de sesión); la plantilla de página {minimal} oculta la cabecera y la navegación.',
|
|
5667
|
+
'lgp.reset_help': 'Los usuarios con contraseña y dirección de correo en el directorio de usuarios reciben un enlace de un solo uso, válido 30 minutos, para elegir una contraseña nueva. Solo para las contraseñas propias del directorio de usuarios.',
|
|
5668
|
+
'lgp.sent_through': 'Se envía con el servicio de correo {service} como {from}.',
|
|
5669
|
+
'lgp.mfa_help': 'Tras la contraseña o un directorio LDAP: un código de una app de autenticación, una passkey o un código de recuperación, añadidos en {account} o al iniciar sesión.',
|
|
5670
|
+
'lgp.needs_key': '{na} el servidor necesita {key} para guardar los secretos de las apps.',
|
|
5671
|
+
'lgp.roles_help': 'Con {some}: los usuarios con uno de estos roles deben usarlo, los demás pueden.',
|
|
5672
|
+
'lgp.email_help': 'Los usuarios que ya tienen una app o una passkey pueden recibir un código de un solo uso por correo (válido {minutes} minutos, como máximo {per_hour} por hora); nunca como su único factor.',
|
|
5673
|
+
'lgp.passkeys_note': 'Las passkeys necesitan la aplicación en un nombre de host, no en una dirección IP. Los proveedores de identidad piden su propio segundo factor (vea {mfa} del proveedor). Para volver a pedirlo antes de que se abra una página (step-up), dé a su esquema de autorización {within} en Componentes compartidos.',
|
|
5674
|
+
'lgp.no_page': 'Página de inicio de sesión: no hay página {n}.',
|
|
5675
|
+
'lgp.created': 'Página {n} «Login» creada y establecida como página de inicio de sesión. Añada regiones alrededor del formulario de inicio de sesión en el Page Designer.',
|
|
5676
|
+
// ------------------------------------------------------------ Create page wizards (sprint 164)
|
|
5677
|
+
'wiz.kind.report_form': 'Informe y formulario',
|
|
5678
|
+
'wiz.kind_help.report_form': 'Un informe interactivo y un formulario modal para crear, actualizar y eliminar.',
|
|
5679
|
+
'wiz.kind.grid': 'Cuadrícula interactiva',
|
|
5680
|
+
'wiz.kind_help.grid': 'Una página con una cuadrícula editable.',
|
|
5681
|
+
'wiz.kind.form': 'Formulario',
|
|
5682
|
+
'wiz.kind_help.form': 'Un formulario para una fila: crear, actualizar y eliminar, y volver a la página que elija.',
|
|
5683
|
+
'wiz.kind.cards': 'Tarjetas',
|
|
5684
|
+
'wiz.kind_help.cards': 'Una tarjeta por fila con título, subtítulo, cuerpo e insignia, opcionalmente enlazada a un formulario.',
|
|
5685
|
+
'wiz.kind.calendar': 'Calendario',
|
|
5686
|
+
'wiz.kind_help.calendar': 'Filas con una fecha como eventos en vistas de mes, semana, día y lista.',
|
|
5687
|
+
'wiz.kind.chart': 'Gráfico',
|
|
5688
|
+
'wiz.kind_help.chart': 'El número de filas, o una suma, media, mínimo o máximo, por etiqueta.',
|
|
5689
|
+
'wiz.kind.map': 'Mapa',
|
|
5690
|
+
'wiz.kind_help.map': 'Filas con una posición como marcadores en un mapa, con una lista filtrada por la zona del mapa.',
|
|
5691
|
+
'wiz.kind.facets': 'Búsqueda por facetas',
|
|
5692
|
+
'wiz.kind_help.facets': 'Un informe con un panel de filtros: valores con recuentos, rangos y un campo de búsqueda.',
|
|
5693
|
+
'wiz.kind.master_detail': 'Maestro-detalle',
|
|
5694
|
+
'wiz.kind_help.master_detail': 'Una cuadrícula de la tabla y, debajo, una cuadrícula editable con los detalles de la fila seleccionada.',
|
|
5695
|
+
'wiz.kind.report': 'Informe interactivo',
|
|
5696
|
+
'wiz.kind_help.report': 'Un informe interactivo de la tabla en su propia página, opcionalmente con una página de formulario modal.',
|
|
5697
|
+
'wiz.kind.smart_filters': 'Filtros inteligentes',
|
|
5698
|
+
'wiz.kind_help.smart_filters': 'Un informe interactivo con un campo de búsqueda encima que sugiere filtros (chips) a partir de las columnas.',
|
|
5699
|
+
'wiz.kind.search': 'Página de búsqueda',
|
|
5700
|
+
'wiz.kind_help.search': 'Una región de búsqueda sobre las configuraciones de búsqueda de la aplicación, o una nueva sobre una tabla.',
|
|
5701
|
+
'wiz.kind.data_load': 'Carga de datos',
|
|
5702
|
+
'wiz.kind_help.data_load': 'Una definición de carga de datos para la tabla y una página donde los usuarios suben un archivo CSV, Excel, JSON o XML.',
|
|
5703
|
+
'wiz.kind.tree': 'Árbol',
|
|
5704
|
+
'wiz.kind_help.tree': 'Las filas como árbol: un id, un padre (de una clave foránea a la propia tabla) y una etiqueta.',
|
|
5705
|
+
'wiz.kind.timeline': 'Línea de tiempo',
|
|
5706
|
+
'wiz.kind_help.timeline': 'Filas como eventos en una línea vertical: cuándo, quién, un título y un texto (componente de plantilla Timeline).',
|
|
5707
|
+
'wiz.kind.media_list': 'Lista multimedia',
|
|
5708
|
+
'wiz.kind_help.media_list': 'Filas con iniciales, un título, una descripción y una insignia (componente de plantilla Media list).',
|
|
5709
|
+
'wiz.kind.content_row': 'Fila de contenido',
|
|
5710
|
+
'wiz.kind_help.content_row': 'Filas con iniciales, un título y una descripción, y a la derecha un texto secundario y una insignia (componente de plantilla Content row).',
|
|
5711
|
+
'wiz.kind.comments': 'Comentarios',
|
|
5712
|
+
'wiz.kind_help.comments': 'Filas como conversación: quién escribió qué y cuándo (componente de plantilla Comments).',
|
|
5713
|
+
'wiz.kind.dashboard': 'Panel',
|
|
5714
|
+
'wiz.kind_help.dashboard': 'Gráficos de las tablas de la aplicación, elegidos a partir de los datos como en el panel de una aplicación nueva.',
|
|
5715
|
+
'wiz.kind.wizard': 'Asistente',
|
|
5716
|
+
'wiz.kind_help.wizard': 'Un formulario en varios pasos, una página por paso con lista de progreso, Anterior y Siguiente; Finalizar añade la fila.',
|
|
5717
|
+
'wiz.kind.tasks': 'Lista unificada de tareas',
|
|
5718
|
+
'wiz.kind_help.tasks': 'Las tareas de aprobación y de acción del usuario conectado (una región de lista de tareas).',
|
|
5719
|
+
'wiz.kind.workflows': 'Consola de flujos de trabajo',
|
|
5720
|
+
'wiz.kind_help.workflows': 'Los flujos de trabajo que el usuario inició o administra, con su estado e historial.',
|
|
5721
|
+
'wiz.kind_on': '{kind} sobre {table}',
|
|
5722
|
+
'wiz.search_configurations': 'Configuraciones de búsqueda',
|
|
5723
|
+
'wiz.shared_components_search_configurations': 'Componentes compartidos → Configuraciones de búsqueda',
|
|
5724
|
+
'wiz.tasks_come_from_task_definitions': 'Las tareas provienen de definiciones de tareas (Componentes compartidos → Definiciones de tareas) y de aprobaciones iniciadas en procesos o flujos de trabajo.',
|
|
5725
|
+
'wiz.tables': 'Tablas',
|
|
5726
|
+
'wiz.a_chart_per_table_at': 'Un gráfico por tabla (seis como máximo) de las filas por fila padre o por valor repetido, leído de los datos; las tablas con seguridad a nivel de fila se omiten.',
|
|
5727
|
+
'wiz.the_application_s_database_role': 'El rol de base de datos de la aplicación no puede leer ninguna tabla.',
|
|
5728
|
+
'wiz.cancel': 'Cancelar',
|
|
5729
|
+
'wiz.create_page': 'Crear página',
|
|
5730
|
+
'wiz.form_page': 'Página de formulario',
|
|
5731
|
+
'wiz.page_mode': 'Modo de página',
|
|
5732
|
+
'wiz.after_saving_or_cancelling_go': 'Tras guardar o cancelar, ir a la página',
|
|
5733
|
+
'wiz.title': 'Título',
|
|
5734
|
+
'wiz.subtitle': 'Subtítulo',
|
|
5735
|
+
'wiz.body': 'Cuerpo',
|
|
5736
|
+
'wiz.badge': 'Insignia',
|
|
5737
|
+
'wiz.start_date': 'Fecha de inicio',
|
|
5738
|
+
'wiz.end_date': 'Fecha de fin',
|
|
5739
|
+
'wiz.event_title': 'Título del evento',
|
|
5740
|
+
'wiz.drag_and_drop': 'Arrastrar y soltar',
|
|
5741
|
+
'wiz.chart_type': 'Tipo de gráfico',
|
|
5742
|
+
'wiz.label_one_bar_slice_or': 'Etiqueta (una barra, porción o punto por valor)',
|
|
5743
|
+
'wiz.value': 'Valor',
|
|
5744
|
+
'wiz.of_column': 'De la columna',
|
|
5745
|
+
'wiz.position': 'Posición',
|
|
5746
|
+
'wiz.latitude': 'Latitud',
|
|
5747
|
+
'wiz.longitude': 'Longitud',
|
|
5748
|
+
'wiz.popup_title': 'Título de la ventana emergente',
|
|
5749
|
+
'wiz.popup_text': 'Texto de la ventana emergente',
|
|
5750
|
+
'wiz.a_list_below_the_map': 'Una lista debajo del mapa',
|
|
5751
|
+
'wiz.a_search_field_above_the': 'Un campo de búsqueda encima de las facetas',
|
|
5752
|
+
'wiz.node_id': 'Id del nodo',
|
|
5753
|
+
'wiz.parent': 'Padre',
|
|
5754
|
+
'wiz.label': 'Etiqueta',
|
|
5755
|
+
'wiz.levels_open_at_first': 'Niveles abiertos al principio',
|
|
5756
|
+
'wiz.when': 'Cuándo',
|
|
5757
|
+
'wiz.who': 'Quién',
|
|
5758
|
+
'wiz.text': 'Texto',
|
|
5759
|
+
'wiz.description': 'Descripción',
|
|
5760
|
+
'wiz.secondary_text_on_the_right': 'Texto secundario (a la derecha)',
|
|
5761
|
+
'wiz.who_wrote_it': 'Quién lo escribió',
|
|
5762
|
+
'wiz.comment': 'Comentario',
|
|
5763
|
+
'wiz.data_load_definition': 'Definición de carga de datos',
|
|
5764
|
+
'wiz.mode': 'Modo',
|
|
5765
|
+
'wiz.skip_rows_with_errors': 'Omitir filas con errores',
|
|
5766
|
+
'wiz.steps': 'Pasos',
|
|
5767
|
+
'wiz.after_finish_or_cancel_go': 'Tras Finalizar o Cancelar, ir a la página',
|
|
5768
|
+
'wiz.and_a_new_configuration_on': 'Y una configuración nueva sobre',
|
|
5769
|
+
'wiz.show': 'Mostrar',
|
|
5770
|
+
'wiz.also_completed_tasks': 'También las tareas completadas',
|
|
5771
|
+
'wiz.detail_table': 'Tabla de detalle',
|
|
5772
|
+
'wiz.page_number': 'Número de página',
|
|
5773
|
+
'wiz.name': 'Nombre',
|
|
5774
|
+
'wiz.menu_icon': 'Icono del menú',
|
|
5775
|
+
'wiz.add_a_navigation_entry': 'Añadir una entrada de navegación',
|
|
5776
|
+
'wiz.the_modal_form_page_opened': 'La página de formulario modal que se abre desde el informe.',
|
|
5777
|
+
'wiz.cancel_create_apply_changes_and': 'Cancelar, Crear, Aplicar cambios y Eliminar vuelven allí.',
|
|
5778
|
+
'wiz.one_page_per_step_numbered': 'Una página por paso, numerada a partir del número de página; las columnas se reparten en orden.',
|
|
5779
|
+
'wiz.the_page_title_and_the': 'El título de la página y la entrada de navegación.',
|
|
5780
|
+
'wiz.my_tasks_to_act_on': 'Mis tareas (para actuar o reclamar)',
|
|
5781
|
+
'wiz.tasks_i_requested': 'Tareas que solicité',
|
|
5782
|
+
'wiz.tasks_i_administer': 'Tareas que administro',
|
|
5783
|
+
'wiz.count': 'Recuento',
|
|
5784
|
+
'wiz.sum': 'Suma',
|
|
5785
|
+
'wiz.average': 'Media',
|
|
5786
|
+
'wiz.minimum': 'Mínimo',
|
|
5787
|
+
'wiz.maximum': 'Máximo',
|
|
5788
|
+
'wiz.none': '- ninguna -',
|
|
5789
|
+
'wiz.normal_page': 'Página normal',
|
|
5790
|
+
'wiz.modal_dialog': 'Diálogo modal',
|
|
5791
|
+
'wiz.append_add_the_rows': 'Anexar: añadir las filas',
|
|
5792
|
+
'wiz.merge_update_rows_with_the': 'Combinar: actualizar las filas con la misma clave, añadir las demás',
|
|
5793
|
+
'wiz.replace_delete_all_rows_first': 'Reemplazar: eliminar primero todas las filas',
|
|
5794
|
+
'wiz.the_workflows_the_user_started': 'Los flujos de trabajo que inició el usuario',
|
|
5795
|
+
'wiz.the_workflows_the_user_administers': 'Los flujos de trabajo que administra el usuario',
|
|
5796
|
+
'wiz.choose_a_table_or_view': 'Elija una tabla o vista.',
|
|
5797
|
+
'wiz.choose_a_page_type': 'Elija un tipo de página.',
|
|
5798
|
+
'wiz.the_proposals_come_from_the': 'Las propuestas salen de las columnas, la clave y las claves foráneas de la tabla; cámbielas abajo.',
|
|
5799
|
+
'wiz.users_who_see_the_calendar': 'Los usuarios que ven el calendario pueden mover eventos a otro día u hora (un UPDATE de las columnas de inicio y fin con el rol de la app; se aplica la seguridad a nivel de fila). Defina una autorización en "move_authz" de la región para limitarlo.',
|
|
5800
|
+
'wiz.count_empty_counts_the_rows': 'Recuento: vacío cuenta las filas. Suma, media, mínimo y máximo necesitan una columna numérica.',
|
|
5801
|
+
'wiz.an_interactive_report_of_the': 'Un informe interactivo de las mismas filas; al mover el mapa se ofrece "Mostrar esta zona en la lista".',
|
|
5802
|
+
'wiz.what_identifies_a_node_usually': 'Lo que identifica un nodo: normalmente la clave primaria.',
|
|
5803
|
+
'wiz.the_column_with_the_parent': 'La columna con el id del nodo padre; se propone a partir de una clave foránea a la propia tabla. Las filas cuyo padre no está en la tabla son el nivel superior.',
|
|
5804
|
+
'wiz.the_events_come_newest_first': 'Los eventos aparecen del más reciente al más antiguo.',
|
|
5805
|
+
'wiz.its_first_two_letters_are': 'Sus dos primeras letras son las iniciales.',
|
|
5806
|
+
'wiz.the_newest_first': 'Los más recientes primero.',
|
|
5807
|
+
'wiz.load_the_good_rows_and': 'Cargar las filas correctas y listar las demás; si no, no se carga nada cuando falla una fila.',
|
|
5808
|
+
'wiz.searches_the_table_s_text': 'Busca en las columnas de texto de la tabla y muestra su columna de nombre (o el primer texto) como título del resultado.',
|
|
5809
|
+
'wiz.tables_with_a_foreign_key': 'Tablas con una clave foránea a esta tabla. Al seleccionar una fila maestra se muestran sus detalles; las filas de detalle nuevas reciben la clave del maestro.',
|
|
5810
|
+
'wiz.enter_a_page_number': 'Introduzca un número de página.',
|
|
5811
|
+
'wiz.this_application_does_not_exist': 'Esta aplicación no existe.',
|
|
5812
|
+
'wiz.enter_the_form_page_number': 'Introduzca el número de la página de formulario.',
|
|
5813
|
+
'wiz.choose_at_least_one_table': 'Elija al menos una tabla que la aplicación pueda leer.',
|
|
5814
|
+
'wiz.none_of_these_tables_has': 'Ninguna de estas tablas tiene una columna que merezca un gráfico (una clave foránea o valores que se repiten).',
|
|
5815
|
+
'wiz.app_builder': 'App Builder',
|
|
5816
|
+
'wiz.col_columns': 'Columnas',
|
|
5817
|
+
'wiz.col_report_columns': 'Columnas del informe',
|
|
5818
|
+
'wiz.col_facets': 'Facetas',
|
|
5819
|
+
'wiz.col_filters': 'Filtros (sugeridos en el campo de búsqueda)',
|
|
5820
|
+
'wiz.note_required': ', obligatoria: siempre incluida',
|
|
5821
|
+
'wiz.note_select_list': ', una lista de selección de {table}',
|
|
5822
|
+
'wiz.note_key': ', clave: siempre incluida',
|
|
5823
|
+
'wiz.note_with': ', con {col}',
|
|
5824
|
+
'wiz.note_values_of': ': valores de {col}',
|
|
5825
|
+
'wiz.note_range': ': un rango (desde / hasta)',
|
|
5826
|
+
'wiz.note_counts': ': valores con recuentos',
|
|
5827
|
+
'wiz.note_ranges': ': rangos',
|
|
5828
|
+
'wiz.note_values': ': valores',
|
|
5829
|
+
'wiz.form_page_ph': 'p. ej. {n} (vacío: sin formulario)',
|
|
5830
|
+
'wiz.return_home': 'vacío: la página de inicio ({n})',
|
|
5831
|
+
'wiz.return_this': 'vacío: esta página',
|
|
5832
|
+
'wiz.form_map': 'Una página de formulario modal, enlazada desde las ventanas emergentes y la lista.',
|
|
5833
|
+
'wiz.form_rows': 'Una página de formulario modal, enlazada desde cada fila, y un botón Crear.',
|
|
5834
|
+
'wiz.form_search': 'Con una tabla: una página de formulario modal a la que enlaza cada resultado.',
|
|
5835
|
+
'wiz.def_help': 'En mayúsculas, p. ej. ORDERS_LOAD. Una definición nueva para {table}; una existente con ese nombre se usa tal cual.',
|
|
5836
|
+
'wiz.def_help_has': 'En mayúsculas, p. ej. ORDERS_LOAD. Una definición nueva para {table}; una existente con ese nombre se usa tal cual (esta aplicación tiene {list}).',
|
|
5837
|
+
'wiz.the_table': 'la tabla',
|
|
5838
|
+
'wiz.no_search_configs': 'Esta aplicación aún no tiene configuraciones de búsqueda ({link}): elija abajo una tabla en la que buscar.',
|
|
5839
|
+
'wiz.no_fk': 'Ninguna tabla tiene una clave foránea a {table}: una página maestro-detalle necesita una.',
|
|
5840
|
+
'wiz.back_choose': 'Volver para elegir otro tipo',
|
|
5841
|
+
'wiz.back_choose_table': 'Volver para elegir otro tipo u otra tabla',
|
|
5842
|
+
'wiz.no_pk': '{table} no tiene una clave primaria de una sola columna, que este tipo de página necesita.',
|
|
5843
|
+
'wiz.role_read_only': 'El rol de base de datos {role} de la aplicación puede leer {table} pero no modificarla: concédale los privilegios que necesita la página ({privs}).',
|
|
5844
|
+
'wiz.role_no_access': 'El rol de base de datos {role} de la aplicación no tiene acceso a {table}: concédale los privilegios que necesita la página ({privs}).',
|
|
5845
|
+
'wiz.privs_merge': 'select, insert, update, delete para combinar o reemplazar',
|
|
5846
|
+
'wiz.page_title': 'Crear página · {app}',
|
|
5847
|
+
'wiz.created_pages': 'Páginas {list} creadas.',
|
|
5848
|
+
'wiz.created_page': 'Página {n} creada.',
|
|
5849
|
+
'wiz.created_pages_for': 'Páginas {list} creadas para {table}. Asegúrese de que el rol de base de datos de la app tenga privilegios sobre ella.',
|
|
5850
|
+
'wiz.created_page_for': 'Página {n} creada para {table}. Asegúrese de que el rol de base de datos de la app tenga privilegios sobre ella.',
|
|
5851
|
+
// ------------------------------------------------------------ Create page and copy page (sprint 164)
|
|
5852
|
+
'cpg.blank_page': 'Página en blanco',
|
|
5853
|
+
'cpg.an_empty_page_to_build': 'Una página vacía para construir en el Page Designer.',
|
|
5854
|
+
'cpg.back': 'Volver',
|
|
5855
|
+
'cpg.create_page': 'Crear página',
|
|
5856
|
+
'cpg.next': 'Siguiente',
|
|
5857
|
+
'cpg.choose_a_page_type_types': 'Elija un tipo de página. Los tipos sobre una tabla la piden a continuación; cada tipo propone sus ajustes y abre la página nueva en el Page Designer.',
|
|
5858
|
+
'cpg.create_pages_with_ai': 'Crear páginas con IA',
|
|
5859
|
+
'cpg.describe_the_pages_in_your': 'Describa las páginas con sus propias palabras; revise las propuestas antes de que se creen.',
|
|
5860
|
+
'cpg.features_add_pages_and_settings': 'Las funciones añaden páginas y ajustes a la aplicación. Cada una indica lo que añade antes de crear nada; una función instalada aparece atenuada.',
|
|
5861
|
+
'cpg.installed': 'Instalada',
|
|
5862
|
+
'cpg.not_available': 'No disponible',
|
|
5863
|
+
'cpg.shared_components': 'Componentes compartidos',
|
|
5864
|
+
'cpg.kind': 'Tipo',
|
|
5865
|
+
'cpg.name': 'Nombre',
|
|
5866
|
+
'cpg.in_this_application': 'En esta aplicación',
|
|
5867
|
+
'cpg.the_page_uses_no_shared': 'La página no usa componentes compartidos.',
|
|
5868
|
+
'cpg.copy_page': 'Copiar página',
|
|
5869
|
+
'cpg.copy_a_page_of_this': 'Copie una página de esta aplicación u otra del espacio de trabajo, con un número y un nombre nuevos. Los componentes compartidos que usa (listas de valores, esquemas de autorización, listas…) se asignan a los de esta aplicación o se copian.',
|
|
5870
|
+
'cpg.page_number': 'Número de página',
|
|
5871
|
+
'cpg.page_mode': 'Modo de página',
|
|
5872
|
+
'cpg.breadcrumb_parent': 'Padre en la ruta de navegación',
|
|
5873
|
+
'cpg.table_or_view': 'Tabla o vista',
|
|
5874
|
+
'cpg.new_page_number': 'Nuevo número de página',
|
|
5875
|
+
'cpg.copy_from_application': 'Copiar de la aplicación',
|
|
5876
|
+
'cpg.component': 'Componente',
|
|
5877
|
+
'cpg.feature': 'Función',
|
|
5878
|
+
'cpg.copy': 'Copia',
|
|
5879
|
+
'cpg.normal_page': 'Página normal',
|
|
5880
|
+
'cpg.modal_dialog': 'Diálogo modal',
|
|
5881
|
+
'cpg.copy_it_into_this_application': 'Copiarlo en esta aplicación',
|
|
5882
|
+
'cpg.in_the_same_application_they': 'En la misma aplicación se quedan como están, o apuntan a otro del mismo tipo.',
|
|
5883
|
+
'cpg.use_one_of_this_application': 'Use uno de esta aplicación o cópielo de la otra aplicación.',
|
|
5884
|
+
'cpg.choose_an_application_of_this': 'Elija una aplicación de este espacio de trabajo.',
|
|
5885
|
+
'cpg.enter_a_page_number': 'Introduzca un número de página.',
|
|
5886
|
+
'cpg.enter_a_name': 'Introduzca un nombre.',
|
|
5887
|
+
'cpg.create_page_as_copy': 'Crear página como copia',
|
|
5888
|
+
'cpg.app_builder': 'App Builder',
|
|
5889
|
+
'cpg.page_title': 'Crear página · {app}',
|
|
5890
|
+
'cpg.copy_title': 'Copiar página · {app}',
|
|
5891
|
+
'cpg.page_of': 'Página de {app}',
|
|
5892
|
+
'cpg.use_name': 'Usar {name}',
|
|
5893
|
+
'cpg.copy_intro': 'Página {n} {name} de {app}: sus regiones, elementos, botones, acciones dinámicas, validaciones, procesos, cálculos y bifurcaciones. Los elementos llamados {prefix}… se renombran al nuevo número, también donde el código de la página los menciona.',
|
|
5894
|
+
'cpg.refers_by_name': 'La página se refiere a ellos por su nombre.',
|
|
5895
|
+
'cpg.sql_runs_as': 'Su SQL se ejecuta con el rol de base de datos {role} de esta aplicación: concédale lo que el rol de {app} puede leer y modificar.',
|
|
5896
|
+
'cpg.none': '(ninguno)',
|
|
5897
|
+
'cpg.copied': 'Página {n} "{name}" creada como copia de la página {page}.',
|
|
5898
|
+
'cpg.copied_from': 'Página {n} "{name}" creada como copia de la página {page} de {app}.',
|
|
5899
|
+
'cpg.k.authz_scheme': 'Esquema de autorización',
|
|
5900
|
+
'cpg.k.build_option': 'Opción de compilación',
|
|
5901
|
+
'cpg.k.lov': 'Lista de valores',
|
|
5902
|
+
'cpg.k.list': 'Lista',
|
|
5903
|
+
'cpg.k.template_component': 'Componente de plantilla',
|
|
5904
|
+
'cpg.k.search_config': 'Configuración de búsqueda',
|
|
5905
|
+
'cpg.k.data_load_def': 'Definición de carga de datos',
|
|
5906
|
+
// ------------------------------------------------------------ Create pages with AI (sprint 164)
|
|
5907
|
+
'aib.sql_workshop_ai': 'SQL Workshop → IA',
|
|
5908
|
+
'aib.description': 'Descripción',
|
|
5909
|
+
'aib.propose_pages': 'Proponer páginas',
|
|
5910
|
+
'aib.create': 'Crear',
|
|
5911
|
+
'aib.page_type': 'Tipo de página',
|
|
5912
|
+
'aib.table_or_view': 'Tabla o vista',
|
|
5913
|
+
'aib.page': 'Página',
|
|
5914
|
+
'aib.form_page': 'Página de formulario',
|
|
5915
|
+
'aib.label': 'Etiqueta',
|
|
5916
|
+
'aib.why': 'Por qué',
|
|
5917
|
+
'aib.create_the_ticked_pages': 'Crear las páginas marcadas',
|
|
5918
|
+
'aib.no_pages_were_proposed_describe': 'No se propuso ninguna página: descríbalas de otra forma o compruebe que el rol de la aplicación puede leer las tablas.',
|
|
5919
|
+
'aib.e_g_a_page_to': 'p. ej. Una página para gestionar empleados, un calendario de ausencias y un gráfico de salarios por departamento',
|
|
5920
|
+
'aib.the_ai_request_failed': 'La solicitud a la IA falló.',
|
|
5921
|
+
'aib.tick_the_pages_to_create': 'Marque las páginas que desea crear.',
|
|
5922
|
+
'aib.the_app_builder_has_no': 'El App Builder aún no tiene servicio de IA (un administrador lo elige en SQL Workshop → IA).',
|
|
5923
|
+
'aib.describe_the_pages_you_want': 'Describa las páginas que desea.',
|
|
5924
|
+
'aib.create_pages_with_ai': 'Crear páginas con IA',
|
|
5925
|
+
'aib.proposed_pages': 'Páginas propuestas',
|
|
5926
|
+
'aib.app_builder': 'App Builder',
|
|
5927
|
+
'aib.intro': 'Describa las páginas que desea. El servicio de IA del App Builder propone páginas de los asistentes de creación de páginas para las tablas y vistas que el rol de la aplicación ({role}) puede leer; usted revisa las propuestas y crea las que marque. Se envían al servicio los nombres de tablas y columnas, los tipos y las {descriptions}, nunca filas.',
|
|
5928
|
+
'aib.the_owner': 'el propietario',
|
|
5929
|
+
'aib.descriptions': 'descripciones',
|
|
5930
|
+
'aib.no_service': 'El App Builder aún no tiene servicio de IA: un administrador lo elige en {link}.',
|
|
5931
|
+
'aib.thinking': 'Pensando…',
|
|
5932
|
+
'aib.p_create': 'Crear la propuesta {n}',
|
|
5933
|
+
'aib.p_kind': 'Tipo de página de la propuesta {n}',
|
|
5934
|
+
'aib.p_table': 'Tabla de la propuesta {n}',
|
|
5935
|
+
'aib.p_page': 'Número de página de la propuesta {n}',
|
|
5936
|
+
'aib.p_form': 'Página de formulario de la propuesta {n} (informe y formulario)',
|
|
5937
|
+
'aib.p_label': 'Etiqueta de la propuesta {n}',
|
|
5938
|
+
'aib.admins_only': 'Solo los administradores eligen el servicio de IA del App Builder.',
|
|
5939
|
+
'aib.no_tables': 'El rol {role} de la aplicación aún no puede leer ninguna tabla ni vista.',
|
|
5940
|
+
'aib.p_invalid': 'Propuesta {n}: elija un tipo de página, una tabla que la aplicación pueda leer y números de página libres.',
|
|
5941
|
+
'aib.created': 'Páginas {list} creadas. Asegúrese de que el rol de base de datos de la aplicación tenga los privilegios que necesitan.',
|
|
5942
|
+
'aib.not_created': 'No se creó ninguna página: {error}',
|
|
5943
|
+
// ------------------------------------------------------------ New applications (sprint 164)
|
|
5944
|
+
'nwa.push_off': 'Las notificaciones push están desactivadas: necesitan PGKILN_SECRET_KEY en el entorno del servidor.',
|
|
5945
|
+
'nwa.no_workspace': 'Aún no es desarrollador de ningún espacio de trabajo: pida a un administrador que le añada a uno.',
|
|
5946
|
+
'nwa.bad_alias': 'El alias debe empezar por una letra y contener solo a-z, 0-9, _ y - (50 caracteres como máximo).',
|
|
5947
|
+
'nwa.enter_name': 'Introduzca un nombre para la aplicación.',
|
|
5948
|
+
'nwa.bad_schema': 'El esquema {schema} no puede ser el esquema de análisis de una aplicación.',
|
|
5949
|
+
'nwa.first_user': 'Las apps con página de inicio de sesión necesitan un primer usuario.',
|
|
5950
|
+
'nwa.choose_icon': 'Elija uno de los iconos de la lista.',
|
|
5951
|
+
'nwa.choose_language': 'Elija uno de los idiomas de la lista.',
|
|
5952
|
+
'nwa.role_exists': 'El rol de base de datos {role} ya existe: elija otro alias.',
|
|
5953
|
+
'nwa.schema_foreign': 'El esquema {schema} ya existe y no pertenece a este espacio de trabajo: elija otro esquema.',
|
|
5954
|
+
'nwa.choose_boilerplate': 'Elija una aplicación base (una aplicación de tipo Boilerplate).',
|
|
5955
|
+
'nwa.alias_taken': 'Ya existe una aplicación con el alias {alias}.',
|
|
5956
|
+
'nwa.f.about': 'Página Acerca de',
|
|
5957
|
+
'nwa.fh.about': 'Una página Acerca de en un menú Ayuda de la cabecera.',
|
|
5958
|
+
'nwa.f.access': 'Control de acceso',
|
|
5959
|
+
'nwa.fh.access': 'Esquemas de autorización para los roles admin, contributor y reader, para páginas, regiones y botones.',
|
|
5960
|
+
'nwa.f.activity': 'Informes de actividad',
|
|
5961
|
+
'nwa.fh.activity': 'Una página para administradores con las vistas de página por día y la actividad más reciente.',
|
|
5962
|
+
'nwa.f.feedback': 'Comentarios',
|
|
5963
|
+
'nwa.fh.feedback': 'Los usuarios envían comentarios desde la cabecera; usted los lee en Actividad → Comentarios.',
|
|
5964
|
+
'nwa.f.theme': 'Selección del estilo del tema',
|
|
5965
|
+
'nwa.fh.theme': 'Los usuarios pueden elegir el tema claro u oscuro.',
|
|
5966
|
+
'nwa.f.pwa': 'Instalar como app (PWA)',
|
|
5967
|
+
'nwa.fh.pwa': 'Instalable en teléfonos y ordenadores, con páginas sin conexión.',
|
|
5968
|
+
'nwa.f.push': 'Notificaciones push',
|
|
5969
|
+
'nwa.fh.push': 'Notificaciones en los dispositivos de los usuarios (con Instalar como app).',
|
|
5970
|
+
// ------------------------------------------------------------ Create Application wizard (sprint 164)
|
|
5971
|
+
'aw.k.report_form': 'Informe interactivo con formulario',
|
|
5972
|
+
'aw.k.facets': 'Búsqueda por facetas',
|
|
5973
|
+
'aw.k.cards': 'Tarjetas',
|
|
5974
|
+
'aw.k.calendar': 'Calendario',
|
|
5975
|
+
'aw.k.master_detail': 'Maestro-detalle',
|
|
5976
|
+
'aw.k.grid': 'Cuadrícula interactiva',
|
|
5977
|
+
'aw.k.report': 'Informe',
|
|
5978
|
+
'aw.k.none': 'Sin página',
|
|
5979
|
+
'aw.at_most_tables': 'Elija como máximo {n} tablas y vistas.',
|
|
5980
|
+
'aw.no_dashboard': 'Sin panel: ninguna tabla tiene una clave foránea, ni una columna de texto, sí/no o fecha cuyas estadísticas muestren pocos valores repetidos (ejecute antes ANALYZE en las tablas).',
|
|
5981
|
+
'aw.not_on_dashboard': 'No están en el panel: {tables} (seguridad a nivel de fila: puede que el rol de la aplicación no vea ninguna fila).',
|
|
5982
|
+
'aw.paste_title': 'Crear aplicación a partir de datos pegados',
|
|
5983
|
+
'aw.pasted_data': 'Datos pegados',
|
|
5984
|
+
'aw.paste_the_data': 'Pegue los datos.',
|
|
5985
|
+
'aw.paste_max': 'Se pueden pegar como máximo {mb} MB de texto; suba un archivo en su lugar.',
|
|
5986
|
+
'aw.created': 'Aplicación {alias} creada.',
|
|
5987
|
+
'aw.created_pages': 'Aplicación {alias} creada con {n} página(s) además de Home.',
|
|
5988
|
+
'aw.existing_account': 'La cuenta existente {user} recibió el rol admin (su contraseña no se cambió).',
|
|
5989
|
+
'aw.src.file': 'Desde un archivo',
|
|
5990
|
+
'aw.srch.file': 'CSV, Excel, JSON o XML: una tabla por hoja con sus filas',
|
|
5991
|
+
'aw.src.paste': 'Desde datos pegados',
|
|
5992
|
+
'aw.srch.paste': 'Filas copiadas de una hoja de cálculo, o texto CSV',
|
|
5993
|
+
'aw.src.blueprints': 'Desde un blueprint',
|
|
5994
|
+
'aw.srch.blueprints': 'Tablas, páginas, menú y filas de ejemplo descritas una vez (o redactadas por IA)',
|
|
5995
|
+
'aw.src.gallery': 'Desde la App Gallery',
|
|
5996
|
+
'aw.srch.gallery': 'Una aplicación de inicio',
|
|
5997
|
+
'aw.rls_on': 'La seguridad a nivel de fila está activada ({n} políticas): cada usuario solo ve las filas que permiten las políticas',
|
|
5998
|
+
'aw.rls_on_1': 'La seguridad a nivel de fila está activada (1 política): cada usuario solo ve las filas que permiten las políticas',
|
|
5999
|
+
'aw.icon': 'Icono',
|
|
6000
|
+
'aw.not_analyzed': 'sin analizar',
|
|
6001
|
+
'aw.about_rows': 'unas {n} fila(s)',
|
|
6002
|
+
'aw.view': 'vista',
|
|
6003
|
+
'aw.no_key': ', sin clave de una sola columna: sin formulario',
|
|
6004
|
+
'aw.paged_grid': ': una cuadrícula paginada',
|
|
6005
|
+
'aw.no_relations': '{schema} no tiene tablas ni vistas.',
|
|
6006
|
+
'aw.paste_intro': 'Pegue filas copiadas de una hoja de cálculo, o texto CSV o TSV: el delimitador (tabulador, coma, punto y coma o |) se detecta. Luego revisa la tabla propuesta y sus columnas, como con un archivo. O bien {link}.',
|
|
6007
|
+
'aw.upload_a_file': 'suba un archivo',
|
|
6008
|
+
'aw.bp_option': '{name} (base)',
|
|
6009
|
+
'aw.create_an_application_from_pasted': 'Crear una aplicación a partir de datos pegados',
|
|
6010
|
+
'aw.data': 'Datos',
|
|
6011
|
+
'aw.first_row_contains_column_names': 'La primera fila contiene los nombres de columna',
|
|
6012
|
+
'aw.cancel': 'Cancelar',
|
|
6013
|
+
'aw.create_an_application': 'Crear una aplicación',
|
|
6014
|
+
'aw.choose_one_of_the_schemas': 'Elija uno de los esquemas de la lista.',
|
|
6015
|
+
'aw.name': 'Nombre',
|
|
6016
|
+
'aw.a_hero_with_the_name': 'un encabezado destacado con el nombre y el icono, y una tarjeta por página',
|
|
6017
|
+
'aw.choose_a_schema_under_data': 'Elija un esquema en Datos para tener una página por tabla, o añada páginas más tarde con los asistentes de página.',
|
|
6018
|
+
'aw.alias_url': 'Alias (URL)',
|
|
6019
|
+
'aw.lowercase_e_g_inventory_a': 'en minúsculas, p. ej. inventory → /a/inventory; sigue al nombre hasta que lo cambie',
|
|
6020
|
+
'aw.advanced': 'Avanzado',
|
|
6021
|
+
'aw.create_application': 'Crear aplicación',
|
|
6022
|
+
'aw.next': 'Siguiente',
|
|
6023
|
+
'aw.rls_no_policies': 'RLS, sin políticas',
|
|
6024
|
+
'aw.show_its_tables': 'Mostrar sus tablas',
|
|
6025
|
+
'aw.home': 'Inicio',
|
|
6026
|
+
'aw.row_level_security_is_on': 'La seguridad a nivel de fila está activada sin políticas: el rol de la aplicación no ve ninguna fila (salvo que sea propietario de la tabla u omita la seguridad a nivel de fila)',
|
|
6027
|
+
'aw.other_ways_to_start': 'Otras formas de empezar',
|
|
6028
|
+
'aw.pages_on_the_tables_of': 'Páginas sobre las tablas de',
|
|
6029
|
+
'aw.description': 'Descripción',
|
|
6030
|
+
'aw.theme_style': 'Estilo del tema',
|
|
6031
|
+
'aw.navigation': 'Navegación',
|
|
6032
|
+
'aw.accent_colour': 'Color de acento',
|
|
6033
|
+
'aw.dashboard_a_chart_per_table': 'Panel: un gráfico por tabla con el número de filas por fila padre (una clave foránea) o por valor de una columna cuyos valores se repiten',
|
|
6034
|
+
'aw.authentication': 'Autenticación',
|
|
6035
|
+
'aw.first_user': 'Primer usuario',
|
|
6036
|
+
'aw.password': 'Contraseña',
|
|
6037
|
+
'aw.language': 'Idioma',
|
|
6038
|
+
'aw.start_from': 'Empezar desde',
|
|
6039
|
+
'aw.names_the_application_and_the': 'Da nombre a la aplicación y a la tabla (puede cambiar ambos en el paso siguiente).',
|
|
6040
|
+
'aw.one_line_for_the_home': 'Una línea para las páginas de inicio y Acerca de',
|
|
6041
|
+
'aw.of_the_theme_style_the': 'Del estilo del tema; el valor predeterminado no guarda nada.',
|
|
6042
|
+
'aw.e_g_your_name': 'p. ej. su nombre',
|
|
6043
|
+
'aw.gets_the_admin_role_an': 'Recibe el rol admin. Se reutiliza una cuenta existente en Usuarios.',
|
|
6044
|
+
'aw.for_a_new_account_at': 'Para una cuenta nueva; al menos 8 caracteres.',
|
|
6045
|
+
'aw.a_new_empty_schema_home': '- un esquema nuevo y vacío (solo Inicio) -',
|
|
6046
|
+
'aw.iris_light_body_dark_header': 'Iris (cuerpo claro, cabecera y menú oscuros)',
|
|
6047
|
+
'aw.lavender_rounded_indigo': 'Lavender (redondeado, índigo)',
|
|
6048
|
+
'aw.standard_blue_navy_header': 'Standard (azul, cabecera azul marino)',
|
|
6049
|
+
'aw.side_menu': 'Menú lateral',
|
|
6050
|
+
'aw.top_menu': 'Menú superior',
|
|
6051
|
+
'aw.app_users_login_page': 'Usuarios de la app (página de inicio de sesión)',
|
|
6052
|
+
'aw.none_public': 'Ninguna (pública)',
|
|
6053
|
+
'aw.a_blank_application': '- una aplicación en blanco -',
|
|
6054
|
+
'aw.paste_delimited_text_csv_or': 'Pegue texto delimitado (CSV o TSV); suba los archivos JSON, XML o Excel con Desde un archivo.',
|
|
6055
|
+
'aw.the_data_has_column_names': 'Los datos tienen nombres de columna pero ninguna fila.',
|
|
6056
|
+
'aw.choose_a_boilerplate_application_an': 'Elija una aplicación base (una aplicación de tipo Boilerplate).',
|
|
6057
|
+
'aw.choose_at_least_one_table': 'Elija al menos una tabla o vista.',
|
|
6058
|
+
'aw.a_boilerplate_application_brings_its': 'Una aplicación base trae sus propias páginas: no elija tablas, o no elija base.',
|
|
6059
|
+
'aw.application': 'Aplicación',
|
|
6060
|
+
'aw.appearance': 'Apariencia',
|
|
6061
|
+
'aw.pages': 'Páginas',
|
|
6062
|
+
'aw.features': 'Funciones',
|
|
6063
|
+
'aw.settings': 'Ajustes',
|
|
6064
|
+
'aw.app_builder': 'App Builder',
|
|
6065
|
+
'aw.create': 'Crear',
|
|
6066
|
+
// ------------------------------------------------------------ Create application from a file (sprint 164)
|
|
6067
|
+
'aff.table_exists': 'La tabla {table} ya existe: elija otro nombre.',
|
|
6068
|
+
'aff.no_dashboard': 'Sin panel: ninguna columna de texto, sí/no o fecha tiene pocos valores repetidos con los que contar las filas.',
|
|
6069
|
+
'aff.no_facets': 'Sin búsqueda por facetas: ninguna columna sirve como filtro.',
|
|
6070
|
+
'aff.choose_file': 'Elija un archivo.',
|
|
6071
|
+
'aff.too_large': 'El archivo supera los {mb} MB.',
|
|
6072
|
+
'aff.col_name_head': 'Nombre de columna (vacío = omitir)',
|
|
6073
|
+
'aff.col_name_for': 'Nombre de columna para {col}',
|
|
6074
|
+
'aff.type_of': 'Tipo de {col}',
|
|
6075
|
+
'aff.bad_schema': 'El esquema {schema} no puede ser el esquema de análisis de una aplicación.',
|
|
6076
|
+
'aff.loaded': '{table}: {n} fila(s) cargada(s).',
|
|
6077
|
+
'aff.loaded_skipped': '{table}: {n} fila(s) cargada(s), {skipped} omitida(s).',
|
|
6078
|
+
'aff.created': 'Aplicación {alias} creada.',
|
|
6079
|
+
'aff.existing_account': 'La cuenta existente {user} recibió el rol admin (su contraseña no se cambió).',
|
|
6080
|
+
'aff.page_item': 'Página {n}: {label}',
|
|
6081
|
+
'aff.intro': 'Suba una hoja de cálculo: CSV o TSV (UTF-8 o Windows-1252; el delimitador se detecta), Excel .xlsx (cada hoja se convierte en una tabla, hasta {sheets}), JSON (un array de objetos; un objeto con varios arrays da varias tablas) o XML, hasta {mb} MB. Luego revisa las tablas propuestas y sus columnas. La aplicación recibe su propio esquema y rol de base de datos, una tabla con las filas, un informe con formulario y, opcionalmente, un panel y una búsqueda por facetas. En su lugar: {paste} o {tables}.',
|
|
6082
|
+
'aff.schema_help_1': 'Se crea un rol de base de datos app_<alias> con acceso solo a este esquema; la app se ejecuta con ese rol. La tabla se crea en este esquema.',
|
|
6083
|
+
'aff.schema_help_n': 'Se crea un rol de base de datos app_<alias> con acceso solo a este esquema; la app se ejecuta con ese rol. Las tablas se crean en este esquema.',
|
|
6084
|
+
'aff.sheets_info': '{file}: {n} hojas ({list}).',
|
|
6085
|
+
'aff.arrays_info': '{file}: {n} arrays ({list}).',
|
|
6086
|
+
'aff.sheet_rows': '{name}: {n} fila(s)',
|
|
6087
|
+
'aff.info': '{file}: {rows} fila(s), {cols} columna(s)',
|
|
6088
|
+
'aff.delimiter': ', delimitador {d}',
|
|
6089
|
+
'aff.tab': 'tabulador',
|
|
6090
|
+
'aff.xml_rows': ', filas XML {path}',
|
|
6091
|
+
'aff.first_10': '(se muestran las 10 primeras)',
|
|
6092
|
+
'aff.application_created': 'Aplicación creada',
|
|
6093
|
+
'aff.table': 'Tabla',
|
|
6094
|
+
'aff.row': 'Fila',
|
|
6095
|
+
'aff.error': 'Error',
|
|
6096
|
+
'aff.the_first_errors_are_shown': 'Se muestran los primeros errores.',
|
|
6097
|
+
'aff.create_an_application_from_a': 'Crear una aplicación a partir de un archivo',
|
|
6098
|
+
'aff.paste_data': 'Pegar datos',
|
|
6099
|
+
'aff.start_from_existing_tables': 'empezar desde tablas existentes',
|
|
6100
|
+
'aff.file': 'Archivo',
|
|
6101
|
+
'aff.first_row_contains_column_names': 'La primera fila contiene los nombres de columna',
|
|
6102
|
+
'aff.cancel': 'Cancelar',
|
|
6103
|
+
'aff.paste_other_data': 'Pegar otros datos',
|
|
6104
|
+
'aff.choose_another_file': 'Elegir otro archivo',
|
|
6105
|
+
'aff.page_1_is_the_home': 'La página 1 es la de inicio; cada tabla recibe un informe interactivo con un formulario modal para crear, modificar y eliminar filas, y una entrada de navegación. Se pueden añadir más páginas después con los asistentes de página.',
|
|
6106
|
+
'aff.create_application': 'Crear aplicación',
|
|
6107
|
+
'aff.file_column': 'Columna del archivo',
|
|
6108
|
+
'aff.values': 'Valores',
|
|
6109
|
+
'aff.type': 'Tipo',
|
|
6110
|
+
'aff.page_1_is_the_home_2': 'La página 1 es la de inicio; la página 2, un informe interactivo de la tabla con un formulario modal (página 3) para crear, modificar y eliminar filas. Cada página recibe una entrada de navegación. Se pueden añadir más páginas después con los asistentes de página.',
|
|
6111
|
+
'aff.edit_the_application': 'Editar la aplicación',
|
|
6112
|
+
'aff.run': 'Ejecutar',
|
|
6113
|
+
'aff.create_another': 'Crear otra',
|
|
6114
|
+
'aff.next': 'Siguiente',
|
|
6115
|
+
'aff.name': 'Nombre',
|
|
6116
|
+
'aff.alias_url': 'Alias (URL)',
|
|
6117
|
+
'aff.parsing_schema': 'Esquema de análisis',
|
|
6118
|
+
'aff.authentication': 'Autenticación',
|
|
6119
|
+
'aff.first_user': 'Primer usuario',
|
|
6120
|
+
'aff.password': 'Contraseña',
|
|
6121
|
+
'aff.dashboard_a_chart_per_table': 'Panel: un gráfico por tabla con el número de filas por fila padre (una clave foránea) o por valor de una columna de texto, sí/no o fecha',
|
|
6122
|
+
'aff.skip_rows_with_errors_otherwise': 'Omitir filas con errores (si no, no se crea nada cuando falla una fila)',
|
|
6123
|
+
'aff.table_name': 'Nombre de la tabla',
|
|
6124
|
+
'aff.dashboard_a_chart_with_the': 'Panel: un gráfico con el número de filas por valor de una columna de texto, sí/no o fecha',
|
|
6125
|
+
'aff.faceted_search_a_report_with': 'Búsqueda por facetas: un informe con un panel de filtros (valores con recuentos, rangos y un campo de búsqueda)',
|
|
6126
|
+
'aff.lowercase_e_g_inventory_a': 'en minúsculas, p. ej. inventory → /a/inventory',
|
|
6127
|
+
'aff.e_g_your_name': 'p. ej. su nombre',
|
|
6128
|
+
'aff.gets_the_admin_role_an': 'Recibe el rol admin. Se reutiliza una cuenta existente en Usuarios.',
|
|
6129
|
+
'aff.for_a_new_account_at': 'Para una cuenta nueva; al menos 8 caracteres.',
|
|
6130
|
+
'aff.in_the_application_s_schema': 'En el esquema de la aplicación; la tabla recibe una clave primaria de identidad id.',
|
|
6131
|
+
'aff.new_schema_named_after_the': '- esquema nuevo con el nombre del alias -',
|
|
6132
|
+
'aff.app_users_login_page': 'Usuarios de la app (página de inicio de sesión)',
|
|
6133
|
+
'aff.none_public': 'Ninguna (pública)',
|
|
6134
|
+
'aff.give_at_least_one_column': 'Dé nombre al menos a una columna.',
|
|
6135
|
+
'aff.table_name_a_lower_case': 'Nombre de la tabla: un nombre en minúsculas (letras, dígitos y _) sin esquema; la tabla va al esquema de la aplicación.',
|
|
6136
|
+
'aff.the_file_has_column_names': 'El archivo tiene nombres de columna pero ninguna fila.',
|
|
6137
|
+
'aff.skipped_rows': 'Filas omitidas',
|
|
6138
|
+
'aff.foreign_keys': 'Claves foráneas',
|
|
6139
|
+
'aff.pages': 'Páginas',
|
|
6140
|
+
'aff.application': 'Aplicación',
|
|
6141
|
+
'aff.preview': 'Vista previa',
|
|
6142
|
+
'aff.create_application_from_a_file': 'Crear aplicación a partir de un archivo',
|
|
6143
|
+
'aff.app_builder': 'App Builder',
|
|
6144
|
+
'aff.create': 'Crear',
|
|
6145
|
+
'aff.from_a_file': 'Desde un archivo',
|
|
6146
|
+
// ------------------------------------------------------------ Workbooks with several sheets (sprint 164)
|
|
6147
|
+
'ash.bad_xlsx': 'No es un archivo Excel (.xlsx) legible: {error}',
|
|
6148
|
+
'ash.sheet_error': 'Hoja {sheet}: {error}',
|
|
6149
|
+
'ash.too_many_sheets': 'El libro tiene {n} hojas con filas; como máximo {max} se convierten en tablas a la vez.',
|
|
6150
|
+
'ash.too_many_rows_wb': 'El libro tiene {n} filas; como máximo se pueden cargar {max} a la vez.',
|
|
6151
|
+
'ash.too_many_arrays': 'El JSON tiene {n} arrays; como máximo {max} se convierten en tablas a la vez.',
|
|
6152
|
+
'ash.too_many_rows': 'El archivo tiene {n} filas; como máximo se pueden cargar {max} a la vez.',
|
|
6153
|
+
'ash.sheet': 'Hoja {name}',
|
|
6154
|
+
'ash.bad_table_name': '{where}: el nombre de la tabla debe ir en minúsculas (letras, dígitos y _) y sin esquema; la tabla va al esquema de la aplicación.',
|
|
6155
|
+
'ash.no_columns': '{where}: dé nombre al menos a una columna.',
|
|
6156
|
+
'ash.bad_column': '{where}: "{col}" no es un nombre de columna válido.',
|
|
6157
|
+
'ash.bad_type': '{where}: tipo de columna desconocido {type}.',
|
|
6158
|
+
'ash.dup_columns': '{where}: los nombres de columna deben ser únicos.',
|
|
6159
|
+
'ash.id_taken': '{where}: "id" es el nombre de la nueva columna clave; renombre la columna del archivo o elíjala como clave primaria.',
|
|
6160
|
+
'ash.table_exists': 'La tabla {table} ya existe: elija otro nombre.',
|
|
6161
|
+
'ash.fk_failed': 'Clave foránea {fk}: {error} Desmárquela o corrija los datos.',
|
|
6162
|
+
'ash.no_dashboard': 'Sin panel: ninguna tabla tiene una clave foránea ni una columna de texto, sí/no o fecha con pocos valores repetidos con los que contar las filas.',
|
|
6163
|
+
'ash.create_from_sheet': 'Crear una tabla a partir de esta hoja ({rows} fila(s), {cols} columna(s))',
|
|
6164
|
+
'ash.col_name_head': 'Nombre de columna (vacío = omitir)',
|
|
6165
|
+
'ash.col_name_for': 'Nombre de columna para {col} ({sheet})',
|
|
6166
|
+
'ash.type_of': 'Tipo de {col} ({sheet})',
|
|
6167
|
+
'ash.missing': '{n} fila(s) tienen un valor que {key} no tiene.',
|
|
6168
|
+
'ash.fk_intro': 'Se proponen donde una columna coincide con la clave primaria de otra tabla; se marcan cuando se encuentran todos los valores. Los formularios reciben una lista de selección por cada clave foránea.',
|
|
6169
|
+
'ash.table_name': 'Nombre de la tabla',
|
|
6170
|
+
'ash.primary_key': 'Clave primaria',
|
|
6171
|
+
'ash.a_whole_number_key_column': 'Una columna clave de números enteros se convierte en clave de identidad; otra columna clave es única, junto a un id nuevo.',
|
|
6172
|
+
'ash.file_column': 'Columna del archivo',
|
|
6173
|
+
'ash.values': 'Valores',
|
|
6174
|
+
'ash.type': 'Tipo',
|
|
6175
|
+
'ash.no_column_matches_another_table': 'Ninguna columna coincide con la clave de otra tabla. Una columna coincide cuando se llama como la columna clave (dept_id), o como la otra tabla y su clave (department_id, department_code), con el mismo tipo.',
|
|
6176
|
+
'ash.update_the_proposals': 'Actualizar las propuestas',
|
|
6177
|
+
'ash.a_new_column_id_identity': '- una columna nueva id (identidad) -',
|
|
6178
|
+
'ash.the_file_has_column_names': 'El archivo tiene nombres de columna pero ninguna fila.',
|
|
6179
|
+
'ash.choose_at_least_one_sheet': 'Elija al menos una hoja.',
|
|
6180
|
+
'ash.each_sheet_needs_a_table': 'Cada hoja necesita su propio nombre de tabla.',
|
|
6181
|
+
'ash.foreign_keys': 'Claves foráneas',
|
|
6182
|
+
// ------------------------------------------------------------ Theme Roller (sprint 164)
|
|
6183
|
+
'thr.as_base': '- como la base -',
|
|
6184
|
+
'thr.as_app': '- como la aplicación -',
|
|
6185
|
+
'thr.default_base_style': 'Predeterminado (cabecera y menú del estilo base)',
|
|
6186
|
+
'thr.preview_text': 'Texto con un {link} y una {badge}.',
|
|
6187
|
+
'thr.link': 'enlace',
|
|
6188
|
+
'thr.badge': 'insignia',
|
|
6189
|
+
'thr.value': 'Valor',
|
|
6190
|
+
'thr.c_accent': 'Color de acento',
|
|
6191
|
+
'thr.c_header': 'Color de la cabecera',
|
|
6192
|
+
'thr.c_accent_dark': 'Color de acento en modo oscuro',
|
|
6193
|
+
'thr.c_header_dark': 'Color de la cabecera en modo oscuro',
|
|
6194
|
+
'thr.c_strip': 'Color de la franja de la cabecera',
|
|
6195
|
+
'thr.c_strip_dark': 'Color de la franja de la cabecera en modo oscuro',
|
|
6196
|
+
'thr.delete_confirm': '¿Eliminar el estilo {name}?',
|
|
6197
|
+
'thr.edit_style': 'Editar el estilo {name}',
|
|
6198
|
+
'thr.max_styles': 'Como máximo {n} estilos por aplicación.',
|
|
6199
|
+
'thr.options_intro': 'Las regiones y los botones tienen {options} en el Page Designer (grupo Apariencia): clases CSS de una lista fija, a las que también afectan estos estilos.',
|
|
6200
|
+
'thr.regions_list': 'Regiones: {list}',
|
|
6201
|
+
'thr.buttons_list': 'Botones: {list}',
|
|
6202
|
+
'thr.title': 'Theme Roller de {app}',
|
|
6203
|
+
'thr.gone': 'El estilo {name} ya no existe.',
|
|
6204
|
+
'thr.exists': 'Ya hay un estilo llamado {name}.',
|
|
6205
|
+
'thr.saved': 'Estilo {name} guardado.',
|
|
6206
|
+
'thr.deleted': 'Estilo {name} eliminado.',
|
|
6207
|
+
'thr.variants_intro': 'Varios estilos guardados para esta aplicación (APEX: estilos de tema). El estilo base ({base}) y los colores en {settings} son lo que ven los usuarios sin estilo; cada estilo de abajo cambia los colores y puede fijar fuente, tamaño de fuente y esquinas. Los colores se aplican al tema claro, los colores del modo oscuro al tema oscuro (elija allí colores claros); fuentes, tamaños y esquinas a ambos.',
|
|
6208
|
+
'thr.use_this_colour_else_the': 'Usar este color (si no, el color base)',
|
|
6209
|
+
'thr.or_the_value_of_an': '…o el valor de un elemento',
|
|
6210
|
+
'thr.a_dynamic_colour_the_item': 'Un color dinámico: el valor del elemento cuando es #rrggbb (si no, el color base).',
|
|
6211
|
+
'thr.preview': 'Vista previa',
|
|
6212
|
+
'thr.employees': 'Empleados',
|
|
6213
|
+
'thr.employee_list': 'Lista de empleados',
|
|
6214
|
+
'thr.directory': 'Directorio',
|
|
6215
|
+
'thr.reports': 'Informes',
|
|
6216
|
+
'thr.a_region': 'Una región',
|
|
6217
|
+
'thr.a_field': 'Un campo',
|
|
6218
|
+
'thr.cancel': 'Cancelar',
|
|
6219
|
+
'thr.save': 'Guardar',
|
|
6220
|
+
'thr.condition_sql': 'Condición (SQL)',
|
|
6221
|
+
'thr.optional_a_boolean_expression_with': 'Opcional. Una expresión booleana con variables de enlace, ejecutada con el rol de la aplicación en cada página: los usuarios que no eligieron estilo reciben el primer estilo cuya condición se cumple, si no el estilo predeterminado (APEX: estilos de tema condicionales).',
|
|
6222
|
+
'thr.use_this_colour_else_the_2': 'Usar este color (si no, el color de acento)',
|
|
6223
|
+
'thr.settings_theme': 'Ajustes → Tema',
|
|
6224
|
+
'thr.name': 'Nombre',
|
|
6225
|
+
'thr.accent': 'Acento',
|
|
6226
|
+
'thr.header': 'Cabecera',
|
|
6227
|
+
'thr.dark_accent': 'Acento oscuro',
|
|
6228
|
+
'thr.dark_header': 'Cabecera oscura',
|
|
6229
|
+
'thr.navigation': 'Navegación',
|
|
6230
|
+
'thr.strip': 'Franja',
|
|
6231
|
+
'thr.font': 'Fuente',
|
|
6232
|
+
'thr.font_size': 'Tamaño de fuente',
|
|
6233
|
+
'thr.corners': 'Esquinas',
|
|
6234
|
+
'thr.actions': 'Acciones',
|
|
6235
|
+
'thr.delete': 'Eliminar',
|
|
6236
|
+
'thr.no_styles_yet_the_application': 'Aún no hay estilos: la aplicación usa sus colores base.',
|
|
6237
|
+
'thr.users_may_choose_a_style': 'Los usuarios pueden elegir un estilo',
|
|
6238
|
+
'thr.adds_the_styles_to_the': 'Añade los estilos al menú de usuario y a Mi cuenta (APEX: "Enable End Users to Choose Theme Style"). La elección de un usuario se guarda por aplicación en la cuenta; solo se pueden elegir los estilos de esta aplicación.',
|
|
6239
|
+
'thr.template_options': 'Opciones de plantilla',
|
|
6240
|
+
'thr.edit': 'Editar',
|
|
6241
|
+
'thr.preview_of_the_style': 'Vista previa del estilo',
|
|
6242
|
+
'thr.sample_menu': 'Menú de ejemplo',
|
|
6243
|
+
'thr.navigation_appearance': 'Apariencia de la navegación',
|
|
6244
|
+
'thr.default_style': 'Estilo predeterminado',
|
|
6245
|
+
'thr.e_g_ocean': 'p. ej. Ocean',
|
|
6246
|
+
'thr.shown_to_users_who_may': 'Se muestra a los usuarios que pueden elegir un estilo. 1–30 letras, dígitos, espacios, - o _.',
|
|
6247
|
+
'thr.as_the_application': '- como la aplicación -',
|
|
6248
|
+
'thr.default_the_base_style_s': 'Predeterminado (cabecera y menú del estilo base)',
|
|
6249
|
+
'thr.as_the_base': '- como la base -',
|
|
6250
|
+
'thr.none_the_base_style_and': 'Ninguno (el estilo y los colores base)',
|
|
6251
|
+
'thr.default': 'Predeterminado',
|
|
6252
|
+
'thr.save_style': 'Guardar estilo',
|
|
6253
|
+
'thr.add_style': 'Añadir estilo',
|
|
6254
|
+
'thr.add_a_style': 'Añadir un estilo',
|
|
6255
|
+
'thr.theme_roller_settings_saved': 'Ajustes del Theme Roller guardados.',
|
|
6256
|
+
'thr.what_everyone_sees_unless_they': 'Lo que ven todos, salvo que hayan elegido otro estilo.',
|
|
6257
|
+
'thr.theme_roller_style_variants': 'Theme Roller: variantes de estilo',
|
|
6258
|
+
'thr.app_builder': 'App Builder',
|
|
6259
|
+
'thr.settings': 'Ajustes',
|
|
6260
|
+
'thr.theme_roller': 'Theme Roller',
|
|
6261
|
+
// ------------------------------------------------------------ Features (sprint 164)
|
|
6262
|
+
'feat.f.access': 'Control de acceso',
|
|
6263
|
+
'feat.h.access': 'Esquemas de autorización para los roles admin, contributor y reader, para páginas, regiones y botones.',
|
|
6264
|
+
'feat.f.activity': 'Informes de actividad',
|
|
6265
|
+
'feat.h.activity': 'Una página para administradores con las vistas de página por día y la actividad más reciente.',
|
|
6266
|
+
'feat.f.config': 'Opciones de configuración',
|
|
6267
|
+
'feat.h.config': 'Una página donde los administradores de la aplicación activan y desactivan opciones de compilación mientras se ejecuta.',
|
|
6268
|
+
'feat.f.email': 'Informes por correo',
|
|
6269
|
+
'feat.h.email': 'Un correo semanal a los administradores con la actividad de la aplicación, las filas como archivo CSV.',
|
|
6270
|
+
'feat.f.feedback': 'Comentarios',
|
|
6271
|
+
'feat.h.feedback': 'Los usuarios envían comentarios desde la cabecera; usted los lee en Actividad → Comentarios de la aplicación.',
|
|
6272
|
+
'feat.f.about': 'Página Acerca de',
|
|
6273
|
+
'feat.h.about': 'Una página Acerca de en un menú Ayuda de la cabecera.',
|
|
6274
|
+
'feat.f.login': 'Página de inicio de sesión',
|
|
6275
|
+
'feat.h.login': 'La página de inicio de sesión propia de la aplicación en lugar de la integrada, editable en el Page Designer.',
|
|
6276
|
+
'feat.f.theme': 'Selección del estilo del tema',
|
|
6277
|
+
'feat.h.theme': 'Los usuarios eligen el tema claro u oscuro en su menú de usuario (Apariencia).',
|
|
6278
|
+
'feat.f.push': 'Notificaciones push',
|
|
6279
|
+
'feat.h.push': 'Notificaciones en los dispositivos de los usuarios, desde procesos y SQL (meta.send_push); la aplicación pasa a ser instalable.',
|
|
6280
|
+
'feat.a.access_1': 'Esquemas de autorización CONTRIBUTOR (rol admin o contributor) y READER (admin, contributor o reader), y ADMIN si la aplicación no tiene ninguno',
|
|
6281
|
+
'feat.a.access_2': 'Asigne a los usuarios sus roles en Componentes compartidos → Usuarios (acceso a la aplicación)',
|
|
6282
|
+
'feat.a.activity_1': 'Página {page} "Activity" (autorización ADMIN): un gráfico de las vistas de página por día y un informe de la actividad más reciente, desde meta.app_activity()',
|
|
6283
|
+
'feat.a.activity_2': 'Una entrada de navegación Activity para administradores',
|
|
6284
|
+
'feat.a.activity_3': 'Esquema de autorización ADMIN (rol admin) si la aplicación no tiene ninguno',
|
|
6285
|
+
'feat.page_in_use': 'La página {page} la usa otra página.',
|
|
6286
|
+
'feat.a.config_1': 'Página {page} "Configuration" (autorización ADMIN): las opciones de compilación configurables como interruptores, y Guardar',
|
|
6287
|
+
'feat.a.config_2': 'Las opciones de compilación marcadas abajo pasan a ser configurables (Componentes compartidos → Opciones de compilación → Configurable)',
|
|
6288
|
+
'feat.a.config_3': 'Una entrada de navegación Configuration para administradores',
|
|
6289
|
+
'feat.a.email_1': 'Ajuste de aplicación EMAIL_REPORT_TO: las direcciones a las que va el informe (Componentes compartidos → Ajustes de la aplicación)',
|
|
6290
|
+
'feat.a.email_2': 'Automatización EMAIL_REPORTING, cada lunes a las 07:00 UTC: meta.send_activity_report() con los últimos 7 días (Componentes compartidos → Automatizaciones)',
|
|
6291
|
+
'feat.a.email_3': 'El correo sale por el servicio de correo de la aplicación (Utilidades del espacio de trabajo → Servicios de correo); sin direcciones no se envía nada',
|
|
6292
|
+
'feat.not_email': '"{address}" no es una dirección de correo.',
|
|
6293
|
+
'feat.too_many': 'Demasiadas direcciones.',
|
|
6294
|
+
'feat.a.feedback_1': 'Una entrada Comentarios en la cabecera para los usuarios conectados (Ajustes → Comentarios)',
|
|
6295
|
+
'feat.a.feedback_2': 'Sus comentarios, con la página, en Actividad → Comentarios del builder',
|
|
6296
|
+
'feat.a.about_1': 'Página {page} "About" con el nombre de la aplicación y las páginas de su menú',
|
|
6297
|
+
'feat.a.about_2': 'Un menú Ayuda con About en la barra de navegación (lista NAVBAR), salvo que la aplicación ya tenga una lista de barra de navegación',
|
|
6298
|
+
'feat.a.login_1': 'Página 9999 (o el siguiente número libre) "Login": pública, plantilla de página Minimal, con una región Login',
|
|
6299
|
+
'feat.a.login_2': 'Pasa a ser la página de inicio de sesión (Ajustes → Métodos de inicio de sesión)',
|
|
6300
|
+
'feat.no_signin': 'La aplicación no tiene inicio de sesión (autenticación none).',
|
|
6301
|
+
'feat.a.theme_1': 'Apariencia en el menú de usuario: claro, oscuro o el ajuste del dispositivo (Ajustes → Tema → Los usuarios pueden elegir)',
|
|
6302
|
+
'feat.a.push_1': 'Instalar como app (PWA): un manifiesto, un service worker y un botón Instalar',
|
|
6303
|
+
'feat.a.push_2': 'Notificaciones push: los usuarios se suscriben en Mi cuenta; se envían con el proceso send_push o meta.send_push',
|
|
6304
|
+
'feat.a.push_3': 'El par de claves push de la aplicación (guardado cifrado)',
|
|
6305
|
+
'feat.push_needs_key': 'Las notificaciones push necesitan PGKILN_SECRET_KEY en el entorno del servidor.',
|
|
6306
|
+
'feat.send_to': 'Enviar a',
|
|
6307
|
+
'feat.send_to_help': 'Separadas por comas; puede quedar vacío y configurarse después en Componentes compartidos → Ajustes de la aplicación (EMAIL_REPORT_TO).',
|
|
6308
|
+
'feat.cbo': 'Opciones de compilación configurables',
|
|
6309
|
+
'feat.no_build_options': 'La aplicación aún no tiene opciones de compilación: añádalas en Componentes compartidos → Opciones de compilación y marque {configurable}; la página las muestra a medida que aparecen.',
|
|
6310
|
+
'feat.configurable': 'Configurable',
|
|
6311
|
+
'feat.installed_already': '{feature} ya está instalado en esta aplicación.',
|
|
6312
|
+
'feat.add': 'Añadir {feature}',
|
|
6313
|
+
'feat.title': '{feature} · {app}',
|
|
6314
|
+
'feat.added': '{feature} añadido.',
|
|
6315
|
+
'feat.back_to_the_features': 'Volver a las funciones',
|
|
6316
|
+
'feat.cancel': 'Cancelar',
|
|
6317
|
+
'feat.it_added': 'Añadió',
|
|
6318
|
+
'feat.it_adds': 'Añade',
|
|
6319
|
+
'feat.app_builder': 'App Builder',
|
|
6320
|
+
'feat.create_page': 'Crear página',
|
|
6321
|
+
// ------------------------------------------------------------ OpenTelemetry (sprint 164)
|
|
6322
|
+
'tel.o.builder': 'fijado aquí',
|
|
6323
|
+
'tel.o.environment': 'variable de entorno',
|
|
6324
|
+
'tel.o.default': 'predeterminado',
|
|
6325
|
+
'tel.intro': 'Trazas y registros de las aplicaciones de este espacio de trabajo. {state} Un recolector propio del espacio de trabajo se alcanza a través de la lista de permitidos de la instalación y la lista de {network} de este espacio de trabajo.',
|
|
6326
|
+
'tel.endpoint_help': 'La dirección base OTLP/HTTP; se añaden /v1/traces, /v1/logs y /v1/metrics. En vigor: {value} {origin} ({env}).',
|
|
6327
|
+
'tel.none': 'ninguna',
|
|
6328
|
+
'tel.service_help': 'service.name de todo lo enviado (OTEL_SERVICE_NAME). En vigor: {value}.',
|
|
6329
|
+
'tel.new_token': 'El nuevo token (se muestra una vez): {token}',
|
|
6330
|
+
'tel.test_failed': 'El recolector no aceptó el span de prueba: {problem}',
|
|
6331
|
+
'tel.send_traces_logs_and_metrics': 'Envíe trazas, registros y métricas de las aplicaciones a su propia monitorización (Grafana, Jaeger, Datadog, Honeycomb, OCI APM o cualquier cosa que hable OTLP) a través de un OpenTelemetry Collector. Una traza por solicitud de página, con un span por cada sentencia SQL, llamada a una fuente de datos REST, solicitud de IA y llamada a herramienta; los pasos de correo y de flujo de trabajo como trazas propias. pgkiln envía OTLP por HTTP como JSON. Las variables de entorno estándar `OTEL_*` también funcionan; un valor fijado aquí prevalece. El capítulo 1 de la guía (Monitorización con OpenTelemetry) explica cada opción.',
|
|
6332
|
+
'tel.headers': 'Cabeceras',
|
|
6333
|
+
'tel.remove_the_headers': 'Quitar las cabeceras',
|
|
6334
|
+
'tel.opentelemetry': 'OpenTelemetry',
|
|
6335
|
+
'tel.only_administrators_set_up_opentelemetry': 'Solo los administradores configuran OpenTelemetry para la instalación.',
|
|
6336
|
+
'tel.send': 'Enviar',
|
|
6337
|
+
'tel.save': 'Guardar',
|
|
6338
|
+
'tel.send_a_test_span': 'Enviar un span de prueba',
|
|
6339
|
+
'tel.since_this_server_started_each': 'Desde que se inició este servidor. Cada servidor de la instalación envía los suyos.',
|
|
6340
|
+
'tel.collector': 'Recolector',
|
|
6341
|
+
'tel.sending': 'Envío',
|
|
6342
|
+
'tel.off': '(desactivado)',
|
|
6343
|
+
'tel.remove_the_token': 'Quitar el token',
|
|
6344
|
+
'tel.a_workspace_s_administrators_may': 'Los administradores de un espacio de trabajo pueden desactivar sus aplicaciones o enviarlas también a un recolector propio.',
|
|
6345
|
+
'tel.workspace': 'Espacio de trabajo',
|
|
6346
|
+
'tel.applications': 'Aplicaciones',
|
|
6347
|
+
'tel.sends': 'Envía',
|
|
6348
|
+
'tel.no_workspaces': 'No hay espacios de trabajo.',
|
|
6349
|
+
'tel.only_the_workspace_s_administrators': 'Solo los administradores del espacio de trabajo cambian su ajuste de OpenTelemetry.',
|
|
6350
|
+
'tel.network_access': 'acceso de red',
|
|
6351
|
+
'tel.the_applications_send': 'Las aplicaciones envían',
|
|
6352
|
+
'tel.remove_the_metrics_token_scrapers': '¿Quitar el token de métricas? Los scrapers que lo usan reciben 401.',
|
|
6353
|
+
'tel.send_to_this_collector': 'Enviar a este recolector',
|
|
6354
|
+
'tel.collector_url': 'URL del recolector',
|
|
6355
|
+
'tel.service_name': 'Nombre del servicio',
|
|
6356
|
+
'tel.sample_ratio': 'Proporción de muestreo',
|
|
6357
|
+
'tel.user': 'Usuario',
|
|
6358
|
+
'tel.traces': 'Trazas',
|
|
6359
|
+
'tel.logs_errors_refused_access_and': 'Registros: errores, accesos denegados e inicios de sesión fallidos',
|
|
6360
|
+
'tel.include_values': 'Incluir valores',
|
|
6361
|
+
'tel.trace_builder_requests_too': 'Trazar también las solicitudes del builder',
|
|
6362
|
+
'tel.browser_spans': 'Spans del navegador',
|
|
6363
|
+
'tel.prometheus_endpoint_metrics': 'Endpoint de Prometheus /metrics',
|
|
6364
|
+
'tel.as_the_instance_does': 'Como la instancia',
|
|
6365
|
+
'tel.nothing': 'Nada',
|
|
6366
|
+
'tel.also_to_our_own_collector': 'También a nuestro propio recolector',
|
|
6367
|
+
'tel.own_collector_url': 'URL del recolector propio',
|
|
6368
|
+
'tel.include_values_for_the_own': 'Incluir valores para el recolector propio',
|
|
6369
|
+
'tel.share_of_traces_sent_0': 'Proporción de trazas enviadas, de 0 a 1 (OTEL_TRACES_SAMPLER_ARG). Una traza con error siempre se envía. El traceparent de quien llama decide sobre su traza.',
|
|
6370
|
+
'tel.https_otlp_example_com': 'https://otlp.example.com',
|
|
6371
|
+
'tel.the_otlp_http_base_address': 'La dirección base OTLP/HTTP; se añaden /v1/traces y /v1/logs.',
|
|
6372
|
+
'tel.hashed_the_same_user_gives': 'Con hash (el mismo usuario da el mismo valor, el nombre no se envía)',
|
|
6373
|
+
'tel.user_name': 'Nombre de usuario',
|
|
6374
|
+
'tel.not_sent': 'No se envía',
|
|
6375
|
+
'tel.off_switch_it_on_above': 'Desactivado: actívelo arriba.',
|
|
6376
|
+
'tel.the_token_is_pgkiln_metrics': 'El token es PGKILN_METRICS_TOKEN.',
|
|
6377
|
+
'tel.no_token_is_set': 'No hay ningún token configurado.',
|
|
6378
|
+
'tel.replace_the_token': 'Reemplazar el token',
|
|
6379
|
+
'tel.make_a_token': 'Crear un token',
|
|
6380
|
+
'tel.opentelemetry_settings_saved': 'Ajustes de OpenTelemetry guardados.',
|
|
6381
|
+
'tel.the_collector_took_the_test': 'El recolector aceptó el span de prueba ("pgkiln test span").',
|
|
6382
|
+
'tel.the_instance_sends_them_to': 'La instancia los envía a su recolector.',
|
|
6383
|
+
'tel.the_instance_sends_nothing_at': 'La instancia no envía nada por ahora.',
|
|
6384
|
+
'tel.saved': 'Guardado.',
|
|
6385
|
+
'tel.the_workspace_has_no_collector': 'El espacio de trabajo no tiene recolector propio.',
|
|
6386
|
+
'tel.off_nothing_leaves_the_server': 'Desactivado: nada sale del servidor (los espacios de trabajo con recolector propio siguen enviando a él).',
|
|
6387
|
+
'tel.sent_with_every_request_to': 'Se envía con cada solicitud al recolector, name=value, una por línea o separadas por comas (OTEL_EXPORTER_OTLP_HEADERS). Se guarda cifrado.',
|
|
6388
|
+
'tel.applications_only_by_default': 'Por defecto, solo aplicaciones.',
|
|
6389
|
+
'tel.pages_report_their_load_time': 'Las páginas informan de su tiempo de carga y llamadas Ajax a pgkiln, que las añade a la traza de la página. El navegador nunca ve el recolector ni sus cabeceras.',
|
|
6390
|
+
'tel.for_administrators_signed_in_to': 'Para administradores conectados al builder, o un scraper con el token de métricas de abajo (PGKILN_METRICS, PGKILN_METRICS_TOKEN).',
|
|
6391
|
+
'tel.the_metrics_token_is_removed': 'Se ha quitado el token de métricas.',
|
|
6392
|
+
'tel.sent_with_every_request_to_2': 'Se envía con cada solicitud al recolector propio (una clave de API). Se guarda cifrado.',
|
|
6393
|
+
'tel.status': 'Estado',
|
|
6394
|
+
'tel.prometheus': 'Prometheus',
|
|
6395
|
+
'tel.workspaces': 'Espacios de trabajo',
|
|
6396
|
+
'tel.setting': 'Ajuste',
|
|
6397
|
+
'tel.app_builder': 'App Builder',
|
|
6398
|
+
'tel.workspace_utilities': 'Utilidades del espacio de trabajo',
|
|
6399
|
+
'tel.administration': 'Administración',
|
|
6400
|
+
'tel.unreadable': '(ilegible)',
|
|
6401
|
+
// ------------------------------------------------------------ Page Designer layout (sprint 164)
|
|
6402
|
+
'arr.spans': 'La región ocupa {n} de 12 columnas.',
|
|
6403
|
+
'arr.nothing_undo': 'Nada que deshacer.',
|
|
6404
|
+
'arr.nothing_redo': 'Nada que rehacer.',
|
|
6405
|
+
'arr.undone': 'Deshecho',
|
|
6406
|
+
'arr.redone': 'Rehecho',
|
|
6407
|
+
'arr.that_region_is_not_on': 'Esa región no está en esta página.',
|
|
6408
|
+
'arr.unknown_position': 'Posición desconocida.',
|
|
6409
|
+
'arr.unknown_button_position': 'Posición de botón desconocida.',
|
|
6410
|
+
'arr.unknown_direction': 'Dirección desconocida.',
|
|
6411
|
+
'arr.the_place_to_move_to': 'El lugar de destino no está en esa región.',
|
|
6412
|
+
'arr.region_not_found_on_this': 'No se encontró la región en esta página.',
|
|
6413
|
+
'arr.the_column_span_is_1': 'El ancho en columnas es de 1 a 12.',
|
|
6414
|
+
'arr.page_not_found': 'Página no encontrada.',
|
|
6415
|
+
'arr.unknown_region_type': 'Tipo de región desconocido.',
|
|
6416
|
+
'arr.unknown_item_type': 'Tipo de elemento desconocido.',
|
|
6417
|
+
'arr.unknown_button_action': 'Acción de botón desconocida.',
|
|
6418
|
+
'arr.that_page_is_not_in': 'Esa página no está en esta aplicación.',
|
|
6419
|
+
'arr.unknown_component': 'Componente desconocido.',
|
|
6420
|
+
'arr.unknown_region': 'Región desconocida.',
|
|
6421
|
+
'arr.unknown_component_type': 'Tipo de componente desconocido.',
|
|
6422
|
+
'arr.unknown_component_or_page': 'Componente o página desconocidos.',
|
|
6423
|
+
// ------------------------------------------------------------ Earlier pages, second pass (sprint 164)
|
|
6424
|
+
'glob.progress': '{done} de {total} textos traducidos. Deje una traducción vacía para mostrar el texto en {language}.',
|
|
6425
|
+
'rdb.fdw_installed': 'postgres_fdw está instalado.',
|
|
6426
|
+
'diag.unknown': 'La base de datos tiene migraciones que este servidor no conoce ({list}): el servidor es más antiguo que la base de datos.',
|
|
6427
|
+
'tm.issues_of_page': 'Incidencias de la página {page} de {app}.',
|
|
6428
|
+
'tm.the_application': 'la aplicación',
|
|
6429
|
+
'tm.n_issues': '{n} incidencias.',
|
|
6430
|
+
'tm.n_issues_1': '1 incidencia.',
|
|
6431
|
+
'tm.n_issues_500': '{n} incidencias (las 500 primeras).',
|
|
6432
|
+
'tm.move_to': 'Mover #{id} a',
|
|
6433
|
+
'tm.feedback_of': 'Comentario de {user}',
|
|
6434
|
+
'tm.comment_of': 'Comentario de {author}',
|
|
6435
|
+
'tm.page_n': ', página {n}',
|
|
6436
|
+
'dts.intro': 'Los datasets son vistas de confianza de los datos de {workspace} para usuarios de negocio: tablas y vistas de un esquema, combinadas, con las columnas que pueden ver, etiquetas, máscaras de formato y descripciones, y un filtro de filas. Una aplicación de informes sobre uno o más datasets permite a sus usuarios crear, guardar, publicar y compartir informes; cada informe se ejecuta con el rol de base de datos de la aplicación, así que se aplican los permisos y la seguridad a nivel de fila.',
|
|
6437
|
+
'dts.this_workspace': 'este espacio de trabajo',
|
|
6438
|
+
'wres.remove_stored': 'Quitar {what} guardado',
|
|
6439
|
+
'tpl.no_wrapper': '{name} no tiene envoltorio, así que las filas aparecen una tras otra.',
|
|
6440
|
+
'rcat.params_help': '[{"name": "page_size", "in": "query", "key": "pageSize", "default": "20"}] · in: path, query, header, body; "key": el nombre que le da el servicio cuando no está en minúsculas con _.',
|
|
6441
|
+
'rcat.intro': 'Servicios web descritos una vez para {workspace}: su URL base y servicios. Una aplicación crea una fuente de datos REST a partir de un servicio en Componentes compartidos → Fuentes de datos REST → Nueva. La fuente de datos es una copia; las credenciales se quedan en la aplicación.',
|
|
6442
|
+
'rcat.this_workspace': 'este espacio de trabajo',
|
|
6443
|
+
'rcat.described_once': 'Servicios descritos una vez para el espacio de trabajo: {link}.',
|
|
6444
|
+
'bp.ai_help': 'El servicio de IA {service} escribe un blueprint en el editor de abajo (sustituyendo lo que haya). Solo se envía su descripción.',
|
|
6445
|
+
'bp.thinking': 'Pensando…',
|
|
6446
|
+
'bp.spec_help': 'Tipos de columna: {types}; {required}, {unique}, {values} (textos permitidos). Tipos de página: {kinds} y en blanco ({text}). Opcional: {dashboard}, {navigation}, {sample}.',
|
|
6447
|
+
'bp.of_app': 'Un blueprint de {app}: revíselo, cambie el nombre, el alias y el esquema, y luego {review}.',
|
|
6448
|
+
'bp.notes': '{n} notas sobre lo que no se trasladó',
|
|
6449
|
+
'bp.notes_1': '1 nota sobre lo que no se trasladó',
|
|
6450
|
+
'drep.no_object': 'La tabla o vista {object} no existe (ya).',
|
|
6451
|
+
'drep.no_select': 'El rol de base de datos de la aplicación no puede leer {object}: concédale SELECT.',
|
|
6452
|
+
'rs.json_columns_help': 'name=column:path[:type]; sepárelos con ";". Una ruta son claves separadas por puntos; un número elige un elemento de un array. Tipos: {types} (texto si se omite); un valor que no se lee como el tipo aparece vacío. Son columnas como las demás: búsqueda, filtros, orden, encabezados y descargas. Para editar documentos, use una fuente JSON (Componentes compartidos).',
|
|
6453
|
+
'dl.load_with_def': 'Cargar un archivo con esta definición',
|
|
6454
|
+
'aw.schema_help': 'El esquema de análisis de la aplicación. Elija un esquema para tener una página por tabla y vista; un esquema nuevo lleva el nombre del alias.',
|
|
6455
|
+
'aw.bp_help': 'Se copian las páginas, los componentes compartidos y los ajustes de una aplicación base; la nueva aplicación conserva su propio nombre, alias, rol y autenticación.',
|
|
6456
|
+
// ------------------------------------------------------------ Page Designer, Form Designer, utilities, subscriptions, working copies (sprint 164)
|
|
6457
|
+
'rte.refused_pgkiln_auth_header_proxies': 'rechazado: PGKILN_AUTH_HEADER_PROXIES no está definido',
|
|
6458
|
+
'rte.no_roles_allowed': 'ningún rol permitido',
|
|
6459
|
+
'rte.no_check_configured_nobody_can': 'ninguna comprobación configurada: nadie puede iniciar sesión',
|
|
6460
|
+
'rte.no_method_enabled': 'ningún método habilitado',
|
|
6461
|
+
'rte.page_views_24h': 'vistas de página (24 h)',
|
|
6462
|
+
'rte.distinct_users_24h': 'usuarios distintos (24 h)',
|
|
6463
|
+
'rte.average_page_time': 'tiempo medio de página',
|
|
6464
|
+
'rte.failed_locked_sign_ins_24h': 'inicios de sesión fallidos / bloqueados (24 h)',
|
|
6465
|
+
'rte.errors_access_denied_24h': 'errores / acceso denegado (24 h)',
|
|
6466
|
+
'rte.the_slowest_statements_of_this': 'las sentencias más lentas del rol de base de datos de esta aplicación',
|
|
6467
|
+
'rte.the_ai_services_this_application': 'los servicios de IA que esta aplicación puede usar y sus solicitudes',
|
|
6468
|
+
'rte.what_users_sent_from_the': 'lo que los usuarios enviaron desde el enlace de comentarios de la aplicación, y sus respuestas',
|
|
6469
|
+
'rte.the_mail_this_application_queued': 'el correo que esta aplicación encoló y envió, con reintento y cancelación',
|
|
6470
|
+
'rte.page': 'Página',
|
|
6471
|
+
'rte.name': 'Nombre',
|
|
6472
|
+
'rte.views': 'Vistas',
|
|
6473
|
+
'rte.avg_ms': 'ms medio',
|
|
6474
|
+
'rte.max_ms': 'ms máx.',
|
|
6475
|
+
'rte.hide_page_views': 'Ocultar vistas de página',
|
|
6476
|
+
'rte.include_page_views': 'Incluir vistas de página',
|
|
6477
|
+
'rte.when': 'Cuándo',
|
|
6478
|
+
'rte.event': 'Evento',
|
|
6479
|
+
'rte.user': 'Usuario',
|
|
6480
|
+
'rte.detail': 'Detalle',
|
|
6481
|
+
'rte.top_sql': 'SQL principal',
|
|
6482
|
+
'rte.ai_usage': 'Uso de IA',
|
|
6483
|
+
'rte.feedback': 'Comentarios',
|
|
6484
|
+
'rte.mail': 'Correo',
|
|
6485
|
+
'rte.debug_messages': 'Mensajes de depuración',
|
|
6486
|
+
'rte.definition': 'Definición',
|
|
6487
|
+
'rte.security': 'Seguridad',
|
|
6488
|
+
'rte.sign_in': 'Inicio de sesión',
|
|
6489
|
+
'rte.user_interface': 'Interfaz de usuario',
|
|
6490
|
+
'rte.globalization': 'Globalización',
|
|
6491
|
+
'rte.errors_and_sessions': 'Errores y sesiones',
|
|
6492
|
+
'rte.progressive_web_app': 'Aplicación web progresiva',
|
|
6493
|
+
'rte.you_are_not_a_developer': 'aún no es desarrollador de ningún espacio de trabajo: pida a un administrador que le añada a uno.',
|
|
6494
|
+
'rte.page_views_by_page_7': 'Vistas por página (7 días)',
|
|
6495
|
+
'rte.recent_events': 'Eventos recientes',
|
|
6496
|
+
'rte.activity': 'Actividad',
|
|
6497
|
+
'rte.app_builder': 'App Builder',
|
|
6498
|
+
'rte.settings': 'Configuración',
|
|
6499
|
+
'rte.developers': 'Desarrolladores',
|
|
6500
|
+
'wcp.lines_with_are_the_main': 'Las líneas con `-` son de la aplicación principal; las líneas con `+`, de la copia de trabajo.',
|
|
6501
|
+
'wcp.change_it_like_any_application': 'Modifíquela como cualquier aplicación: se ejecuta contra el esquema y los datos de la aplicación principal, con sus automatizaciones y sincronizaciones desactivadas. Después compárela con la aplicación principal y fusiónela de vuelta.',
|
|
6502
|
+
'wcp.delete_working_copy': 'Eliminar copia de trabajo',
|
|
6503
|
+
'wcp.a_working_copy_is_a': 'Una copia de trabajo es una segunda aplicación creada a partir de esta, para cambios aislados (APEX: working copies). Compárela con esta aplicación y fusiónela de vuelta componente a componente; los componentes cambiados en ambos lados se muestran como conflictos que resolver.',
|
|
6504
|
+
'wcp.name': 'Nombre',
|
|
6505
|
+
'wcp.application': 'Aplicación',
|
|
6506
|
+
'wcp.made_by': 'Creada por',
|
|
6507
|
+
'wcp.made': 'Creada',
|
|
6508
|
+
'wcp.last_merged': 'Última fusión',
|
|
6509
|
+
'wcp.actions': 'Acciones',
|
|
6510
|
+
'wcp.no_working_copies': 'No hay copias de trabajo.',
|
|
6511
|
+
'wcp.component': 'Componente',
|
|
6512
|
+
'wcp.main_application': 'Aplicación principal',
|
|
6513
|
+
'wcp.working_copy': 'Copia de trabajo',
|
|
6514
|
+
'wcp.result': 'Resultado',
|
|
6515
|
+
'wcp.differences': 'Diferencias',
|
|
6516
|
+
'wcp.main': 'Principal',
|
|
6517
|
+
'wcp.copy': 'Copia',
|
|
6518
|
+
'wcp.show': 'Mostrar',
|
|
6519
|
+
'wcp.merging_writes_the_result_into': 'Fusionar escribe el resultado en la aplicación principal y en la copia de trabajo. Actualizar lo escribe solo en la copia de trabajo (incorporando los cambios de la aplicación principal). Los usuarios, sesiones, informes guardados, secretos y los interruptores de automatización de la aplicación principal no cambian.',
|
|
6520
|
+
'wcp.the_working_copy_and_the': 'La copia de trabajo y la aplicación principal son iguales: nada que fusionar.',
|
|
6521
|
+
'wcp.compare_and_merge': 'Comparar y fusionar',
|
|
6522
|
+
'wcp.create_working_copy': 'Crear copia de trabajo',
|
|
6523
|
+
'wcp.changed_components': 'Componentes cambiados',
|
|
6524
|
+
'wcp.e_g_new_dashboard': 'p. ej. nuevo-panel',
|
|
6525
|
+
'wcp.changed_in_the_copy': 'Cambiado en la copia',
|
|
6526
|
+
'wcp.changed_in_the_main_application': 'Cambiado en la aplicación principal',
|
|
6527
|
+
'wcp.conflict_changed_on_both_sides': 'Conflicto: cambiado en ambos lados',
|
|
6528
|
+
'wcp.this_application_is_not_a': 'Esta aplicación no es una copia de trabajo.',
|
|
6529
|
+
'wcp.choose_main_or_copy_for': 'Elija principal o copia para cada conflicto.',
|
|
6530
|
+
'wcp.working_copies': 'Copias de trabajo',
|
|
6531
|
+
'wcp.create_a_working_copy': 'Crear una copia de trabajo',
|
|
6532
|
+
'wcp.app_builder': 'App Builder',
|
|
6533
|
+
'wcp.compare': 'Comparar',
|
|
6534
|
+
'wcp.side.added': 'añadido',
|
|
6535
|
+
'wcp.side.deleted': 'eliminado',
|
|
6536
|
+
'wcp.side.changed': 'cambiado',
|
|
6537
|
+
'wcp.unchanged': 'sin cambios',
|
|
6538
|
+
'wcp.is_copy': 'Esta aplicación es la copia de trabajo {name} de {main} ({path}), creada por {by} el {at}.',
|
|
6539
|
+
'wcp.last_refreshed': 'Última actualización {at}.',
|
|
6540
|
+
'wcp.last_merged_by': 'Última fusión {at} por {by}.',
|
|
6541
|
+
'wcp.delete_confirm': '¿Eliminar la copia de trabajo {name} y sus cambios no fusionados?',
|
|
6542
|
+
'wcp.created': 'Copia de trabajo {name} creada: modifíquela, luego compárela y fusiónela de vuelta.',
|
|
6543
|
+
'wcp.counts': '{copy} cambiados en la copia, {main} cambiados en la aplicación principal, {conflicts} conflictos.',
|
|
6544
|
+
'wcp.counts_1': '{copy} cambiados en la copia, {main} cambiados en la aplicación principal, 1 conflicto.',
|
|
6545
|
+
'wcp.keep_for': 'Conservar para {label}',
|
|
6546
|
+
'wcp.merge_confirm': '¿Fusionar la copia de trabajo en {main}?',
|
|
6547
|
+
'wcp.merge_into': 'Fusionar en {main}',
|
|
6548
|
+
'wcp.refresh_from': 'Actualizar la copia desde {main}',
|
|
6549
|
+
'wcp.compare_title': 'Comparar con {main}',
|
|
6550
|
+
'wcp.compare_intro': 'Copia de trabajo {copy} de {main}, comparada por componente con la aplicación principal tal como era cuando se creó la copia.',
|
|
6551
|
+
'wcp.compare_intro_since': 'Copia de trabajo {copy} de {main}, comparada por componente con la aplicación principal tal como era cuando la copia se creó, actualizó o fusionó.',
|
|
6552
|
+
'wcp.diff_title': 'Diferencias: {label}',
|
|
6553
|
+
'wcp.merged': 'Copia de trabajo {name} fusionada ({n} componentes).',
|
|
6554
|
+
'wcp.refreshed': 'Copia de trabajo {name} actualizada desde la aplicación principal.',
|
|
6555
|
+
'wcp.deleted': 'Copia de trabajo {name} eliminada.',
|
|
6556
|
+
'wcp.not_a_copy': 'No es una copia de trabajo',
|
|
6557
|
+
'sub.subscription': 'Suscripción',
|
|
6558
|
+
'sub.publish_to_subscribers': 'Publicar a los suscriptores',
|
|
6559
|
+
'sub.subscribers': 'Suscriptores…',
|
|
6560
|
+
'sub.in_sync': 'sincronizado',
|
|
6561
|
+
'sub.settings': 'Configuración',
|
|
6562
|
+
'sub.components_of_this_application_that': 'Componentes de esta aplicación que son copias de un componente de una aplicación de tema o de biblioteca. Actualizar vuelve a copiar la definición del maestro y reemplaza los cambios hechos aquí.',
|
|
6563
|
+
'sub.component': 'Componente',
|
|
6564
|
+
'sub.from': 'De',
|
|
6565
|
+
'sub.refreshed': 'Actualizado',
|
|
6566
|
+
'sub.state': 'Estado',
|
|
6567
|
+
'sub.actions': 'Acciones',
|
|
6568
|
+
'sub.refresh': 'Actualizar',
|
|
6569
|
+
'sub.unsubscribe': 'Cancelar suscripción',
|
|
6570
|
+
'sub.refresh_all': 'Actualizar todo',
|
|
6571
|
+
'sub.no_subscriptions': 'No hay suscripciones.',
|
|
6572
|
+
'sub.subscribe': 'Suscribirse',
|
|
6573
|
+
'sub.the_component_is_copied_now': 'El componente se copia ahora. Se reemplaza un componente de esta aplicación con el mismo nombre.',
|
|
6574
|
+
'sub.no_theme_or_library_applications': 'Ninguna aplicación de tema o de biblioteca ofrece componentes. Defina el tipo de una aplicación en su Configuración.',
|
|
6575
|
+
'sub.subscribe_to_a_component_group': 'Suscribirse a un grupo de componentes',
|
|
6576
|
+
'sub.component_group': 'Grupo de componentes',
|
|
6577
|
+
'sub.every_component_of_the_group': 'Cada componente del grupo se copia ahora y se suscribe (Componentes compartidos → Grupos de componentes de una aplicación de tema o de biblioteca).',
|
|
6578
|
+
'sub.subscribe_to_the_group': 'Suscribirse al grupo',
|
|
6579
|
+
'sub.application': 'Aplicación',
|
|
6580
|
+
'sub.publish': 'Publicar',
|
|
6581
|
+
'sub.publishing_refreshes_every_subscriber_of': 'Publicar actualiza cada suscriptor de un componente con la versión de esta aplicación. Las aplicaciones bloqueadas por otro desarrollador se omiten.',
|
|
6582
|
+
'sub.no_application_subscribes_to_this': 'Ninguna aplicación se suscribe aún a los componentes de esta aplicación.',
|
|
6583
|
+
'sub.unsubscribe_the_component_stays_as': '¿Cancelar la suscripción? El componente se queda como está.',
|
|
6584
|
+
'sub.theme': 'Tema',
|
|
6585
|
+
'sub.application_type': 'Tipo de aplicación',
|
|
6586
|
+
'sub.subscriptions': 'Suscripciones',
|
|
6587
|
+
'sub.subscribers_2': 'Suscriptores',
|
|
6588
|
+
'sub.app_builder': 'App Builder',
|
|
6589
|
+
'sub.shared_components': 'Componentes compartidos',
|
|
6590
|
+
'sub.th.standard': 'Una aplicación normal.',
|
|
6591
|
+
'sub.th.theme': 'Su tema (colores, navegación, estilos de Theme Roller) y sus componentes de plantilla se ofrecen a otras aplicaciones.',
|
|
6592
|
+
'sub.th.library': 'Sus listas de valores, esquemas de autorización, opciones de compilación, componentes de plantilla y listas se ofrecen a otras aplicaciones.',
|
|
6593
|
+
'sub.th.boilerplate': 'Un punto de partida: Crear aplicación puede copiarla.',
|
|
6594
|
+
'sub.th.reporting': 'Creada con App Builder → Data Reporter sobre conjuntos de datos del espacio de trabajo: sus usuarios crean, publican y comparten informes.',
|
|
6595
|
+
'sub.k.lov': 'Lista de valores',
|
|
6596
|
+
'sub.k.authz_scheme': 'Esquema de autorización',
|
|
6597
|
+
'sub.k.build_option': 'Opción de compilación',
|
|
6598
|
+
'sub.k.template_component': 'Componente de plantilla',
|
|
6599
|
+
'sub.k.list': 'Lista',
|
|
6600
|
+
'sub.what': '{kind} {name}',
|
|
6601
|
+
'sub.subscribed_from': 'Suscrito desde {master}. Los cambios hechos aquí se sobrescriben en la próxima actualización.',
|
|
6602
|
+
'sub.subscribed_from_at': 'Suscrito desde {master}, actualizado {at}. Los cambios hechos aquí se sobrescriben en la próxima actualización.',
|
|
6603
|
+
'sub.refresh_from': 'Actualizar desde {master}',
|
|
6604
|
+
'sub.subscribers_1': '1 aplicación se suscribe a este {kind}.',
|
|
6605
|
+
'sub.subscribers_n': '{n} aplicaciones se suscriben a este {kind}.',
|
|
6606
|
+
'sub.type_line': '{type}: {help} Cámbielo en {settings}.',
|
|
6607
|
+
'sub.choose_dash': '- elegir -',
|
|
6608
|
+
'sub.choose_component': 'Elija un componente.',
|
|
6609
|
+
'sub.choose_group': 'Elija un grupo de componentes.',
|
|
6610
|
+
'sub.subscribed': 'Suscrito: {what} copiado.',
|
|
6611
|
+
'sub.subscribed_group': 'Suscrito a {group}: {n} componentes copiados.',
|
|
6612
|
+
'sub.subscribed_group_1': 'Suscrito a {group}: 1 componente copiado.',
|
|
6613
|
+
'sub.subscribed_group_skipped': 'Suscrito a {group}: {n} componentes copiados; omitidos: {skipped}.',
|
|
6614
|
+
'sub.subscribed_group_skipped_1': 'Suscrito a {group}: 1 componente copiado; omitidos: {skipped}.',
|
|
6615
|
+
'sub.not_subscribed': 'No suscrito.',
|
|
6616
|
+
'sub.no_subscriber': 'Ninguna aplicación se suscribe a él.',
|
|
6617
|
+
'sub.published': 'Publicado en {n} aplicaciones.',
|
|
6618
|
+
'sub.published_1': 'Publicado en 1 aplicación.',
|
|
6619
|
+
'sub.published_skipped': 'Publicado en {n} aplicaciones; {skipped} omitida(s) (bloqueada(s) por otro desarrollador).',
|
|
6620
|
+
'sub.published_skipped_1': 'Publicado en 1 aplicación; {skipped} omitida(s) (bloqueada(s) por otro desarrollador).',
|
|
6621
|
+
'sub.title': 'Suscripciones de {app}',
|
|
6622
|
+
'util.pages': 'Páginas',
|
|
6623
|
+
'util.regions': 'Regiones',
|
|
6624
|
+
'util.items': 'Elementos',
|
|
6625
|
+
'util.processes': 'Procesos',
|
|
6626
|
+
'util.lists_of_values': 'Listas de valores',
|
|
6627
|
+
'util.changes_in_7_days': 'Cambios en 7 días',
|
|
6628
|
+
'util.page': 'Página',
|
|
6629
|
+
'util.last_change': 'Último cambio',
|
|
6630
|
+
'util.by': 'Por',
|
|
6631
|
+
'util.changes': 'Cambios',
|
|
6632
|
+
'util.no_recorded_changes_yet_the': 'Aún no hay cambios registrados: el historial de cambios empieza con el primer cambio tras la actualización a esta versión.',
|
|
6633
|
+
'util.the_checksum_of_the_application': 'La suma de comprobación de la definición de la aplicación (su exportación sin el alias): la misma definición da la misma suma en cualquier instalación, así que dos instalaciones, o una aplicación y su copia de trabajo, se comparan de un vistazo.',
|
|
6634
|
+
'util.checksum': 'Suma de comprobación',
|
|
6635
|
+
'util.every_change_made_in_the': 'Cada cambio hecho en el builder (y cada importación, restauración o fusión) se compara con la aplicación anterior: cada componente añadido, cambiado o eliminado aparece aquí con quién y cuándo. Los cambios desde la línea de comandos o el servidor MCP no tienen desarrollador.',
|
|
6636
|
+
'util.from': 'Desde',
|
|
6637
|
+
'util.to': 'Hasta',
|
|
6638
|
+
'util.component': 'Componente',
|
|
6639
|
+
'util.when': 'Cuándo',
|
|
6640
|
+
'util.developer': 'Desarrollador',
|
|
6641
|
+
'util.change': 'Cambio',
|
|
6642
|
+
'util.differences': 'Diferencias',
|
|
6643
|
+
'util.show': 'Mostrar',
|
|
6644
|
+
'util.icons': 'Iconos',
|
|
6645
|
+
'util.search': 'Buscar',
|
|
6646
|
+
'util.no_lucide_icon_matches': 'Ningún icono de Lucide coincide.',
|
|
6647
|
+
'util.search_to_see_the_matching': 'Busque para ver los iconos de Lucide que coinciden.',
|
|
6648
|
+
'util.e_g_p3_id': 'p. ej. P3_ID',
|
|
6649
|
+
'util.e_g_truck_money_arrow': 'p. ej. truck, money, arrow',
|
|
6650
|
+
'util.all': 'Todos',
|
|
6651
|
+
'util.plans_every_sql_statement_as': 'Planifica cada sentencia SQL como el rol de la aplicación y comprueba cada referencia.',
|
|
6652
|
+
'util.the_tables_views_sequences_and': 'Las tablas, vistas, secuencias y funciones que usa la aplicación, las que faltan y los permisos que faltan.',
|
|
6653
|
+
'util.who_changed_which_component_and': 'Quién cambió qué componente y cuándo, con las diferencias.',
|
|
6654
|
+
'util.components_that_can_use_a': 'Componentes que pueden usar un valor predeterminado más reciente de esta versión de pgkiln.',
|
|
6655
|
+
'util.labels_format_masks_help_and': 'Etiquetas, máscaras de formato, ayuda y listas de valores por columna de tabla, usadas por los asistentes de página.',
|
|
6656
|
+
'util.names_sql_conditions_settings_and': 'Nombres, SQL, condiciones, configuración y textos de ayuda de cada componente.',
|
|
6657
|
+
'util.timed_steps_of_each_request': 'Pasos cronometrados de cada solicitud y mensajes de meta.debug().',
|
|
6658
|
+
'util.page_views_errors_sign_ins': 'Vistas de página, errores, inicios de sesión y los registros de la aplicación.',
|
|
6659
|
+
'util.back_up_now_download_and': 'Hacer copia ahora, descargar y restaurar versiones anteriores.',
|
|
6660
|
+
'util.change_a_copy_compare_it': 'Modificar una copia, compararla y fusionarla de vuelta.',
|
|
6661
|
+
'util.browse_the_icons_the_icon': 'Explorar los iconos que ofrece el selector de iconos.',
|
|
6662
|
+
'util.application_dashboard': 'Panel de la aplicación',
|
|
6663
|
+
'util.recently_updated_pages': 'Páginas actualizadas recientemente',
|
|
6664
|
+
'util.application_checksum': 'Suma de comprobación de la aplicación',
|
|
6665
|
+
'util.change_history': 'Historial de cambios',
|
|
6666
|
+
'util.icon_browser': 'Explorador de iconos',
|
|
6667
|
+
'util.app_builder': 'App Builder',
|
|
6668
|
+
'util.utilities': 'Utilidades',
|
|
6669
|
+
'util.workspace_utilities': 'Utilidades del espacio de trabajo',
|
|
6670
|
+
'util.c_advisor': 'Asesor',
|
|
6671
|
+
'util.c_deps': 'Dependencias de objetos de base de datos',
|
|
6672
|
+
'util.c_history': 'Historial de cambios',
|
|
6673
|
+
'util.c_upgrade': 'Actualizar la aplicación',
|
|
6674
|
+
'util.c_ui_defaults': 'Valores predeterminados de la interfaz',
|
|
6675
|
+
'util.c_search': 'Buscar',
|
|
6676
|
+
'util.c_debug': 'Mensajes de depuración',
|
|
6677
|
+
'util.c_activity': 'Actividad',
|
|
6678
|
+
'util.c_backups': 'Copias de seguridad',
|
|
6679
|
+
'util.c_wc': 'Copias de trabajo',
|
|
6680
|
+
'util.c_export': 'Exportar',
|
|
6681
|
+
'util.c_icons': 'Iconos',
|
|
6682
|
+
'util.export_text': 'La aplicación como archivo (suma de comprobación {sum}).',
|
|
6683
|
+
'util.title': 'Utilidades · {app}',
|
|
6684
|
+
'util.cmd_line': 'Línea de comandos / importación',
|
|
6685
|
+
'util.import': 'importación',
|
|
6686
|
+
'util.command_line': 'línea de comandos',
|
|
6687
|
+
'util.the_command_line': 'la línea de comandos',
|
|
6688
|
+
'util.no_changes': 'Aún no hay cambios registrados.',
|
|
6689
|
+
'util.no_changes_filtered': 'No hay cambios con estos filtros.',
|
|
6690
|
+
'util.diff_title': 'Diferencias: {label}',
|
|
6691
|
+
'util.diff_intro': '{op} por {who}, {when}. Las líneas con {minus} son de antes del cambio; las líneas con {plus}, de después.',
|
|
6692
|
+
'util.history_title': 'Historial de cambios · {app}',
|
|
6693
|
+
'util.icons_intro': 'Los iconos del selector de iconos: el conjunto propio de pgkiln y {n} iconos de Lucide ({version}, licencia ISC). Use el nombre en un campo de icono; pueden seguirle modificadores como {lg}, {spin} o {success} (p. ej. {example}), y los nombres de Font APEX funcionan cuando Lucide tiene el mismo icono ({fa}).',
|
|
6694
|
+
'util.op.added': 'añadido',
|
|
6695
|
+
'util.op.changed': 'cambiado',
|
|
6696
|
+
'util.op.deleted': 'eliminado',
|
|
6697
|
+
'fdz.static_id': 'Id estático',
|
|
6698
|
+
'fdz.label': 'Etiqueta',
|
|
6699
|
+
'fdz.description_shown_to_designers': 'Descripción (visible para los diseñadores)',
|
|
6700
|
+
'fdz.key_column_identifies_a_row': 'Columna clave (identifica una fila)',
|
|
6701
|
+
'fdz.forms_on_it_may': 'Los formularios sobre ella pueden',
|
|
6702
|
+
'fdz.offer': 'Ofrecer',
|
|
6703
|
+
'fdz.column': 'Columna',
|
|
6704
|
+
'fdz.list_of_values': 'Lista de valores',
|
|
6705
|
+
'fdz.not_in_the_table': 'no está en la tabla',
|
|
6706
|
+
'fdz.remove_this_data_source_forms': 'Quitar este origen de datos (los formularios sobre él dejan de funcionar)',
|
|
6707
|
+
'fdz.form_designer_settings': 'Configuración del diseñador de formularios',
|
|
6708
|
+
'fdz.users_that_pass_the_designers': 'Los usuarios que superan el esquema de autorización de diseñadores crean formularios de entrada de datos sobre las tablas y vistas de abajo: eligen columnas ofrecidas, etiquetas, textos de ayuda, campos obligatorios y valores predeterminados, y publican formularios para todos los que pueden ver esta región. Los formularios leen y escriben filas como el rol de base de datos de la aplicación, así que se aplican los permisos y la seguridad a nivel de fila.',
|
|
6709
|
+
'fdz.forms': 'Formularios',
|
|
6710
|
+
'fdz.who_may_design_forms': 'Quién puede diseñar formularios',
|
|
6711
|
+
'fdz.rows_per_page': 'Filas por página',
|
|
6712
|
+
'fdz.text_when_there_are_no': 'Texto cuando no hay filas',
|
|
6713
|
+
'fdz.add_a_data_source': 'Añadir un origen de datos',
|
|
6714
|
+
'fdz.table_or_view': 'Tabla o vista',
|
|
6715
|
+
'fdz.all_columns_are_offered_at': 'Al principio se ofrecen todas las columnas (excepto las binarias y JSON), la clave primaria es la columna clave y los formularios pueden añadir y cambiar filas, no eliminarlas. Desmarque las columnas que los diseñadores no deben poner en formularios, como claves generadas y columnas de auditoría.',
|
|
6716
|
+
'fdz.save_form_designer_settings': 'Guardar la configuración del diseñador de formularios',
|
|
6717
|
+
'fdz.no_data_found': 'No se han encontrado datos',
|
|
6718
|
+
'fdz.from_the_name': 'a partir del nombre',
|
|
6719
|
+
'fdz.nobody_choose_an_authorization_scheme': 'Nadie (elija un esquema de autorización)',
|
|
6720
|
+
'fdz.add_rows': 'añadir filas',
|
|
6721
|
+
'fdz.change_rows': 'cambiar filas',
|
|
6722
|
+
'fdz.delete_rows': 'eliminar filas',
|
|
6723
|
+
'fdz.settings_saved': 'Configuración guardada.',
|
|
6724
|
+
'fdz.choose_a_table_or_view': 'Elija una tabla o vista para el nuevo origen de datos.',
|
|
6725
|
+
'fdz.no_authz': 'No existe el esquema de autorización {name}.',
|
|
6726
|
+
'fdz.no_columns': 'El origen de datos {id} no ofrece columnas.',
|
|
6727
|
+
'fdz.dup_source': 'Ya existe un origen de datos {id}.',
|
|
6728
|
+
'fdz.needs_key': '(necesita una columna clave)',
|
|
6729
|
+
'fdz.no_key': '- ninguna: los formularios solo añaden filas -',
|
|
6730
|
+
'fdz.offer_col': 'Ofrecer {col}',
|
|
6731
|
+
'fdz.label_of': 'Etiqueta de {col}',
|
|
6732
|
+
'fdz.lov_of': 'Lista de valores de {col}',
|
|
6733
|
+
'fdz.no_object': 'La tabla o vista {object} no existe (ya).',
|
|
6734
|
+
'fdz.lacks': 'Al rol de base de datos de la aplicación le falta {privs} sobre {object}: concédalo o los formularios no podrán hacerlo.',
|
|
6735
|
+
'pdz.p1_item_binds_an_item': '`:P1_ITEM` vincula el valor de un elemento en cualquier SQL (siempre escapado). `:APP_USER`, `:APP_PAGE_ID`, `:REQUEST` están integrados.',
|
|
6736
|
+
'pdz.p1_item_substitutes_into_titles': '`&P1_ITEM.` se sustituye en títulos, HTML estático y destinos de enlaces (con escape HTML).',
|
|
6737
|
+
'pdz.in_sql_pl_pgsql_and': 'En SQL, PL/pgSQL y políticas RLS: `meta.app_user()`, `meta.has_role(\'admin\')`, `meta.v(\'P1_ITEM\')`, `meta.page_url(3, \'{"P3_ID": 7}\')`.',
|
|
6738
|
+
'pdz.a_pl_pgsql_raise_exception': 'Un `raise exception \'Message\' using column = \'sal\'` de PL/pgSQL muestra el mensaje en el elemento cuya columna de origen es `sal`.',
|
|
6739
|
+
'pdz.layout': 'Diseño',
|
|
6740
|
+
'pdz.column_span': 'columnas ocupadas',
|
|
6741
|
+
'pdz.drag_a_region_by_its': 'Arrastre una región por su cabecera para moverla, o arrastre su borde derecho para hacerla más ancha o más estrecha.',
|
|
6742
|
+
'pdz.drag_items_and_buttons_to': 'Arrastre elementos y botones a otro lugar u otra región.',
|
|
6743
|
+
'pdz.drag_a_region_item_or': 'Arrastre una región, un elemento o un botón de la galería al diseño para crearlo; o abra una entrada de la galería para crearlo con un formulario.',
|
|
6744
|
+
'pdz.alt': 'Alt',
|
|
6745
|
+
'pdz.shift': 'Mayús',
|
|
6746
|
+
'pdz.arrange': 'Organizar',
|
|
6747
|
+
'pdz.undo': 'Deshacer',
|
|
6748
|
+
'pdz.redo': 'Rehacer',
|
|
6749
|
+
'pdz.cheat_sheet': 'Chuleta',
|
|
6750
|
+
'pdz.identification': 'Identificación',
|
|
6751
|
+
'pdz.appearance': 'Apariencia',
|
|
6752
|
+
'pdz.warn_on_unsaved_changes': 'Avisar de cambios no guardados',
|
|
6753
|
+
'pdz.ask_before_the_user_leaves': 'Preguntar antes de que el usuario salga de la página (un enlace, un botón de redirección, cerrar la pestaña) mientras un elemento tiene un valor cambiado. Enviar no pregunta. Excluya un elemento con {"warn_unsaved": false} en sus atributos.',
|
|
6754
|
+
'pdz.security': 'Seguridad',
|
|
6755
|
+
'pdz.requires_authentication': 'Requiere autenticación',
|
|
6756
|
+
'pdz.help': 'Ayuda',
|
|
6757
|
+
'pdz.help_text': 'Texto de ayuda',
|
|
6758
|
+
'pdz.markdown_with_amp_item_substitutions': 'Markdown con sustituciones &ITEM. Una región de tipo Texto de ayuda en la página lo muestra (APEX: Page → Help).',
|
|
6759
|
+
'pdz.page_number': 'Número de página',
|
|
6760
|
+
'pdz.name': 'Nombre',
|
|
6761
|
+
'pdz.title': 'Título',
|
|
6762
|
+
'pdz.page_mode': 'Modo de página',
|
|
6763
|
+
'pdz.page_group': 'Grupo de páginas',
|
|
6764
|
+
'pdz.page_template': 'Plantilla de página',
|
|
6765
|
+
'pdz.dialog_position': 'Posición del diálogo',
|
|
6766
|
+
'pdz.dialog_size': 'Tamaño del diálogo',
|
|
6767
|
+
'pdz.javascript_and_css_files': 'Archivos JavaScript y CSS',
|
|
6768
|
+
'pdz.breadcrumb_parent': 'Padre en la ruta de navegación',
|
|
6769
|
+
'pdz.authorization_scheme': 'Esquema de autorización',
|
|
6770
|
+
'pdz.page_access_protection': 'Protección de acceso a la página',
|
|
6771
|
+
'pdz.build_option': 'Opción de compilación',
|
|
6772
|
+
'pdz.e_g_page_3_js': 'p. ej. page-3.js, page-3.css',
|
|
6773
|
+
'pdz.static_application_files_js_css': 'Archivos estáticos de la aplicación (.js, .css) que esta página carga después de los de la aplicación, en este orden; #WORKSPACE_FILES#name para un archivo estático del espacio de trabajo.',
|
|
6774
|
+
'pdz.normal': 'Normal',
|
|
6775
|
+
'pdz.modal_dialog': 'Diálogo modal',
|
|
6776
|
+
'pdz.none': '- ninguno -',
|
|
6777
|
+
'pdz.standard': 'Estándar',
|
|
6778
|
+
'pdz.left_side_column': 'Columna lateral izquierda',
|
|
6779
|
+
'pdz.right_side_column': 'Columna lateral derecha',
|
|
6780
|
+
'pdz.minimal_no_navigation': 'Mínima (sin navegación)',
|
|
6781
|
+
'pdz.centred_dialog': 'Diálogo centrado',
|
|
6782
|
+
'pdz.drawer_from_the_right': 'Panel desde la derecha',
|
|
6783
|
+
'pdz.drawer_from_the_left': 'Panel desde la izquierda',
|
|
6784
|
+
'pdz.drawer_from_the_top': 'Panel desde arriba',
|
|
6785
|
+
'pdz.drawer_from_the_bottom': 'Panel desde abajo',
|
|
6786
|
+
'pdz.small': 'Pequeño',
|
|
6787
|
+
'pdz.medium': 'Mediano',
|
|
6788
|
+
'pdz.large': 'Grande',
|
|
6789
|
+
'pdz.arguments_must_have_checksum': 'Los argumentos deben tener suma de comprobación',
|
|
6790
|
+
'pdz.unrestricted': 'Sin restricciones',
|
|
6791
|
+
'pdz.organises_the_pages_in_the': 'Organiza las páginas en el App Builder (Componentes compartidos → Grupos de páginas). No cambia nada cuando la aplicación se ejecuta.',
|
|
6792
|
+
'pdz.side_column_regions_with_position': 'Columna lateral: las regiones con posición izquierda (o derecha) se muestran en una columna junto al cuerpo (debajo en pantallas estrechas). Mínima: sin cabecera ni menú de navegación, p. ej. para una página de inicio de sesión (Configuración de la aplicación → Página de inicio de sesión).',
|
|
6793
|
+
'pdz.modal_pages_only_on_phones': 'Solo páginas modales. En teléfonos, los diálogos y paneles laterales ocupan toda la pantalla.',
|
|
6794
|
+
'pdz.the_width_the_height_of': 'El ancho (la altura en los paneles superior e inferior).',
|
|
6795
|
+
'pdz.app_builder': 'App Builder',
|
|
6796
|
+
'pdz.grid_help': 'Las regiones se colocan en una cuadrícula de 12 columnas por orden de secuencia; las {span} de una región fijan su ancho, y las regiones pasan a una nueva fila cuando la fila está llena.',
|
|
6797
|
+
'pdz.keyboard_help': 'Teclado: enfoque un componente en el diseño y pulse {move} para moverlo, {resize} para cambiar el ancho de una región. Los botones {arrange} sobre las propiedades hacen lo mismo.',
|
|
6798
|
+
'pdz.undo_help': '{undo} y {redo} en la barra de herramientas revierten cambios de diseño.',
|
|
6799
|
+
'pdz.title_help': 'Admite sustituciones &ITEM.',
|
|
6800
|
+
'pdz.not_authz': 'No {name}',
|
|
6801
|
+
// ------------------------------------------------------------ Application groups, Find my workspace, static application files (sprint 164 part 11)
|
|
6802
|
+
'agr.exists': 'Ya existe un grupo con este nombre.',
|
|
6803
|
+
'agr.bad_name': 'El nombre tiene de 1 a 60 caracteres, sin espacios al principio ni al final.',
|
|
6804
|
+
'agr.intro': 'Los grupos organizan las aplicaciones de este espacio de trabajo ({workspace}) en la página de inicio de App Builder, que puede mostrar un grupo cada vez. No cambian nada en las aplicaciones.',
|
|
6805
|
+
'agr.groups': 'Grupos',
|
|
6806
|
+
'agr.group': 'Grupo',
|
|
6807
|
+
'agr.applications': 'Aplicaciones',
|
|
6808
|
+
'agr.application': 'Aplicación',
|
|
6809
|
+
'agr.rename': 'Cambiar nombre',
|
|
6810
|
+
'agr.new_name_for': 'Nuevo nombre para {name}',
|
|
6811
|
+
'agr.delete_confirm': '¿Eliminar el grupo {name}? Sus aplicaciones se mantienen, sin grupo.',
|
|
6812
|
+
'agr.delete_name': 'Eliminar {name}',
|
|
6813
|
+
'agr.no_groups': 'Todavía no hay grupos.',
|
|
6814
|
+
'agr.add_title': 'Añadir un grupo',
|
|
6815
|
+
'agr.name': 'Nombre',
|
|
6816
|
+
'agr.name_ph': 'Finanzas',
|
|
6817
|
+
'agr.description': 'Descripción',
|
|
6818
|
+
'agr.add': 'Añadir grupo',
|
|
6819
|
+
'agr.group_of': 'Grupo de {name}',
|
|
6820
|
+
'agr.no_group': '(sin grupo)',
|
|
6821
|
+
'agr.save': 'Guardar grupos',
|
|
6822
|
+
'agr.no_apps': 'No hay aplicaciones en este espacio de trabajo.',
|
|
6823
|
+
'agr.added': 'Grupo {name} añadido.',
|
|
6824
|
+
'agr.renamed': 'Grupo renombrado a {name}.',
|
|
6825
|
+
'agr.deleted': 'Grupo {name} eliminado.',
|
|
6826
|
+
'agr.saved': 'Grupos guardados.',
|
|
6827
|
+
'fw.mail_admin': 'administrador: todos los espacios de trabajo',
|
|
6828
|
+
'fw.mail_no_ws': 'Todavía ningún espacio de trabajo: pregunte a un administrador.',
|
|
6829
|
+
'fw.mail_intro': 'Ha preguntado en qué espacios de trabajo de pgkiln puede iniciar sesión.',
|
|
6830
|
+
'fw.mail_sign_in': 'Inicie sesión en {url}',
|
|
6831
|
+
'fw.mail_ignore': 'Si no lo ha pedido, puede ignorar este correo: no se ha cambiado nada.',
|
|
6832
|
+
'fw.mail_subject': 'Sus espacios de trabajo de pgkiln',
|
|
6833
|
+
'fw.back': 'Volver a iniciar sesión',
|
|
6834
|
+
'fw.no_mail': 'Esta instalación no envía correo a los desarrolladores. Pregunte a un administrador a qué espacios de trabajo pertenece, o inicie sesión solo con su nombre de usuario y contraseña: el espacio de trabajo es opcional.',
|
|
6835
|
+
'fw.check_mail': 'Revise su correo',
|
|
6836
|
+
'fw.intro': 'Introduzca la dirección de correo de su cuenta de desarrollador: le enviaremos su nombre de usuario y los espacios de trabajo en los que puede iniciar sesión.',
|
|
6837
|
+
'fw.send': 'Enviar',
|
|
6838
|
+
'fw.bad_email': 'Introduzca una dirección de correo, p. ej. ann@example.com.',
|
|
6839
|
+
'fw.sent': 'Si una cuenta de desarrollador tiene la dirección {email}, recibirá en unos minutos un correo con su nombre de usuario y sus espacios de trabajo. ¿No llega? Pregunte a un administrador.',
|
|
6840
|
+
'sf.edit_title': 'Editar {name}',
|
|
6841
|
+
'sf.new_file': 'Archivo nuevo',
|
|
6842
|
+
'sf.file_name': 'Nombre de archivo',
|
|
6843
|
+
'sf.file_name_help': 'Letras, dígitos, _, - y . (p. ej. app.js, styles.css, data.json).',
|
|
6844
|
+
'sf.content': 'Contenido',
|
|
6845
|
+
'sf.content_help': 'El JavaScript registra funciones para la acción dinámica «Execute JavaScript» con `pgkiln.actions.register(\'name\', (da) => { … })`; también puede usar `pgkiln.getValue`, `setValue`, `showSuccess` y `showError`. Sin scripts en línea: todo se ejecuta desde estos archivos.',
|
|
6846
|
+
'sf.title': 'Archivos estáticos de la aplicación',
|
|
6847
|
+
'sf.intro': 'JavaScript, CSS, JSON, imágenes y fuentes de esta aplicación, servidos en {path} y exportados con ella. Las páginas cargan los scripts y hojas de estilo elegidos abajo (y los que una página añade en sus propiedades), así que el código se ejecuta desde archivos, nunca en línea. Hasta {max} por archivo; sin HTML.',
|
|
6848
|
+
'sf.name': 'Nombre',
|
|
6849
|
+
'sf.type': 'Tipo',
|
|
6850
|
+
'sf.size': 'Tamaño',
|
|
6851
|
+
'sf.loaded_by': 'Cargado por',
|
|
6852
|
+
'sf.changed': 'Modificado',
|
|
6853
|
+
'sf.actions': 'Acciones',
|
|
6854
|
+
'sf.every_page': 'todas las páginas',
|
|
6855
|
+
'sf.pages': 'página {pages}',
|
|
6856
|
+
'sf.edit': 'Editar',
|
|
6857
|
+
'sf.delete_confirm': '¿Eliminar {name}?',
|
|
6858
|
+
'sf.delete_name': 'Eliminar {name}',
|
|
6859
|
+
'sf.no_files': 'Todavía no hay archivos.',
|
|
6860
|
+
'sf.files_to_upload': 'Archivos para subir',
|
|
6861
|
+
'sf.upload': 'Subir',
|
|
6862
|
+
'sf.replaced': 'Un archivo con el mismo nombre se sustituye.',
|
|
6863
|
+
'sf.every_page_loads': 'Todas las páginas cargan',
|
|
6864
|
+
'sf.includes': 'Scripts y hojas de estilo, en orden',
|
|
6865
|
+
'sf.includes_ph': 'p. ej. library.js, app.js, app-styles.css',
|
|
6866
|
+
'sf.includes_help': 'Hasta {max} archivos .js y .css, cargados en este orden después de los de pgkiln (scripts diferidos). #WORKSPACE_FILES#name es un archivo estático del espacio de trabajo (Utilidades del espacio de trabajo). Una página añade sus propios archivos en Página → Apariencia.',
|
|
6867
|
+
'sf.choose_files': 'Elija uno o más archivos.',
|
|
6868
|
+
'sf.too_large_name': '{name} supera {max}.',
|
|
6869
|
+
'sf.bad_type': '{name}: nombre o tipo no permitido (letras, dígitos, _, - y .; {types}).',
|
|
6870
|
+
'sf.uploaded': 'Subidos: {names}.',
|
|
6871
|
+
'sf.bad_text_name': 'El nombre debe terminar en un tipo de texto (.js, .css, .json, .txt, .csv, .md, .map) y usar solo letras, dígitos, _, - y .',
|
|
6872
|
+
'sf.too_large': 'El archivo supera {max}.',
|
|
6873
|
+
'sf.saved_name': '{name} guardado.',
|
|
6874
|
+
'sf.deleted': '{name} eliminado.',
|
|
6875
|
+
'sf.no_such_file': 'No existe ese archivo.',
|
|
6876
|
+
'sf.saved_missing': 'Guardado. Aún no subidos (se omiten hasta que lo estén): {names}.',
|
|
6877
|
+
'sf.saved': 'Guardado.',
|
|
4052
6878
|
// ------------------------------------------------------------ Notifications and live badges (sprint 165)
|
|
4053
6879
|
'nfy.heading': 'Notificaciones',
|
|
4054
6880
|
'nfy.bell': 'Campana de notificaciones en la cabecera',
|
|
@@ -4057,4 +6883,631 @@ export const es: BuilderMessages = {
|
|
|
4057
6883
|
'nfy.live_ph': 'p. ej. 60 (vacío: desactivado)',
|
|
4058
6884
|
'nfy.live_help': 'Cada tantos segundos (10 a 3600) una página abierta actualiza sus insignias en su sitio: el menú y la barra de navegación, los botones con consulta de insignia y la campana. No mientras la pestaña está oculta; no mantiene viva la sesión.',
|
|
4059
6885
|
'nfy.live_invalid': 'Insignias en vivo: un número entero de segundos de 10 a 3600, o vacío.',
|
|
6886
|
+
// ------------------------------------------------------------ Page and application locks, developer comments (sprint 164 part 12)
|
|
6887
|
+
'lk.run_only': 'La aplicación es «Solo ejecutar» (Disponibilidad → Estado de compilación).',
|
|
6888
|
+
'lk.page_locked_by': 'La página {page} está bloqueada por {user} desde {since}{note}.',
|
|
6889
|
+
'lk.app_locked_by': 'La aplicación está bloqueada por {user} desde {since}{note}.',
|
|
6890
|
+
'lk.run_only_refused': 'Vuelva a ponerla en «Ejecutar y compilar» para cambiarla.',
|
|
6891
|
+
'lk.refused': 'Los cambios se rechazan hasta que se desbloquee.',
|
|
6892
|
+
'lk.break_confirm_page': '¿Romper el bloqueo de {user} en la página {page}?',
|
|
6893
|
+
'lk.break_confirm_app': '¿Romper el bloqueo de {user} en la aplicación?',
|
|
6894
|
+
'lk.unlock': 'Desbloquear',
|
|
6895
|
+
'lk.break': 'Romper bloqueo (administrador)',
|
|
6896
|
+
'lk.only_owner': 'Solo {user} o un administrador puede desbloquearlo.',
|
|
6897
|
+
'lk.not_locked_page': 'Sin bloquear: cualquier desarrollador puede cambiar la página {page}.',
|
|
6898
|
+
'lk.not_locked_app': 'Sin bloquear: cualquier desarrollador puede cambiar la aplicación.',
|
|
6899
|
+
'lk.note': 'Nota',
|
|
6900
|
+
'lk.note_ph': 'Nota (opcional), p. ej. rehaciendo el formulario',
|
|
6901
|
+
'lk.lock_page': 'Bloquear la página {page}',
|
|
6902
|
+
'lk.lock_app': 'Bloquear la aplicación',
|
|
6903
|
+
'lk.lock': 'Bloqueo',
|
|
6904
|
+
'lk.comments': 'Comentarios',
|
|
6905
|
+
'lk.comment_on_page': 'Añadir un comentario sobre la página {page}',
|
|
6906
|
+
'lk.comment_on_app': 'Añadir un comentario sobre la aplicación',
|
|
6907
|
+
'lk.add_comment': 'Añadir comentario',
|
|
6908
|
+
'lk.delete_comment_confirm': '¿Eliminar este comentario?',
|
|
6909
|
+
'lk.delete': 'Eliminar',
|
|
6910
|
+
'lk.issue': 'Incidencia n.º {n}',
|
|
6911
|
+
'lk.make_issue': 'Crear una incidencia',
|
|
6912
|
+
'lk.no_comments': 'Todavía no hay comentarios.',
|
|
6913
|
+
'lk.locked_page': 'La página {page} está bloqueada: otros desarrolladores no pueden cambiarla hasta que la desbloquee.',
|
|
6914
|
+
'lk.locked_app': 'La aplicación está bloqueada: otros desarrolladores no pueden cambiarla hasta que la desbloquee.',
|
|
6915
|
+
'lk.already': 'Ya está bloqueado.',
|
|
6916
|
+
'lk.not_locked': 'No está bloqueado.',
|
|
6917
|
+
'lk.only_unlocker': 'Solo el desarrollador que lo bloqueó o un administrador puede desbloquearlo.',
|
|
6918
|
+
'lk.unlocked': 'Desbloqueado.',
|
|
6919
|
+
'lk.broken': 'Se rompió el bloqueo de {user}.',
|
|
6920
|
+
'lk.comment_length': 'Un comentario tiene de 1 a 4000 caracteres.',
|
|
6921
|
+
'lk.comment_added': 'Comentario añadido.',
|
|
6922
|
+
'lk.only_author': 'Solo el autor o un administrador puede eliminar un comentario.',
|
|
6923
|
+
'lk.comment_deleted': 'Comentario eliminado.',
|
|
6924
|
+
// ------------------------------------------------------------ Automations: actions and runs (sprint 164 part 12)
|
|
6925
|
+
'au.back_to': 'Volver a {name}',
|
|
6926
|
+
'au.failed_rows': '{n} fila(s) con error',
|
|
6927
|
+
'au.first': '(primeras {n})',
|
|
6928
|
+
'au.row_action': 'Fila {row}, acción {action}',
|
|
6929
|
+
'au.not_scheduled': 'no programada (desactivada)',
|
|
6930
|
+
'au.never': 'nunca: {message}',
|
|
6931
|
+
'au.scheduler_off': '(el planificador está desactivado en este servidor: AUTOMATIONS=off)',
|
|
6932
|
+
'au.actions': 'Acciones',
|
|
6933
|
+
'au.order_once': 'Se ejecutan en este orden, una vez, en una transacción.',
|
|
6934
|
+
'au.order_rows': 'Se ejecutan en este orden, para cada fila de la consulta, en una transacción.',
|
|
6935
|
+
'au.order_rows_skip': 'Se ejecutan en este orden, para cada fila de la consulta, en una transacción por ejecución; una fila que falla se revierte y se omite.',
|
|
6936
|
+
'au.seq': 'Sec.',
|
|
6937
|
+
'au.action': 'Acción',
|
|
6938
|
+
'au.condition': 'Condición',
|
|
6939
|
+
'au.order': 'Orden',
|
|
6940
|
+
'au.always': 'siempre',
|
|
6941
|
+
'au.move_up': 'Subir {name}',
|
|
6942
|
+
'au.move_down': 'Bajar {name}',
|
|
6943
|
+
'au.no_actions': 'Todavía no hay acciones: una ejecución no hace nada.',
|
|
6944
|
+
'au.add_action': 'Añadir acción',
|
|
6945
|
+
'au.runs': 'Ejecuciones',
|
|
6946
|
+
'au.next_run': 'Próxima ejecución: {when}',
|
|
6947
|
+
'au.from_code': 'Desde el código de la aplicación: {call} la ejecuta ahora, en la transacción de quien llama.',
|
|
6948
|
+
'au.run_now': 'Ejecutar ahora',
|
|
6949
|
+
'au.started': 'Inicio',
|
|
6950
|
+
'au.took': 'Duración',
|
|
6951
|
+
'au.by': 'Por',
|
|
6952
|
+
'au.status': 'Estado',
|
|
6953
|
+
'au.rows': 'Filas',
|
|
6954
|
+
'au.failed': 'Con error',
|
|
6955
|
+
'au.message': 'Mensaje',
|
|
6956
|
+
'au.no_runs': 'Todavía no hay ejecuciones.',
|
|
6957
|
+
'au.ran': 'Ejecutada correctamente.',
|
|
6958
|
+
'au.ran_rows': 'Ejecutada correctamente para {n} fila(s).',
|
|
6959
|
+
'au.ran_errors': 'Ejecutada con errores: {message}. Consulte el historial de ejecuciones.',
|
|
6960
|
+
'au.failed_run': 'La automatización ha fallado.',
|
|
6961
|
+
// ------------------------------------------------------------ Workflow versions and instances (sprint 164 part 12)
|
|
6962
|
+
'wfv.draft_new': 'Los pasos borrador pertenecen a una versión de desarrollo: cree el flujo de trabajo sin ellos y luego una versión nueva para modelar con borradores.',
|
|
6963
|
+
'wfv.draft_active': 'La versión {version} está activa: los pasos borrador pertenecen a una versión de desarrollo.',
|
|
6964
|
+
'wfv.active_fixed': 'La versión {version} está activa y no se puede cambiar. Cree una versión nueva para editar sus pasos.',
|
|
6965
|
+
'wfv.running': '({n} en ejecución)',
|
|
6966
|
+
'wfv.versions': 'Versiones',
|
|
6967
|
+
'wfv.intro': 'Las instancias nuevas inician la versión {active}; las que están en ejecución conservan la versión con la que empezaron. Edite una versión {development} y luego actívela.',
|
|
6968
|
+
'wfv.state.active': 'activa',
|
|
6969
|
+
'wfv.state.development': 'desarrollo',
|
|
6970
|
+
'wfv.state.inactive': 'inactiva',
|
|
6971
|
+
'wfv.version': 'Versión',
|
|
6972
|
+
'wfv.state': 'Estado',
|
|
6973
|
+
'wfv.activated': 'Activada',
|
|
6974
|
+
'wfv.instances': 'Instancias',
|
|
6975
|
+
'wfv.activate_confirm': '¿Activar la versión {version}? Las instancias nuevas la inician; las que están en ejecución conservan su versión.',
|
|
6976
|
+
'wfv.activate': 'Activar',
|
|
6977
|
+
'wfv.discard_confirm': '¿Descartar la versión {version} y sus cambios?',
|
|
6978
|
+
'wfv.discard': 'Descartar',
|
|
6979
|
+
'wfv.diagram': 'Diagrama',
|
|
6980
|
+
'wfv.new_label': 'Etiqueta de la versión nueva',
|
|
6981
|
+
'wfv.new': 'Crear versión nueva',
|
|
6982
|
+
'wfv.new_help': 'Una copia de la versión {version} para editar; la etiqueta es opcional ({next}).',
|
|
6983
|
+
'wfv.diagram_dev': 'Diagrama de la versión {version} (desarrollo)',
|
|
6984
|
+
'wfv.diagram_of': 'Diagrama de la versión {version}',
|
|
6985
|
+
'wfv.drafts': 'Los pasos borrador ({steps}) son marcadores: sustitúyalos antes de activar la versión {version}.',
|
|
6986
|
+
'wfv.svg': 'Descargar SVG',
|
|
6987
|
+
'wfv.png': 'Descargar PNG',
|
|
6988
|
+
'wfv.counts': 'Instancias: {counts}. Las instancias en ejecución conservan los pasos de la versión con la que empezaron.',
|
|
6989
|
+
'wfv.none_yet': 'ninguna todavía',
|
|
6990
|
+
'wfv.migrate_title': 'Migrar las instancias en ejecución a una versión más nueva',
|
|
6991
|
+
'wfv.migrate': 'Migrar instancias…',
|
|
6992
|
+
'wfv.id': 'Id',
|
|
6993
|
+
'wfv.title': 'Título',
|
|
6994
|
+
'wfv.at': 'En',
|
|
6995
|
+
'wfv.started': 'Inicio',
|
|
6996
|
+
'wfv.instance_at': 'Instancia {id}, versión {version}: en {steps}',
|
|
6997
|
+
'wfv.instance': 'Instancia {id}, versión {version}',
|
|
6998
|
+
'wfv.pick': 'Elija una instancia para ver dónde está en el diagrama de su versión.',
|
|
6999
|
+
'wfv.bad_label': 'Una etiqueta de versión tiene letras, dígitos, puntos, guiones y guiones bajos (como máximo 30).',
|
|
7000
|
+
'wfv.created': 'Versión {version} creada (desarrollo): edite sus pasos y luego actívela.',
|
|
7001
|
+
'wfv.no_dev': 'No hay ninguna versión en desarrollo.',
|
|
7002
|
+
'wfv.cant_activate': 'La versión {version} no se puede activar: {problems}',
|
|
7003
|
+
'wfv.activated_flash': 'La versión {version} está activa: las instancias nuevas la inician.',
|
|
7004
|
+
'wfv.discarded': 'Versión {version} descartada.',
|
|
7005
|
+
'wfv.was_no_dev': 'No había ninguna versión en desarrollo.',
|
|
7006
|
+
// ------------------------------------------------------------ Workflow migration (sprint 164 part 12)
|
|
7007
|
+
'wfm.no_steps': 'Esta versión no tiene pasos que dibujar.',
|
|
7008
|
+
'wfm.choose_instances': 'Elija las instancias que migrar.',
|
|
7009
|
+
'wfm.title': 'Migrar instancias en ejecución',
|
|
7010
|
+
'wfm.none_running': '{name} no tiene instancias en ejecución.',
|
|
7011
|
+
'wfm.back_to': 'Volver a {name}',
|
|
7012
|
+
'wfm.all_current': 'Todas las instancias en ejecución de {name} usan la versión activa {version}: no hay una versión más nueva a la que moverlas.',
|
|
7013
|
+
'wfm.intro': 'Mueva las instancias en ejecución a una versión más nueva: cada una continúa en el paso de la versión nueva al que se asigna su paso actual, conservando sus variables y la tarea que espera. Una instancia dentro de ramas paralelas se mueve entera: su camino principal en su unión y cada rama abierta en su propio paso, cada uno asignado (una unión sigue siendo una unión). Cada posición necesita una asignación o no se mueve nada.',
|
|
7014
|
+
'wfm.to_version': 'A la versión',
|
|
7015
|
+
'wfm.to_help': 'Si la cambia: vuelva a previsualizar para ver sus pasos.',
|
|
7016
|
+
'wfm.older': 'Instancias en una versión anterior',
|
|
7017
|
+
'wfm.migrate': 'Migrar',
|
|
7018
|
+
'wfm.migrate_instance': 'Migrar la instancia {id}',
|
|
7019
|
+
'wfm.branches_at': 'ramas en {steps}',
|
|
7020
|
+
'wfm.none_older': 'Ninguna instancia en ejecución es anterior a la versión {version}.',
|
|
7021
|
+
'wfm.map': 'Asignar los pasos actuales a pasos de la versión {version}',
|
|
7022
|
+
'wfm.no_mapping': '— sin asignación —',
|
|
7023
|
+
'wfm.preview': 'Vista previa',
|
|
7024
|
+
'wfm.path': 'Camino',
|
|
7025
|
+
'wfm.from': 'Desde',
|
|
7026
|
+
'wfm.to': 'A',
|
|
7027
|
+
'wfm.result': 'Resultado',
|
|
7028
|
+
'wfm.branch': 'rama {name}',
|
|
7029
|
+
'wfm.main': 'principal',
|
|
7030
|
+
'wfm.ready': 'lista',
|
|
7031
|
+
'wfm.confirm': '¿Migrar {n} instancia(s) a la versión {version}?',
|
|
7032
|
+
'wfm.do': 'Migrar {n} instancia(s)',
|
|
7033
|
+
'wfm.not_ready': 'Asigne un paso para cada instancia y rama (o deje fuera las instancias) y vuelva a previsualizar: no se migra nada mientras una no pueda moverse.',
|
|
7034
|
+
'wfm.version': 'Versión {version}',
|
|
7035
|
+
'wfm.page_title': 'Migrar {name}',
|
|
7036
|
+
'wfm.crumb': 'Migrar instancias',
|
|
7037
|
+
'wfm.choose_version': 'Elija la versión a la que migrar.',
|
|
7038
|
+
'wfm.done': '{n} instancia(s) de {name} migrada(s) a la versión {version}.',
|
|
7039
|
+
// ------------------------------------------------------------ Upgrade application (sprint 164 part 13)
|
|
7040
|
+
'upg.rule_nav_title': 'Apariencia de la navegación',
|
|
7041
|
+
'upg.rule_nav_since': 'Las apariencias de navegación (Pillar Light, Pillar Dark) llegaron con el sprint 117.',
|
|
7042
|
+
'upg.rule_date_title': 'Selector de fecha para columnas de fecha',
|
|
7043
|
+
'upg.rule_date_since': 'Los elementos de fecha y de fecha y hora tienen el selector de fecha de pgkiln desde el sprint 84.',
|
|
7044
|
+
'upg.rule_popup_title': 'Lista de valores paginada para tablas grandes',
|
|
7045
|
+
'upg.rule_popup_since': 'Las listas de valores emergentes buscan y paginan en el servidor.',
|
|
7046
|
+
'upg.label_theme': 'Configuración de la aplicación › Tema',
|
|
7047
|
+
'upg.reason_nav': 'La aplicación no tiene apariencia de navegación: Pillar Light le da la franja de cabecera y la página actual rellena de las aplicaciones nuevas.',
|
|
7048
|
+
'upg.label_item': 'Página {page} › elemento {name}',
|
|
7049
|
+
'upg.reason_date': '{column} es una columna {type} mostrada como campo de texto: un elemento de fecha tiene el selector de fecha y lee la fecha en el formato de la aplicación.',
|
|
7050
|
+
'upg.reason_datetime': '{column} es una columna {type} mostrada como campo de texto: un elemento de fecha y hora tiene el selector de fecha y lee la fecha en el formato de la aplicación.',
|
|
7051
|
+
'upg.reason_popup': 'Su lista de valores lee {table} (unas {n} filas): una lista de selección envía todas las filas con la página; una lista de valores emergente busca y pagina en el servidor.',
|
|
7052
|
+
'upg.col_component': 'Componente',
|
|
7053
|
+
'upg.col_why': 'Motivo',
|
|
7054
|
+
'upg.col_actions': 'Acciones',
|
|
7055
|
+
'upg.preview': 'Vista previa',
|
|
7056
|
+
'upg.upgrade': 'Actualizar',
|
|
7057
|
+
'upg.upgrade_all': 'Actualizar los {n}',
|
|
7058
|
+
'upg.nothing': 'Nada que actualizar.',
|
|
7059
|
+
'upg.intro': 'Componentes creados antes de una versión de pgkiln que trajo un mejor valor predeterminado. Vea un cambio en vista previa y luego actualice un componente o todos los de un tipo; cada actualización queda en el historial de cambios (y en las copias de seguridad) por si quiere volver atrás.',
|
|
7060
|
+
'upg.preview_title': 'Vista previa: {label}',
|
|
7061
|
+
'upg.title': 'Actualizar la aplicación · {name}',
|
|
7062
|
+
'upg.gone': 'Nada que actualizar: el componente se cambió o se actualizó entretanto.',
|
|
7063
|
+
'upg.done_one': '{label} actualizado.',
|
|
7064
|
+
'upg.done_n': '{n} componentes actualizados.',
|
|
7065
|
+
// ------------------------------------------------------------ Report layouts: logo (sprint 164 part 13)
|
|
7066
|
+
'lay.logo_image': 'Imagen del logotipo',
|
|
7067
|
+
'lay.logo_alt': 'Logotipo de este diseño',
|
|
7068
|
+
'lay.no_logo': 'Sin logotipo. Se imprime arriba a la derecha de la primera página.',
|
|
7069
|
+
'lay.logo_file': 'Logotipo (PNG o JPEG)',
|
|
7070
|
+
'lay.upload': 'Subir',
|
|
7071
|
+
'lay.remove': 'Quitar el logotipo',
|
|
7072
|
+
'lay.preview_pdf': 'Vista previa del PDF',
|
|
7073
|
+
'lay.removed': 'Logotipo quitado.',
|
|
7074
|
+
'lay.choose': 'Elija un archivo PNG o JPEG.',
|
|
7075
|
+
'lay.too_large': 'El logotipo ocupa más de {mb} MB.',
|
|
7076
|
+
'lay.not_image': 'El logotipo debe ser una imagen PNG o JPEG.',
|
|
7077
|
+
'lay.saved': 'Logotipo guardado.',
|
|
7078
|
+
// ------------------------------------------------------------ Object dependencies (sprint 164 part 13)
|
|
7079
|
+
'dep.not_parsed': 'No analizado (solo se analizan SELECT, INSERT, UPDATE, DELETE y MERGE): {statements}',
|
|
7080
|
+
'dep.page_tag': 'página {n}',
|
|
7081
|
+
'dep.col_object': 'Objeto',
|
|
7082
|
+
'dep.col_type': 'Tipo',
|
|
7083
|
+
'dep.col_status': 'Estado',
|
|
7084
|
+
'dep.col_pages': 'Páginas',
|
|
7085
|
+
'dep.col_used_by': 'Usado por',
|
|
7086
|
+
'dep.missing': 'Falta',
|
|
7087
|
+
'dep.no_grant': 'Sin privilegio',
|
|
7088
|
+
'dep.lacks': 'A {role} le falta {privileges}',
|
|
7089
|
+
'dep.ok': 'OK',
|
|
7090
|
+
'dep.n_component': '{n} componente',
|
|
7091
|
+
'dep.n_components': '{n} componentes',
|
|
7092
|
+
'dep.no_objects': 'No hay objetos.',
|
|
7093
|
+
'dep.no_match': 'Ningún objeto coincide.',
|
|
7094
|
+
'dep.intro': 'Las tablas, vistas, secuencias y funciones que usa el SQL de la aplicación ({n} sentencias analizadas como el rol {role}; no se ejecuta nada), con los componentes que las usan. Se marcan los objetos que faltan y los privilegios que le faltan al rol.',
|
|
7095
|
+
'dep.runtime_connection': '(la conexión de ejecución)',
|
|
7096
|
+
'dep.n_objects': '{n} objetos',
|
|
7097
|
+
'dep.n_missing': '{n} faltan',
|
|
7098
|
+
'dep.n_without_grants': '{n} sin los privilegios que necesitan',
|
|
7099
|
+
'dep.filter': 'Filtrar',
|
|
7100
|
+
'dep.filter_ph': 'p. ej., sales.orders',
|
|
7101
|
+
'dep.all_objects': 'Todos los objetos',
|
|
7102
|
+
'dep.only_problems': 'Solo problemas',
|
|
7103
|
+
'dep.not_scanned': 'No analizado',
|
|
7104
|
+
'dep.note': 'Nota',
|
|
7105
|
+
'dep.title': 'Dependencias de objetos · {name}',
|
|
7106
|
+
'dep.crumb': 'Dependencias de objetos',
|
|
7107
|
+
// ------------------------------------------------------------ UI defaults (sprint 164 part 13)
|
|
7108
|
+
'uid.schema': 'Esquema',
|
|
7109
|
+
'uid.choose_schema': 'Elija un esquema',
|
|
7110
|
+
'uid.table_or_view': 'Tabla o vista',
|
|
7111
|
+
'uid.choose_table': 'Elija una tabla',
|
|
7112
|
+
'uid.col_column': 'Columna',
|
|
7113
|
+
'uid.col_label': 'Etiqueta',
|
|
7114
|
+
'uid.col_mask': 'Máscara de formato',
|
|
7115
|
+
'uid.col_alignment': 'Alineación',
|
|
7116
|
+
'uid.col_help': 'Ayuda',
|
|
7117
|
+
'uid.col_lov': 'Lista de valores',
|
|
7118
|
+
'uid.label_of': 'Etiqueta de {column}',
|
|
7119
|
+
'uid.mask_of': 'Máscara de formato de {column}',
|
|
7120
|
+
'uid.alignment_of': 'Alineación de {column}',
|
|
7121
|
+
'uid.help_of': 'Ayuda de {column}',
|
|
7122
|
+
'uid.lov_of': 'Lista de valores de {column}',
|
|
7123
|
+
'uid.seed': 'Rellenar desde los comentarios',
|
|
7124
|
+
'uid.help': 'Una fila vacía no tiene valor predeterminado de la interfaz. El marcador de posición de una etiqueta muestra lo que usan los asistentes sin él. Listas de valores: `LOV:NAME` (una lista de valores compartida de la aplicación), `STATIC:Yes;Y,No;N` o una consulta (`select name d, id r from sales.status`).',
|
|
7125
|
+
'uid.per_column': 'Valores predeterminados de la interfaz por columna',
|
|
7126
|
+
'uid.intro': 'Etiqueta, máscara de formato, texto de ayuda, alineación y lista de valores por columna de tabla (APEX: Attribute Dictionary). Los asistentes de páginas y el asistente Crear aplicación usan la etiqueta en cada encabezado de informe y elemento de formulario generados, y un elemento de formulario generado recibe además la máscara de formato, la ayuda y la lista de valores. Se aplican a las páginas generadas después del cambio, en todas las aplicaciones.',
|
|
7127
|
+
'uid.seeded_one': 'Valores predeterminados de la interfaz de {n} columna creados a partir de su comentario.',
|
|
7128
|
+
'uid.seeded': 'Valores predeterminados de la interfaz de {n} columnas creados a partir de sus comentarios.',
|
|
7129
|
+
'uid.no_comments': 'Ninguna columna sin valor predeterminado de la interfaz tiene comentario.',
|
|
7130
|
+
'uid.bad_mask': 'Máscara de formato de {column}: solo letras, dígitos y . , : / - (p. ej., 999G990D00 o DD.MM.YYYY).',
|
|
7131
|
+
'uid.bad_alignment': 'Alineación de {column}: start, center o end.',
|
|
7132
|
+
'uid.saved': 'Valores predeterminados de la interfaz de {table} guardados.',
|
|
7133
|
+
// ------------------------------------------------------------ Supporting objects (sprint 164 part 13)
|
|
7134
|
+
'sup.statement': 'Sentencia',
|
|
7135
|
+
'sup.rows': '{command}, {n} fila(s)',
|
|
7136
|
+
'sup.ran_install': 'Los scripts de instalación se ejecutaron: {n} sentencia(s), confirmadas.',
|
|
7137
|
+
'sup.ran_upgrade': 'Los scripts de actualización se ejecutaron: {n} sentencia(s), confirmadas.',
|
|
7138
|
+
'sup.ran_deinstall': 'Los scripts de desinstalación se ejecutaron: {n} sentencia(s), confirmadas.',
|
|
7139
|
+
'sup.failed_install': 'Los scripts de instalación fallaron: todo lo que hicieron se deshizo (rollback).',
|
|
7140
|
+
'sup.failed_upgrade': 'Los scripts de actualización fallaron: todo lo que hicieron se deshizo (rollback).',
|
|
7141
|
+
'sup.failed_deinstall': 'Los scripts de desinstalación fallaron: todo lo que hicieron se deshizo (rollback).',
|
|
7142
|
+
'sup.error': 'Error: {message}',
|
|
7143
|
+
'sup.imported': 'Esta aplicación vino con objetos de soporte. {b}No{b_end} se ejecutaron: léalos abajo y ejecútelos solo si confía en ellos.',
|
|
7144
|
+
'sup.result_install': 'Resultado: scripts de instalación',
|
|
7145
|
+
'sup.result_upgrade': 'Resultado: scripts de actualización',
|
|
7146
|
+
'sup.result_deinstall': 'Resultado: scripts de desinstalación',
|
|
7147
|
+
'sup.intro': 'Scripts que instalan, actualizan o eliminan lo que la aplicación necesita en la base de datos. Viajan con la exportación y solo se ejecutan desde aquí, cuando usted lo decide: como el rol de base de datos de la aplicación {role}, sentencia por sentencia en una transacción (un error deshace toda la ejecución). {add} en Componentes compartidos.',
|
|
7148
|
+
'sup.no_role': '(ninguno: la conexión de ejecución)',
|
|
7149
|
+
'sup.add_script': 'Añadir un script',
|
|
7150
|
+
'sup.h_install': 'Scripts de instalación ({n})',
|
|
7151
|
+
'sup.h_upgrade': 'Scripts de actualización ({n})',
|
|
7152
|
+
'sup.h_deinstall': 'Scripts de desinstalación ({n})',
|
|
7153
|
+
'sup.edit': 'Editar',
|
|
7154
|
+
'sup.run_install': 'Ejecutar los scripts de instalación',
|
|
7155
|
+
'sup.run_upgrade': 'Ejecutar los scripts de actualización',
|
|
7156
|
+
'sup.run_deinstall': 'Ejecutar los scripts de desinstalación',
|
|
7157
|
+
'sup.confirm_install': '¿Ejecutar los scripts de instalación de {app} como {role}?',
|
|
7158
|
+
'sup.confirm_upgrade': '¿Ejecutar los scripts de actualización de {app} como {role}?',
|
|
7159
|
+
'sup.confirm_deinstall': '¿Ejecutar los scripts de desinstalación de {app} como {role}?',
|
|
7160
|
+
'sup.runtime_connection': 'la conexión de ejecución',
|
|
7161
|
+
'sup.none': 'Ninguno.',
|
|
7162
|
+
'sup.unknown_kind': 'Tipo de script desconocido',
|
|
7163
|
+
// ------------------------------------------------------------ Cross-application reports (sprint 164 part 13)
|
|
7164
|
+
'xap.attributes.title': 'Atributos de la aplicación',
|
|
7165
|
+
'xap.attributes.about': 'La configuración principal de cada aplicación: tipo, inicio de sesión, disponibilidad, estado de compilación, nivel de depuración, idioma y rol de base de datos.',
|
|
7166
|
+
'xap.build_options.title': 'Opciones de compilación',
|
|
7167
|
+
'xap.build_options.about': 'Las opciones de compilación de cada aplicación y si sus componentes están incluidos.',
|
|
7168
|
+
'xap.comments.title': 'Comentarios de desarrolladores',
|
|
7169
|
+
'xap.comments.about': 'Los comentarios de los desarrolladores sobre aplicaciones y páginas, los más recientes primero.',
|
|
7170
|
+
'xap.authentication.title': 'Autenticación',
|
|
7171
|
+
'xap.authentication.about': 'Cómo inician sesión las personas en cada aplicación: el método de inicio de sesión, el inicio de sesión con contraseña, los proveedores de identidad y directorios LDAP, el control de acceso, la página de inicio de sesión y «¿Olvidó su contraseña?».',
|
|
7172
|
+
'xap.authorization.title': 'Esquemas de autorización',
|
|
7173
|
+
'xap.authorization.about': 'Los esquemas de autorización de cada aplicación: su tipo y lo que comprueban.',
|
|
7174
|
+
'xap.password_items.title': 'Elementos de contraseña',
|
|
7175
|
+
'xap.password_items.about': 'Cada elemento de contraseña: pgkiln nunca vuelve a mostrar sus valores, nunca los conserva en el estado de sesión para la página siguiente y nunca los escribe en el registro de depuración.',
|
|
7176
|
+
'xap.theme.title': 'Resumen de temas',
|
|
7177
|
+
'xap.theme.about': 'El aspecto de cada aplicación: estilo base, estilo de Theme Roller, navegación y los colores que define.',
|
|
7178
|
+
'xap.col.alias': 'Alias',
|
|
7179
|
+
'xap.col.type': 'Tipo',
|
|
7180
|
+
'xap.col.sign_in': 'Inicio de sesión',
|
|
7181
|
+
'xap.col.availability': 'Disponibilidad',
|
|
7182
|
+
'xap.col.build_status': 'Estado de compilación',
|
|
7183
|
+
'xap.col.debug': 'Depuración',
|
|
7184
|
+
'xap.col.language': 'Idioma',
|
|
7185
|
+
'xap.col.database_role': 'Rol de base de datos',
|
|
7186
|
+
'xap.col.updated': 'Actualizado',
|
|
7187
|
+
'xap.col.build_option': 'Opción de compilación',
|
|
7188
|
+
'xap.col.status': 'Estado',
|
|
7189
|
+
'xap.col.description': 'Descripción',
|
|
7190
|
+
'xap.col.page': 'Página',
|
|
7191
|
+
'xap.col.author': 'Autor',
|
|
7192
|
+
'xap.col.written': 'Escrito',
|
|
7193
|
+
'xap.col.comment': 'Comentario',
|
|
7194
|
+
'xap.col.passwords': 'Contraseñas',
|
|
7195
|
+
'xap.col.identity_providers': 'Proveedores de identidad',
|
|
7196
|
+
'xap.col.ldap_directories': 'Directorios LDAP',
|
|
7197
|
+
'xap.col.access': 'Acceso',
|
|
7198
|
+
'xap.col.keep_me_signed_in_days': 'Mantener la sesión iniciada (días)',
|
|
7199
|
+
'xap.col.login_page': 'Página de inicio de sesión',
|
|
7200
|
+
'xap.col.forgot_password': 'Contraseña olvidada',
|
|
7201
|
+
'xap.col.scheme': 'Esquema',
|
|
7202
|
+
'xap.col.checks': 'Comprueba',
|
|
7203
|
+
'xap.col.error_message': 'Mensaje de error',
|
|
7204
|
+
'xap.col.item': 'Elemento',
|
|
7205
|
+
'xap.col.label': 'Etiqueta',
|
|
7206
|
+
'xap.col.show_button': 'Botón Mostrar',
|
|
7207
|
+
'xap.col.required': 'Obligatorio',
|
|
7208
|
+
'xap.col.base_style': 'Estilo base',
|
|
7209
|
+
'xap.col.style': 'Estilo',
|
|
7210
|
+
'xap.col.navigation': 'Navegación',
|
|
7211
|
+
'xap.col.colours_set': 'Colores definidos',
|
|
7212
|
+
'xap.col.installable_pwa': 'Instalable (PWA)',
|
|
7213
|
+
'xap.of_workspace': 'Aplicaciones del espacio de trabajo {name}.',
|
|
7214
|
+
'xap.nav': 'Informes entre aplicaciones',
|
|
7215
|
+
'xap.application': 'Aplicación',
|
|
7216
|
+
'xap.nothing': 'No hay nada que informar en este espacio de trabajo.',
|
|
7217
|
+
// ------------------------------------------------------------ Workspace export and import (sprint 164 part 13)
|
|
7218
|
+
'wtr.admins_only': 'Solo los administradores y los administradores del espacio de trabajo exportan o importan los componentes de un espacio de trabajo.',
|
|
7219
|
+
'wtr.components': 'Componentes',
|
|
7220
|
+
'wtr.in_file': 'en el archivo',
|
|
7221
|
+
'wtr.issues': '{n} incidencia(s)',
|
|
7222
|
+
'wtr.intro': 'Los componentes del espacio de trabajo {name} en un solo archivo: para copiarlos a otro espacio de trabajo o instalación, o para guardarlos con los archivos de sus aplicaciones. Las aplicaciones se exportan por separado (App Builder → una aplicación → Exportar).',
|
|
7223
|
+
'wtr.imported_into': 'Importado en {name}:',
|
|
7224
|
+
'wtr.export': 'Exportar',
|
|
7225
|
+
'wtr.import': 'Importar',
|
|
7226
|
+
'wtr.not_in_file': 'No incluido en el archivo: el nombre del espacio de trabajo, su aislamiento y roles de base de datos, contraseñas y secretos, ejecuciones de scripts y otro historial.',
|
|
7227
|
+
'wtr.import_intro': 'Un archivo exportado de un espacio de trabajo, importado en {name}. No se elimina nada; los desarrolladores solo se añaden cuando esta instalación tiene un desarrollador con ese nombre.',
|
|
7228
|
+
'wtr.file': 'Archivo del espacio de trabajo',
|
|
7229
|
+
'wtr.replace': 'Reemplazar los componentes con el mismo nombre (si no, se conservan los de este espacio de trabajo)',
|
|
7230
|
+
'wtr.choose_part': 'Elija al menos un tipo de componente.',
|
|
7231
|
+
'wtr.too_big': 'El archivo supera los {n} MB.',
|
|
7232
|
+
'wtr.choose_file': 'Elija un archivo de espacio de trabajo.',
|
|
7233
|
+
'wtr.not_json': 'El archivo no es JSON válido.',
|
|
7234
|
+
'wtr.failed': 'La importación falló, no se cambió nada: {reason}',
|
|
7235
|
+
'wtr.refused_value': 'el archivo tiene un valor que esta instalación rechaza ({detail}).',
|
|
7236
|
+
'wtr.duplicate': 'el archivo tiene dos componentes con el mismo nombre ({detail}).',
|
|
7237
|
+
'wtr.part.settings': 'Configuración: descripción, mensaje, banner y preferencias',
|
|
7238
|
+
'wtr.part.developers': 'Desarrolladores y administradores del espacio de trabajo',
|
|
7239
|
+
'wtr.part.app_groups': 'Grupos de aplicaciones',
|
|
7240
|
+
'wtr.part.extension_links': 'Enlaces de extensión',
|
|
7241
|
+
'wtr.part.rest_catalogs': 'Catálogos de orígenes REST',
|
|
7242
|
+
'wtr.part.sql_scripts': 'Scripts SQL',
|
|
7243
|
+
'wtr.part.blueprints': 'Planos',
|
|
7244
|
+
'wtr.part.data_generators': 'Generadores de datos',
|
|
7245
|
+
'wtr.part.datasets': 'Conjuntos de datos de Data Reporter',
|
|
7246
|
+
'wtr.part.team': 'Team Development: etiquetas, hitos, plantillas e incidencias',
|
|
7247
|
+
'wtr.part.workspace_files': 'Archivos estáticos del espacio de trabajo',
|
|
7248
|
+
'wtr.part.remote_servers': 'Servidores remotos (un servidor existente conserva su URL base)',
|
|
7249
|
+
'wtr.part.web_credentials': 'Credenciales web (sin sus secretos)',
|
|
7250
|
+
// ------------------------------------------------------------ Application backups (sprint 164 part 13)
|
|
7251
|
+
'bkp.reason.import': 'antes de una importación',
|
|
7252
|
+
'bkp.reason.merge': 'antes de fusionar una copia de trabajo',
|
|
7253
|
+
'bkp.reason.restore': 'antes de una restauración',
|
|
7254
|
+
'bkp.reason.daily': 'diaria',
|
|
7255
|
+
'bkp.reason.manual': 'hecha a mano',
|
|
7256
|
+
'bkp.intro': 'Exportaciones de esta aplicación que conserva esta instalación: una antes de cada importación que la reemplaza (también desde la línea de comandos y el servidor MCP), antes de fusionar una copia de trabajo y de una restauración, una al día cuando ha cambiado, y las creadas aquí. Se conservan las {n} más recientes. Las copias de seguridad no se exportan.',
|
|
7257
|
+
'bkp.made_utc': 'Creada (UTC)',
|
|
7258
|
+
'bkp.made': 'Creada',
|
|
7259
|
+
'bkp.why': 'Motivo',
|
|
7260
|
+
'bkp.by': 'Por',
|
|
7261
|
+
'bkp.note': 'Nota',
|
|
7262
|
+
'bkp.size': 'Tamaño',
|
|
7263
|
+
'bkp.actions': 'Acciones',
|
|
7264
|
+
'bkp.download': 'Descargar',
|
|
7265
|
+
'bkp.restore_confirm': '¿Restaurar la aplicación tal como estaba el {when}? Sus páginas, componentes compartidos y configuración pasan a ser los de la copia de seguridad; primero se hace una copia de seguridad de la versión actual.',
|
|
7266
|
+
'bkp.restore': 'Restaurar',
|
|
7267
|
+
'bkp.delete_confirm': '¿Eliminar esta copia de seguridad?',
|
|
7268
|
+
'bkp.delete': 'Eliminar',
|
|
7269
|
+
'bkp.none': 'Aún no hay copias de seguridad.',
|
|
7270
|
+
'bkp.back_up_now': 'Hacer copia de seguridad ahora',
|
|
7271
|
+
'bkp.note_placeholder': 'p. ej., antes del nuevo panel',
|
|
7272
|
+
'bkp.keep': 'Conservar',
|
|
7273
|
+
'bkp.to_keep': 'Copias de seguridad que conservar',
|
|
7274
|
+
'bkp.to_keep_help': 'De 0 a 500; 0 no crea ninguna copia de seguridad (tampoco antes de una importación).',
|
|
7275
|
+
'bkp.page_title': 'Copias de seguridad de {name}',
|
|
7276
|
+
'bkp.made_flash': 'Copia de seguridad creada.',
|
|
7277
|
+
'bkp.none_kept': 'No se creó ninguna copia de seguridad: esta aplicación no conserva ninguna (defina «Copias de seguridad que conservar»).',
|
|
7278
|
+
'bkp.keep_invalid': 'Copias de seguridad que conservar: un número entero de 0 a 500.',
|
|
7279
|
+
'bkp.saved': 'Guardado.',
|
|
7280
|
+
'bkp.not_found': 'No se encontró la copia de seguridad.',
|
|
7281
|
+
'bkp.restored': 'Se restauró la aplicación tal como estaba el {when}. La versión reemplazada es la copia de seguridad más reciente.',
|
|
7282
|
+
'bkp.restore_failed': 'La restauración falló: {message}',
|
|
7283
|
+
'bkp.deleted': 'Copia de seguridad eliminada.',
|
|
7284
|
+
'bkp.not_found_short': 'No encontrado.',
|
|
7285
|
+
// ------------------------------------------------------------ Manage backups (sprint 164 part 13)
|
|
7286
|
+
'wbk.intro': 'Las copias de seguridad de las aplicaciones de {name}: una antes de cada importación que reemplaza una aplicación, una fusión o una restauración, una al día cuando ha cambiado, y las hechas a mano. Abra las copias de seguridad de una aplicación para descargar, restaurar o eliminar una.',
|
|
7287
|
+
'wbk.intro_this': 'Las copias de seguridad de las aplicaciones de este espacio de trabajo: una antes de cada importación que reemplaza una aplicación, una fusión o una restauración, una al día cuando ha cambiado, y las hechas a mano. Abra las copias de seguridad de una aplicación para descargar, restaurar o eliminar una.',
|
|
7288
|
+
'wbk.applications': 'Aplicaciones',
|
|
7289
|
+
'wbk.application': 'Aplicación',
|
|
7290
|
+
'wbk.backups': 'Copias de seguridad',
|
|
7291
|
+
'wbk.storage': 'Almacenamiento',
|
|
7292
|
+
'wbk.changed_since_newest': 'Cambiadas desde su copia de seguridad más reciente',
|
|
7293
|
+
'wbk.kept': 'Conservadas',
|
|
7294
|
+
'wbk.newest_utc': 'Más reciente (UTC)',
|
|
7295
|
+
'wbk.newest': 'Más reciente',
|
|
7296
|
+
'wbk.size': 'Tamaño',
|
|
7297
|
+
'wbk.none': 'ninguna',
|
|
7298
|
+
'wbk.never': 'nunca',
|
|
7299
|
+
'wbk.changed_since': 'cambiada desde entonces',
|
|
7300
|
+
'wbk.no_apps': 'No hay aplicaciones.',
|
|
7301
|
+
'wbk.back_up_all': 'Hacer copia de seguridad de todas las aplicaciones',
|
|
7302
|
+
'wbk.back_up_all_text': 'Hace una copia de seguridad de cada aplicación de este espacio de trabajo que conserva copias de seguridad.',
|
|
7303
|
+
'wbk.note': 'Nota',
|
|
7304
|
+
'wbk.note_placeholder': 'p. ej., antes de la actualización',
|
|
7305
|
+
'wbk.only_changed': 'Solo las aplicaciones cambiadas desde su copia de seguridad más reciente',
|
|
7306
|
+
'wbk.back_up_now': 'Hacer copia de seguridad ahora',
|
|
7307
|
+
'wbk.failed_one': '{n} copia(s) de seguridad creada(s); sin copia de seguridad: aplicación {ids}.',
|
|
7308
|
+
'wbk.failed_many': '{n} copia(s) de seguridad creada(s); sin copia de seguridad: aplicaciones {ids}.',
|
|
7309
|
+
'wbk.made_one': '{n} copia de seguridad creada.',
|
|
7310
|
+
'wbk.made_many': '{n} copias de seguridad creadas.',
|
|
7311
|
+
'wbk.nothing': 'Nada que respaldar: cada aplicación no ha cambiado desde su copia de seguridad más reciente o no conserva ninguna.',
|
|
7312
|
+
// ------------------------------------------------------------ Availability (sprint 164 part 13)
|
|
7313
|
+
'avl.mode.available': 'Disponible',
|
|
7314
|
+
'avl.mode.developers': 'Disponible solo para desarrolladores',
|
|
7315
|
+
'avl.mode.restricted': 'Restringida a los usuarios indicados abajo (y desarrolladores)',
|
|
7316
|
+
'avl.mode.unavailable': 'No disponible',
|
|
7317
|
+
'avl.intro': 'Quién puede usar la aplicación en ejecución. Los desarrolladores son quienes han iniciado sesión en el builder en el mismo navegador (ven la barra de herramientas de desarrollador). Las páginas, las descargas de archivos, los módulos REST y la API REST siguen esta configuración; las automatizaciones, los flujos de trabajo, los trabajos en segundo plano y el correo en cola siguen ejecutándose. Pertenece a esta instalación: las exportaciones la omiten y una importación sobre la aplicación la conserva.',
|
|
7318
|
+
'avl.status': 'Estado',
|
|
7319
|
+
'avl.message': 'Mensaje',
|
|
7320
|
+
'avl.message_help': 'Se muestra cuando la aplicación no está disponible o solo para desarrolladores, p. ej., «Estamos actualizando la aplicación; volvemos a las 14:00». Vacío: un mensaje estándar en el idioma del usuario.',
|
|
7321
|
+
'avl.users': 'Usuarios (restringida)',
|
|
7322
|
+
'avl.users_help': 'Nombres de usuario separados por comas o espacios. Inician sesión como siempre; los demás reciben «no disponible para su cuenta».',
|
|
7323
|
+
'avl.build_status': 'Estado de compilación',
|
|
7324
|
+
'avl.run_and_build': 'Ejecutar y compilar',
|
|
7325
|
+
'avl.run_only': 'Solo ejecutar',
|
|
7326
|
+
'avl.build_status_help': 'Solo ejecutar: el builder rechaza cambios en la aplicación (páginas, componentes compartidos, configuración, restauraciones) hasta que se vuelva a cambiar aquí. pgkiln import --replace sigue desplegándola.',
|
|
7327
|
+
'avl.page_title': 'Disponibilidad de {name}',
|
|
7328
|
+
'avl.users_invalid': 'Los nombres de usuario tienen como máximo 100 caracteres, sin espacios ni dos puntos.',
|
|
7329
|
+
'avl.saved': 'Disponibilidad guardada.',
|
|
7330
|
+
'avl.not_found': 'No encontrado.',
|
|
7331
|
+
// ------------------------------------------------------------ Feedback (sprint 164 part 13)
|
|
7332
|
+
'fbk.title': 'Comentarios',
|
|
7333
|
+
'fbk.status.open': 'Abierto',
|
|
7334
|
+
'fbk.status.in_progress': 'En curso',
|
|
7335
|
+
'fbk.status.done': 'Hecho',
|
|
7336
|
+
'fbk.status.declined': 'Rechazado',
|
|
7337
|
+
'fbk.kind.comment': 'Comentario',
|
|
7338
|
+
'fbk.kind.idea': 'Idea',
|
|
7339
|
+
'fbk.kind.problem': 'Problema',
|
|
7340
|
+
'fbk.enable': 'Los usuarios pueden enviar comentarios',
|
|
7341
|
+
'fbk.enable_help': 'Un enlace {link} en la barra de navegación de la aplicación abre una página para un comentario, una idea o un problema sobre la página de la que viene el usuario, con sus comentarios anteriores y sus respuestas.',
|
|
7342
|
+
'fbk.counts': '{open} abiertos, {in_progress} en curso, {done} hechos, {declined} rechazados.',
|
|
7343
|
+
'fbk.status': 'Estado',
|
|
7344
|
+
'fbk.kind': 'Tipo',
|
|
7345
|
+
'fbk.all': 'Todos',
|
|
7346
|
+
'fbk.page': 'página {n}',
|
|
7347
|
+
'fbk.answer': 'Respuesta (el usuario la ve)',
|
|
7348
|
+
'fbk.answered_by': 'Por {user}, {when}',
|
|
7349
|
+
'fbk.none': 'Aún no hay comentarios.',
|
|
7350
|
+
'fbk.none_filtered': 'No hay comentarios con estos filtros.',
|
|
7351
|
+
'fbk.page_title': 'Comentarios de {name}',
|
|
7352
|
+
'fbk.saved': 'Guardado.',
|
|
7353
|
+
'fbk.not_found': 'No encontrado.',
|
|
7354
|
+
// ------------------------------------------------------------ Plug-ins (plugins.ts) (sprint 164 part 13)
|
|
7355
|
+
'plg.type.region': 'Región',
|
|
7356
|
+
'plg.type.item': 'Elemento',
|
|
7357
|
+
'plg.type.dynamic_action': 'Acción dinámica',
|
|
7358
|
+
'plg.type.process': 'Proceso',
|
|
7359
|
+
'plg.heading.region': '{label} (plug-in de región)',
|
|
7360
|
+
'plg.heading.item': '{label} (plug-in de elemento)',
|
|
7361
|
+
'plg.heading.dynamic_action': '{label} (plug-in de acción dinámica)',
|
|
7362
|
+
'plg.heading.process': '{label} (plug-in de proceso)',
|
|
7363
|
+
'plg.use.region': 'página {page}: región {name}',
|
|
7364
|
+
'plg.use.item': 'página {page}: elemento {name}',
|
|
7365
|
+
'plg.use.process': 'página {page}: proceso {name}',
|
|
7366
|
+
'plg.use.dynamic_action': 'página {page}: acción dinámica {name}',
|
|
7367
|
+
'plg.how.dynamic_action': 'Úselo como acción dinámica con la acción `plugin`, Código `{name}` y atributos de plug-in `{"attributes": {…}}`.',
|
|
7368
|
+
'plg.how.region': 'Úselo como región de tipo `plugin` con la configuración `{"plugin": "{name}", "attributes": {…}}`.',
|
|
7369
|
+
'plg.how.item': 'Úselo como elemento de tipo `plugin` con la configuración `{"plugin": "{name}", "attributes": {…}}`.',
|
|
7370
|
+
'plg.how.process': 'Úselo como proceso de tipo `plugin` con la configuración `{"plugin": "{name}", "attributes": {…}}`.',
|
|
7371
|
+
'plg.name': 'Nombre',
|
|
7372
|
+
'plg.version_n': 'versión {version}',
|
|
7373
|
+
'plg.help': 'Ayuda',
|
|
7374
|
+
'plg.used_by': 'Usado por',
|
|
7375
|
+
'plg.nothing_yet': 'nada todavía',
|
|
7376
|
+
'plg.files': 'Archivos',
|
|
7377
|
+
'plg.missing': 'falta',
|
|
7378
|
+
'plg.none': 'ninguno',
|
|
7379
|
+
'plg.template': 'Plantilla',
|
|
7380
|
+
'plg.function': 'Función',
|
|
7381
|
+
'plg.attributes': 'Atributos',
|
|
7382
|
+
'plg.label': 'Etiqueta',
|
|
7383
|
+
'plg.type': 'Tipo',
|
|
7384
|
+
'plg.default': 'Predeterminado',
|
|
7385
|
+
'plg.install_sql': 'SQL de instalación',
|
|
7386
|
+
'plg.install_help': 'No se ejecuta al importar. Léalo y luego ejecútelo como el rol de base de datos de la aplicación {role}, en una transacción.',
|
|
7387
|
+
'plg.role_none': '(ninguno: la conexión de ejecución)',
|
|
7388
|
+
'plg.confirm_install': '¿Ejecutar el SQL de instalación de {label} como {role}?',
|
|
7389
|
+
'plg.confirm_install_runtime': '¿Ejecutar el SQL de instalación de {label} con la conexión de ejecución?',
|
|
7390
|
+
'plg.run_install': 'Ejecutar el SQL de instalación',
|
|
7391
|
+
'plg.download': 'Descargar archivo de plug-in',
|
|
7392
|
+
'plg.confirm_remove': '¿Eliminar el plug-in {label}? Sus archivos y su componente de plantilla se conservan.',
|
|
7393
|
+
'plg.remove': 'Eliminar',
|
|
7394
|
+
'plg.result': 'Resultado: SQL de instalación de {name}',
|
|
7395
|
+
'plg.title': 'Plug-ins',
|
|
7396
|
+
'plg.intro': 'Tipos de región, elemento, acción dinámica y proceso que traen su propio código: JavaScript y CSS como {files} (registrados con {register}), un componente de plantilla, una función PL/pgSQL.',
|
|
7397
|
+
'plg.intro_trust': 'El código de un plug-in se ejecuta con los permisos de esta aplicación: importe solo plug-ins de confianza y lea sus archivos.',
|
|
7398
|
+
'plg.static_files': 'archivos estáticos de la aplicación',
|
|
7399
|
+
'plg.plugin': 'Plug-in',
|
|
7400
|
+
'plg.version': 'Versión',
|
|
7401
|
+
'plg.no_plugins': 'Aún no hay plug-ins.',
|
|
7402
|
+
'plg.import_title': 'Importar un plug-in',
|
|
7403
|
+
'plg.file_label': 'Archivo de plug-in (JSON `pgkiln-plugin/2`)',
|
|
7404
|
+
'plg.or_paste': '…o péguelo',
|
|
7405
|
+
'plg.replace': 'Reemplazar un plug-in, archivos y componente de plantilla con los mismos nombres',
|
|
7406
|
+
'plg.import': 'Importar',
|
|
7407
|
+
'plg.import_help': 'Los componentes de plantilla de archivos de plug-in antiguos (`pgkiln-plugin/1`) se importan en Componentes de plantilla. `examples/plugins/` contiene ejemplos.',
|
|
7408
|
+
'plg.not_json': 'Error en la importación: el archivo de plug-in no es un JSON válido.',
|
|
7409
|
+
'plg.choose_file': 'Elija un archivo de plug-in o pegue uno.',
|
|
7410
|
+
'plg.imported': 'Plug-in {label} importado.',
|
|
7411
|
+
'plg.imported_install': 'Plug-in {label} importado. Lea su SQL de instalación a continuación antes de ejecutarlo.',
|
|
7412
|
+
'plg.import_failed': 'Error en la importación: {message}',
|
|
7413
|
+
'plg.removed': 'Plug-in eliminado. Sus archivos y su componente de plantilla se conservan (elimínelos en sus propias páginas).',
|
|
7414
|
+
'plg.no_such': 'No existe ese plug-in.',
|
|
7415
|
+
// ------------------------------------------------------------ App Gallery (gallery.ts) (sprint 164 part 13)
|
|
7416
|
+
'gal.tab.samples': 'Aplicaciones de ejemplo',
|
|
7417
|
+
'gal.tab.starters': 'Aplicaciones iniciales',
|
|
7418
|
+
'gal.tab.utilities': 'Aplicaciones de utilidad',
|
|
7419
|
+
'gal.tab.custom': 'Aplicaciones personalizadas',
|
|
7420
|
+
'gal.kinds': 'Tipos de aplicaciones',
|
|
7421
|
+
'gal.install': 'Instalar',
|
|
7422
|
+
'gal.installed': 'Instalada',
|
|
7423
|
+
'gal.edit': 'Editar',
|
|
7424
|
+
'gal.other_workspace': 'en otro espacio de trabajo',
|
|
7425
|
+
'gal.confirm_install': '¿Instalar {title}? Añade su propio esquema, datos y cuentas de demostración con contraseñas conocidas: no es para una instancia de producción.',
|
|
7426
|
+
'gal.admin_installs': 'La instala un administrador.',
|
|
7427
|
+
'gal.this_workspace': 'Este espacio de trabajo',
|
|
7428
|
+
'gal.boilerplate_desc': 'Una aplicación base: una nueva aplicación empieza con sus páginas, componentes compartidos y configuración.',
|
|
7429
|
+
'gal.create_from': 'Crear a partir de ella',
|
|
7430
|
+
'gal.no_match': 'Ninguna aplicación coincide con {q}.',
|
|
7431
|
+
'gal.show_all': 'Mostrar todo',
|
|
7432
|
+
'gal.no_custom': 'Aún no hay aplicaciones personalizadas: cree una aplicación de tipo {type} (Configuración de la aplicación → Tipo de aplicación) y aparecerá aquí.',
|
|
7433
|
+
'gal.boilerplate': 'Base',
|
|
7434
|
+
'gal.empty': 'La galería está vacía.',
|
|
7435
|
+
'gal.intro.samples': 'Aplicaciones que muestran lo que pgkiln puede hacer, cada una con su propio esquema, datos y cuenta de demostración: el escaparate, el tutorial, una aplicación por área funcional y el UX Pattern Catalog. Un administrador las instala en una instancia de desarrollo o de demostración.',
|
|
7436
|
+
'gal.intro.starters': 'Aplicaciones pequeñas y listas para usar. Instalar muestra lo que se creará (tablas, páginas, datos de ejemplo) antes de que ocurra nada; la aplicación obtiene su propio rol y esquema en este espacio de trabajo.',
|
|
7437
|
+
'gal.intro.utilities': 'Aplicaciones que un espacio de trabajo usa en lugar de aprender de ellas: listas de consulta compartidas, notas de versión, anuncios. Como con las aplicaciones iniciales, Instalar muestra primero lo que se creará, y la aplicación obtiene su propio rol y esquema en este espacio de trabajo.',
|
|
7438
|
+
'gal.intro.custom': 'Las aplicaciones base de este espacio de trabajo: empiece una nueva aplicación a partir de una de ellas.',
|
|
7439
|
+
'gal.search': 'Buscar aplicaciones',
|
|
7440
|
+
'gal.err_alias': 'ya existe una aplicación con el alias {alias}.',
|
|
7441
|
+
'gal.err_no_app': 'los scripts se ejecutaron, pero no hay ninguna aplicación {alias}.',
|
|
7442
|
+
'gal.err_nothing': 'la entrada de la galería no indica nada que instalar.',
|
|
7443
|
+
'gal.installed_flash': '{title} instalada (/a/{alias}).',
|
|
7444
|
+
'gal.not_installed': '{title} no se instaló: {message}',
|
|
7445
|
+
// ------------------------------------------------------------ Progressive Web App settings (pwa.ts) (sprint 164 part 13)
|
|
7446
|
+
'pwa.installable': 'Instalable (Progressive Web App)',
|
|
7447
|
+
'pwa.installable_help': 'Los teléfonos y ordenadores pueden instalar la aplicación: su propio icono, pantalla completa, y la aplicación sigue funcionando con mala conexión o sin ella.',
|
|
7448
|
+
'pwa.short_name': 'Nombre bajo el icono',
|
|
7449
|
+
'pwa.short_name_ph': 'funciona mejor con 12 caracteres como máximo',
|
|
7450
|
+
'pwa.offline_pages': 'Guardar las páginas visitadas en el dispositivo para usarlas sin conexión',
|
|
7451
|
+
'pwa.offline_pages_help': 'Las páginas que un usuario abrió se muestran cuando no hay conexión. Contienen datos personales: se eliminan cuando alguien inicia o cierra sesión en el dispositivo.',
|
|
7452
|
+
'pwa.offline_submit': 'Guardar los formularios enviados sin conexión y enviarlos más tarde',
|
|
7453
|
+
'pwa.offline_submit_help': 'Para el trabajo de campo: los formularios (con fotos) se guardan en el dispositivo y se envían cuando vuelve la conexión, con el mismo usuario, como máximo una vez.',
|
|
7454
|
+
'pwa.push': 'Notificaciones push',
|
|
7455
|
+
'pwa.push_help': 'Los usuarios las activan por dispositivo en Mi cuenta (o con la acción dinámica push_subscribe); el código de la aplicación las envía con meta.send_push(user, title, body, page, items) o un proceso send_push. En iPhone y iPad solo después de añadir la aplicación a la pantalla de inicio. Requiere PGKILN_SECRET_KEY: la clave que las firma se guarda cifrada.',
|
|
7456
|
+
'pwa.icon': 'Icono (PNG, cuadrado, al menos 512 × 512)',
|
|
7457
|
+
'pwa.icon_alt': 'El icono de la aplicación',
|
|
7458
|
+
'pwa.icon_stored': 'Hay un icono guardado.',
|
|
7459
|
+
'pwa.remove_icon': 'Eliminarlo',
|
|
7460
|
+
'pwa.no_icon': 'Sin icono, la aplicación recibe un mosaico con su inicial en el color de acento.',
|
|
7461
|
+
'pwa.stats_devices': '{devices} dispositivo(s) de {users} usuario(s) reciben notificaciones.',
|
|
7462
|
+
'pwa.stats_week': 'Últimos 7 días: {sent} enviadas, {no_device} a usuarios sin dispositivo, {failed} fallidas.',
|
|
7463
|
+
'pwa.stats_week_waiting': 'Últimos 7 días: {sent} enviadas, {no_device} a usuarios sin dispositivo, {failed} fallidas, {waiting} en espera.',
|
|
7464
|
+
'pwa.test_to': 'Enviar una notificación de prueba a',
|
|
7465
|
+
'pwa.user_name': 'nombre de usuario',
|
|
7466
|
+
'pwa.send_test': 'Enviar prueba',
|
|
7467
|
+
'pwa.new_keys': 'Claves nuevas',
|
|
7468
|
+
'pwa.new_keys_help': 'Crea un nuevo par de claves (por ejemplo, si la clave privada puede haberse filtrado). Cada dispositivo deja de recibir notificaciones hasta que su usuario las vuelva a activar.',
|
|
7469
|
+
'pwa.icon_too_large': 'El icono ocupa más de {mb} MB.',
|
|
7470
|
+
'pwa.icon_not_png': 'El icono debe ser una imagen PNG.',
|
|
7471
|
+
'pwa.icon_size': 'El icono debe ser cuadrado y de al menos 512 × 512 píxeles (este es de {width} × {height}).',
|
|
7472
|
+
'pwa.push_needs_key': 'Las notificaciones push requieren PGKILN_SECRET_KEY en el entorno del servidor (la clave que las firma se guarda cifrada).',
|
|
7473
|
+
'pwa.saved_not_installable': 'Guardado. Las notificaciones push solo funcionan cuando la aplicación es instalable.',
|
|
7474
|
+
'pwa.saved': 'Configuración de Progressive Web App guardada.',
|
|
7475
|
+
'pwa.test_queued': 'Notificación de prueba en cola para {n} dispositivo(s) de {user}.',
|
|
7476
|
+
'pwa.test_no_device': '{user} no ha activado las notificaciones en ningún dispositivo (Mi cuenta → Notificaciones).',
|
|
7477
|
+
'pwa.keys_made': 'Claves nuevas creadas. Los usuarios deben volver a activar las notificaciones en cada dispositivo.',
|
|
7478
|
+
// ------------------------------------------------------------ Application search and Used in (search.ts) (sprint 164 part 13)
|
|
7479
|
+
'srch.page_tag': 'página {n}',
|
|
7480
|
+
'srch.used_in': 'Usado en ({n})',
|
|
7481
|
+
'srch.not_referenced': 'No se hace referencia en ninguna parte de esta aplicación.',
|
|
7482
|
+
'srch.not_referenced_item': 'No se hace referencia en ninguna parte de esta aplicación (fuera de su propia definición).',
|
|
7483
|
+
'srch.found_in': 'Se busca en el SQL, las sustituciones, los enlaces y la configuración de esta aplicación. El código de la base de datos (vistas, funciones, políticas) no se busca.',
|
|
7484
|
+
'srch.placeholder': 'Texto en nombres, títulos, SQL, configuración…',
|
|
7485
|
+
'srch.aria': 'Buscar en la aplicación',
|
|
7486
|
+
'srch.matches': '{n} coincidencias',
|
|
7487
|
+
'srch.matches_more': '{n}+ coincidencias',
|
|
7488
|
+
'srch.nothing': 'No se encontró nada para «{q}».',
|
|
7489
|
+
'srch.intro': 'Busca en todas las páginas y componentes de {name}: nombres, títulos, SQL, condiciones, configuración y textos de ayuda.',
|
|
7490
|
+
'srch.page_title': 'Buscar · {name}',
|
|
7491
|
+
// ------------------------------------------------------------ REST module endpoints (rest.ts) (sprint 164 part 13)
|
|
7492
|
+
'rst.endpoints': 'Endpoints',
|
|
7493
|
+
'rst.disabled': 'El módulo está desactivado: sus endpoints responden 404.',
|
|
7494
|
+
'rst.method': 'Método',
|
|
7495
|
+
'rst.url': 'URL',
|
|
7496
|
+
'rst.type': 'Tipo',
|
|
7497
|
+
'rst.access': 'Acceso',
|
|
7498
|
+
'rst.try_it': 'Pruébelo con un token de {link}:',
|
|
7499
|
+
'rst.rest_api': 'API REST',
|
|
7500
|
+
'rst.edit_in': 'Edite y pruebe sus plantillas y manejadores en {link}.',
|
|
7501
|
+
'rst.modules_path': 'SQL Workshop › Servicios RESTful › Módulos',
|
|
7502
|
+
'rst.openapi': 'Descripción OpenAPI:',
|
|
7503
|
+
// ------------------------------------------------------------ Background process jobs (process-jobs.ts) (sprint 164 part 13)
|
|
7504
|
+
'pjb.off': 'Los procesos en segundo plano están desactivados en este servidor (BACKGROUND_PROCESSES=off).',
|
|
7505
|
+
'pjb.job': 'Trabajo',
|
|
7506
|
+
'pjb.state': 'Estado',
|
|
7507
|
+
'pjb.by': 'Por',
|
|
7508
|
+
'pjb.queued': 'En cola',
|
|
7509
|
+
'pjb.took': 'Duración',
|
|
7510
|
+
'pjb.steps': 'Pasos',
|
|
7511
|
+
'pjb.message': 'Mensaje',
|
|
7512
|
+
'pjb.no_runs': 'Aún no hay ejecuciones.',
|
|
4060
7513
|
};
|