Commit 926a9a2c authored by Florine Boudin's avatar Florine Boudin
Browse files

BS-9113 Fix target process and target element names in message migration from...

BS-9113 Fix target process and target element names in message migration from 5.x + resolve conflicts on merge in 6.3.x
parents 7436226c 0b4a2778
......@@ -39,78 +39,78 @@ import org.eclipse.emf.edapt.migration.Model;
*/
public class DataDefaultValueMigration extends ReportCustomMigration {
private Map<String, String> dataDefaultValue = new HashMap<String,String>();
private final Map<String, String> dataDefaultValue = new HashMap<String,String>();
@Override
public void migrateBefore(Model model, Metamodel metamodel)
throws MigrationException {
for(Instance data : model.getAllInstances("process.Data")){
final String script = data.get("defaultValue");
data.set("defaultValue", null);
if(script != null && !script.trim().isEmpty()){
dataDefaultValue.put(data.getUuid(), script);
}
}
}
@Override
public void migrateBefore(final Model model, final Metamodel metamodel)
throws MigrationException {
for(final Instance data : model.getAllInstances("process.Data")){
final String script = data.get("defaultValue");
data.set("defaultValue", null);
if(script != null && !script.trim().isEmpty()){
dataDefaultValue.put(data.getUuid(), script);
}
}
}
@Override
public void migrateAfter(Model model, Metamodel metamodel)
throws MigrationException {
for(Instance data : model.getAllInstances("process.Data")){
if(!data.instanceOf("process.AttachmentData")){
final StringToExpressionConverter converter = getConverter(model,getScope(data));
final String uuid = data.getUuid();
final String defaultValue = dataDefaultValue.get(uuid);
Instance expression = null;
if(defaultValue != null){
final String returnType = StringToExpressionConverter.getDataReturnType(data);
expression = converter.parse(defaultValue, returnType, false);
String expressionType = expression.get("type");
if(ExpressionConstants.SCRIPT_TYPE.equals(expressionType)){
expression.set("name",data.get("name")+"DefaultValueScript");
List<Instance> dependencies = expression.get("referencedElements");
boolean invalidDependency = false ;
for(Instance dependency : dependencies){
if(dependency.instanceOf("process.Data")){
List<Instance> containerData = data.getContainer().get("data");
for(Instance dataInstance : containerData){
if(dataInstance.get("name").equals(dependency.get("name"))){
invalidDependency = true;
addReportChange((String) data.get("name"), ProcessPackage.Literals.DATA.getName(), uuid, Messages.dataDefaultValueWithOtherDataDependencyMigrationDescription, Messages.dataDefaultValueProperty, IStatus.ERROR);
}
}
}
}
if(!invalidDependency){
addReportChange((String) data.get("name"), ProcessPackage.Literals.DATA.getName(), uuid, Messages.dataDefaultValueMigrationDescription, Messages.dataDefaultValueProperty, IStatus.WARNING);
}
}else if(ExpressionConstants.VARIABLE_TYPE.equals(expressionType)){
if(data.getContainer().instanceOf("process.AbstractProcess")){
expression.set("type",ExpressionConstants.CONSTANT_TYPE);
addReportChange((String) data.get("name"), ProcessPackage.Literals.DATA.getName(), uuid, Messages.dataDefaultValueWithOtherDataDependencyMigrationDescription, Messages.dataDefaultValueProperty, IStatus.ERROR);
}
}else{
addReportChange((String) data.get("name"), ProcessPackage.Literals.DATA.getName(), uuid, Messages.dataDefaultValueMigrationDescription, Messages.dataDefaultValueProperty, IStatus.OK);
}
}else{
expression = StringToExpressionConverter.createExpressionInstance(model, "", "", String.class.getName(), ExpressionConstants.CONSTANT_TYPE, false);
}
data.set("defaultValue", expression);
data.set("datasourceId", getDatasource(data));
}
}
}
@Override
public void migrateAfter(final Model model, final Metamodel metamodel)
throws MigrationException {
for(final Instance data : model.getAllInstances("process.Data")){
if(!data.instanceOf("process.AttachmentData")){
final String uuid = data.getUuid();
Instance expression = null;
if (dataDefaultValue.containsKey(uuid)) {
final String defaultValue = dataDefaultValue.get(uuid);
final StringToExpressionConverter converter = getConverter(model, getScope(data));
final String returnType = StringToExpressionConverter.getDataReturnType(data);
expression = converter.parse(defaultValue, returnType, false);
final String expressionType = expression.get("type");
if(ExpressionConstants.SCRIPT_TYPE.equals(expressionType)){
expression.set("name",data.get("name")+"DefaultValueScript");
final List<Instance> dependencies = expression.get("referencedElements");
boolean invalidDependency = false ;
for(final Instance dependency : dependencies){
if(dependency.instanceOf("process.Data")){
final List<Instance> containerData = data.getContainer().get("data");
for(final Instance dataInstance : containerData){
if(dataInstance.get("name").equals(dependency.get("name"))){
invalidDependency = true;
addReportChange((String) data.get("name"), ProcessPackage.Literals.DATA.getName(), uuid, Messages.dataDefaultValueWithOtherDataDependencyMigrationDescription, Messages.dataDefaultValueProperty, IStatus.ERROR);
}
}
}
}
if(!invalidDependency){
addReportChange((String) data.get("name"), ProcessPackage.Literals.DATA.getName(), uuid, Messages.dataDefaultValueMigrationDescription, Messages.dataDefaultValueProperty, IStatus.WARNING);
}
}else if(ExpressionConstants.VARIABLE_TYPE.equals(expressionType)){
if(data.getContainer().instanceOf("process.AbstractProcess")){
expression.set("type",ExpressionConstants.CONSTANT_TYPE);
addReportChange((String) data.get("name"), ProcessPackage.Literals.DATA.getName(), uuid, Messages.dataDefaultValueWithOtherDataDependencyMigrationDescription, Messages.dataDefaultValueProperty, IStatus.ERROR);
}
}else{
addReportChange((String) data.get("name"), ProcessPackage.Literals.DATA.getName(), uuid, Messages.dataDefaultValueMigrationDescription, Messages.dataDefaultValueProperty, IStatus.OK);
}
}else{
expression = StringToExpressionConverter.createExpressionInstance(model, "", "", String.class.getName(), ExpressionConstants.CONSTANT_TYPE, false);
}
data.set("defaultValue", expression);
data.set("datasourceId", getDatasource(data));
}
}
}
private String getDatasource(Instance data) {
EReference feature = data.getContainerReference();
if(feature.equals(ProcessPackage.Literals.PAGE_FLOW__TRANSIENT_DATA)
|| feature.equals(ProcessPackage.Literals.RECAP_FLOW__RECAP_TRANSIENT_DATA)
|| feature.equals(ProcessPackage.Literals.VIEW_PAGE_FLOW__VIEW_TRANSIENT_DATA)){
return DatasourceConstants.PAGEFLOW_DATASOURCE ;
}else if(data.get("transient")){
return DatasourceConstants.IN_MEMORY_DATASOURCE;
}else{
return DatasourceConstants.BOS_DATASOURCE ;
}
}
private String getDatasource(final Instance data) {
final EReference feature = data.getContainerReference();
if(feature.equals(ProcessPackage.Literals.PAGE_FLOW__TRANSIENT_DATA)
|| feature.equals(ProcessPackage.Literals.RECAP_FLOW__RECAP_TRANSIENT_DATA)
|| feature.equals(ProcessPackage.Literals.VIEW_PAGE_FLOW__VIEW_TRANSIENT_DATA)){
return DatasourceConstants.PAGEFLOW_DATASOURCE ;
}else if(data.get("transient")){
return DatasourceConstants.IN_MEMORY_DATASOURCE;
}else{
return DatasourceConstants.BOS_DATASOURCE ;
}
}
}
......@@ -37,9 +37,9 @@ import org.eclipse.emf.edapt.migration.Model;
*/
public class MessageMigration extends ReportCustomMigration {
private final Map<String, String> targetProcessNameConditions = new HashMap<String,String>();
private final Map<String, String> targetElementNameConditions = new HashMap<String,String>();
private final Map<String, List<Instance>> messageContents = new HashMap<String,List<Instance>>();
private final Map<String, String> targetProcessNameConditions = new HashMap<String, String>();
private final Map<String, String> targetElementNameConditions = new HashMap<String, String>();
private final Map<String, List<Instance>> messageContents = new HashMap<String, List<Instance>>();
@Override
public void migrateBefore(final Model model, final Metamodel metamodel)
......@@ -50,7 +50,19 @@ public class MessageMigration extends ReportCustomMigration {
final List<Instance> data = message.get("data");
final List<Instance> content = new ArrayList<Instance>();
for(final Instance d : data){
final Instance expression = ((Instance) d.get("defaultValue")).copy();
final Instance expInstance = (Instance) d.get("defaultValue");
final Instance expression = expInstance.copy();
List<Instance> dependencies = expression.get("referencedElements");
for (final Instance dep : dependencies) {
model.delete(dep);
}
dependencies = expInstance.get("referencedElements");
for (final Instance dep : dependencies) {
expression.add("referencedElements", dep.copy());
}
expression.set("returnTypeFixed", false);
content.add(expression);
model.delete(d);
......@@ -103,45 +115,50 @@ public class MessageMigration extends ReportCustomMigration {
}
}
@Override
public void migrateAfter(final Model model, final Metamodel metamodel)
throws MigrationException {
for(final Instance message : model.getAllInstances("process.Message")){
setMessageContent(message, model);
setTargetProcessExpression(message,model);
setTargetElementExpression(message,model);
setTargetProcessExpression(message, model);
setTargetElementExpression(message, model);
}
}
private void setMessageContent(final Instance message,final Model model) {
final Instance tableExpression = model.newInstance("expression.TableExpression");
if(messageContents.containsKey(message.getUuid())){
if (messageContents.containsKey(message.getUuid())) {
final List<Instance> content = messageContents.get(message.getUuid());
for(final Instance expression : content){
final Instance rowExpression = model.newInstance("expression.ListExpression");
final Instance keyExpression = StringToExpressionConverter.createExpressionInstance(model, expression.get("name")+"Key", expression.get("name")+"Key", String.class.getName(),ExpressionConstants.CONSTANT_TYPE,true);
final Instance keyExpression = StringToExpressionConverter.createExpressionInstance(model, expression.get("name") + "Key",
expression.get("name") + "Key", String.class.getName(), ExpressionConstants.CONSTANT_TYPE, true);
rowExpression.add("expressions", keyExpression);
rowExpression.add("expressions", expression);
tableExpression.add("expressions", rowExpression);
}
message.set("messageContent", tableExpression);
addReportChange((String) message.get("name"),message.getType().getEClass().getName(), message.getUuid(),Messages.messageContentMigrationDescription, Messages.messagesProperty, IStatus.WARNING);
}else{
addReportChange((String) message.get("name"), message.getType().getEClass().getName(), message.getUuid(),
Messages.messageContentMigrationDescription, Messages.messagesProperty, IStatus.WARNING);
} else {
message.set("messageContent", tableExpression);
}
}
private void setTargetProcessExpression(final Instance message, final Model model) {
Instance expression = null;
if(targetProcessNameConditions.containsKey(message.getUuid())){
final StringToExpressionConverter converter = getConverter(model,getScope(message));
if (targetProcessNameConditions.containsKey(message.getUuid())) {
final StringToExpressionConverter converter = getConverter(model, getScope(message));
final String script = targetProcessNameConditions.get(message.getUuid());
expression = converter.parse(script, String.class.getName(), true);
if(ExpressionConstants.SCRIPT_TYPE.equals(expression.get("type"))){
if (ExpressionConstants.SCRIPT_TYPE.equals(expression.get("type"))) {
expression.set("name", "targetProcessScript");
}
addReportChange((String) message.get("name"),message.getType().getEClass().getName(), message.getUuid(),Messages.targetProcessNameMigrationDescription, Messages.messagesProperty, ExpressionConstants.SCRIPT_TYPE.equals(expression.get("type")) ? IStatus.WARNING : IStatus.OK);
}else{
addReportChange((String) message.get("name"), message.getType().getEClass().getName(), message.getUuid(),
Messages.targetProcessNameMigrationDescription, Messages.messagesProperty, ExpressionConstants.SCRIPT_TYPE.equals(expression.get("type"))
? IStatus.WARNING : IStatus.OK);
} else {
expression = StringToExpressionConverter.createExpressionInstance(model, "", "", String.class.getName(), ExpressionConstants.CONSTANT_TYPE, true);
}
message.set("targetProcessExpression", expression);
......@@ -151,15 +168,17 @@ public class MessageMigration extends ReportCustomMigration {
private void setTargetElementExpression(final Instance message, final Model model) {
Instance expression = null;
if(targetElementNameConditions.containsKey(message.getUuid())){
final StringToExpressionConverter converter = getConverter(model,getScope(message));
if (targetElementNameConditions.containsKey(message.getUuid())) {
final StringToExpressionConverter converter = getConverter(model, getScope(message));
final String url = targetElementNameConditions.get(message.getUuid());
expression = converter.parse(url, String.class.getName(), true);
if(ExpressionConstants.SCRIPT_TYPE.equals(expression.get("type"))){
if (ExpressionConstants.SCRIPT_TYPE.equals(expression.get("type"))) {
expression.set("name", "targetElementScriptScript");
}
addReportChange((String) message.get("name"),message.getType().getEClass().getName(), message.getUuid(),Messages.targetElementNameMigrationDescription, Messages.messagesProperty, ExpressionConstants.SCRIPT_TYPE.equals(expression.get("type")) ? IStatus.WARNING : IStatus.OK);
}else{
addReportChange((String) message.get("name"), message.getType().getEClass().getName(), message.getUuid(),
Messages.targetElementNameMigrationDescription, Messages.messagesProperty, ExpressionConstants.SCRIPT_TYPE.equals(expression.get("type"))
? IStatus.WARNING : IStatus.OK);
} else {
expression = StringToExpressionConverter.createExpressionInstance(model, "", "", String.class.getName(), ExpressionConstants.CONSTANT_TYPE, true);
}
message.set("targetElementExpression", expression);
......
......@@ -24,7 +24,7 @@ PreferencesButtonLabel=Voreinstellungen
badWorkspaceVersionTitle=Arbeitsbereich-Versionskonflikt
badWorkspaceVersionMessage=Die aktuelle Version ({1}) Ihres Arbeitsbereichs {0} unterscheidet sich von der Version {2} {3}. Ein anderer Nutzer hat diesen Arbeitsbereich evtl. in eine neue Version migriert. Sie k\u00f6nnen die Version {4} des Arbeitsbereichs nicht l\u00e4nger verwenden. Der Standard-Arbeitsbereich wird ge\u00f6ffnet.
resfreshConnectors=Konnektoren werden aktualisiert...
aboutText={2} Edition\nVersion \: {0}\nBuild-ID\: {1}\nCopyright \u00a9 {3} S.A., 2009-2013\nAlle Rechte vorbehalten.
aboutText={2} Edition\nVersion \: {0}\nBuild-ID\: {1}\nCopyright \u00a9 {3} S.A., 2009-{4}\nAlle Rechte vorbehalten.
maximizeCoolbarTooltip=Maximieren
reduceCoolbarTooltip=Minimieren
initializingCurrentRepository=Aktuelles Repository wird initialisiert...
......
......@@ -151,8 +151,8 @@ exportFailedTitle=exportaci\u00f3n fallida
exportFailedMsg=Exportaci\u00f3n ha fallado
emtpyMembershipValue=Un valor de pertenencia est\u00e1 vac\u00edo
defaultUserOrganizationTitle=usuario por defecto
defaultUserOrganizationDesc=Seleccione el nombre de usuario que se utilizar\u00e1 para iniciar sesi\u00f3n en portal
actorHasNoMapping=Actor {0} no est\u00e1 asignado a ning\u00fan grupo, el papel,membresia o usuario
defaultUserOrganizationDesc=Seleccione el nombre de usuario que se utilizar\u00e1 para iniciar la sesi\u00f3n en el Portal
actorHasNoMapping=El actor {0} no est\u00e1 asignado a ning\u00fan grupo, rol, membresia o usuario
incompleteMembership=La membres\u00eda est\u00e1 incompleta
addRemoveActors=Un actor es un marcador de posici\u00f3n para los usuarios que realizan tareas en un proceso. A\u00f1adir actores para cada rol en el proceso y establezca uno como el iniciador. Antes de que un proceso puede ejecutarse, los actores se deben asignar a los usuarios, ya sea en el estudio o en el Portal.
actorDescriptionLane=Un actor es el contenedor para el usuario que realiza tareas en un proceso. Especifique un actor predeterminado para la senda. Este actor tiene que haberse definido al nivel "pool". Tambi\u00e9n puede aplicar el filtro a un actor para definir con mayor precisi\u00f3n el actor.
......
......@@ -24,7 +24,7 @@ PreferencesButtonLabel=Preferencias
badWorkspaceVersionTitle=Conflicto de versiones del espacio de trabajo
badWorkspaceVersionMessage=Su \u00e1rea de trabajo actual\: {0} tiene una versi\u00f3n diferente ({1}) que {2} {3}. Otro usuario puede haber migrado este espacio de trabajo a una versi\u00f3n m\u00e1s reciente. Usted ya no est\u00e1 permitido el uso de este espacio de trabajo con esta versi\u00f3n de {4}. Se abrir\u00e1 el espacio de trabajo predeterminado.
resfreshConnectors=actualizando conectores...
aboutText={2} Edition versi\u00f3n\: {0} Build id\: {1} Copyright \u00a9 {3} S.A., 2009-2013 todos los derechos reservados.
aboutText={2} Edition versi\u00f3n\: {0} Build id\: {1} Copyright \u00a9 {3} S.A., 2009-{4} todos los derechos reservados.
maximizeCoolbarTooltip=Maximizar
reduceCoolbarTooltip=Minimizar
initializingCurrentRepository=Iniciando repositorio actual ...
......
......@@ -35,13 +35,13 @@ validationFailedTitle=Error de validaci\u00f3n\n
stoppingWebServer=Detenci\u00f3n del servidor web ...
startingWebServer=Iniciando el servidor web...
applyingLooknFeel=Aplicaci\u00f3n de apariencia...
loginAs=Seleccione el nombre de usuario y la contrase\u00f1a del usuario que se utilizar\u00e1 para iniciar sesi\u00f3n en el Portal
loginAs=Defina el nombre de usuario y su contrase\u00f1a que se utilizar\u00e1n para iniciar la sesi\u00f3n en el Portal
defaultUserXPThemeLabel=Apariencia predeterminada del Bonita BPM Portal
BonitaPreferenceDialog_UserXP_Settings=Servidor
userNameLLabel=Nombre de usuario
userPasswordLabel=Contrase\u00f1a
consolePreferencePortLabel=& Puerto
consolePreferenceHostLabel=direcci\u00f3n de host
consolePreferenceHostLabel=Host
portAlreadyUseTitle=Puerto no disponible
portAlreadyUseMsg=El puerto {0} ya se utiliza por otra aplicaci\u00f3n.\nPor favor elija otro valor de puerto entre 1024 y 65535.
updatingServerPort=Actualizando puerto del servidor
......
......@@ -3,4 +3,4 @@ takeTransitionAction=Tomar la Transici\u00f3n
dontTakeTransitionAction=No tomar la transici\u00f3n
line=Linea
belongsTo=Pertenece a
havingRole=papel
havingRole=rol
......@@ -5,7 +5,7 @@ consoleLocaleLabel=Idioma usado
studioLocalLabel=idioma {0} (requiere reiniciar)
restartQuestion_title=\u00bfReiniciar {0}?
restartQuestion_msg={0} se debe reiniciar para aplicar los cambios. \u00bfDesea reiniciar ahora?
defaultCoolbarAppearance=Tama\u00f1o predeterminado de Coolbar
defaultCoolbarAppearance=Tama\u00f1o predeterminado de la Coolbar
small=Peque\u00f1o
normal=Normal
warMode=Generar un archivo war (generar un archivo war para cada proceso desplegado)
......@@ -20,20 +20,20 @@ BonitaPreferenceDialog_Deployment=Despliegue
BonitaPreferenceDialog_general=General
BonitaPreferenceDialog_Java=Java
BonitaPreferenceDialog_language=Idioma
BonitaPreferenceDialog_Other=Otro
BonitaPreferenceDialog_Other=Otras
BonitaPreferenceDialog_preferences=Preferencias
BonitaPreferenceDialog_Proxy=Proxy
BonitaPreferenceDialog_Remote_Engine=Motor remoto
BonitaPreferenceDialog_RunMode=modo de ejecuci\u00f3n
BonitaPreferenceDialog_RunMode=Modo de ejecuci\u00f3n
BonitaPreferenceDialog_search=B\u00fasqueda...
BonitaPreferenceDialog_UserXP_Settings=Servidor
BonitaPreferenceDialog_Web=Web
BonitaPreferenceDialog_userProfile=Perfil de usuario
EclipsePreferences=Eclipse
showPassword=Mostrar contrase\u00f1a
defaultAppliThemeLabel=Look'n'feel predeterminado para los formularios de solicitud (que se aplica para el nuevo proceso)
validateBeforeRun=Validaci\u00f3n de diagrama completo antes de cada corrida
defaultAppliThemeLabel=Apariencia usada por defecto en los formularios de la aplicaci\u00f3n (aplicado a nuevos procesos)
validateBeforeRun=Validaci\u00f3n completa del diagrama antes de cada ejecuci\u00f3n
BonitaPreferenceDialog_DBConnectors=Conectores BD
automaticallyAddDriver=Agregar autom\u00e1ticamente el controlador en el archivo .bar.
askRenameDiagram=Renombre el diagrama la primera vez que lo guarde.
askRenameDiagram=Renombrar el diagrama la primera vez que se guarde.
doNotDisplayConnectorDefConfirmationMessage=No mostrar confirmaci\u00f3n en la edici\u00f3n de las definiciones de conector.
......@@ -176,10 +176,10 @@ multipleWidget=M\u00faltiple
pageFlow=Formulario Web
skip=Omitir
pageFlowTransientDataConnectors=Conectores de inicializaci\u00f3n de dato
pageFlowTransientData=Dato transitorio
pageFlowTransientData=Datos transitorios
messageEventAddWizardNameAlreadyExists=El nombre ya existe
formsTabLabel=Formularios
transientDatTabLabel=Dato transitorio
transientDatTabLabel=Datos transitorios
chooseFont=Escojer Letra...
ChooseFigure=Seleccione una figura existente...
applyStyle=Aplicar mismo estilo
......
......@@ -147,7 +147,7 @@ selectFilterImplementationToExportTitle=Exporter le filtre d'acteur
selectFilterImplementationToExportDesc=S\u00e9lectionnez un filtre de l'acteur \u00e0 exporter
exportSuccessfulTitle=Exportation r\u00e9ussie
exportSuccessfulMsg=Op\u00e9ration d'export r\u00e9ussie
exportFailedTitle=Exporta\u00e7\u00e3o falhou
exportFailedTitle=L'export a \u00e9chou\u00e9
exportFailedMsg=Exportation a \u00e9chou\u00e9e
emtpyMembershipValue=Une valeur d'adh\u00e9sion est vide
defaultUserOrganizationTitle=Utilisateur par d\u00e9faut
......
......@@ -24,7 +24,7 @@ PreferencesButtonLabel=Pr\u00e9f\u00e9rences
badWorkspaceVersionTitle=Conflit de version d'espace de travail
badWorkspaceVersionMessage=Le repository courrant {0} \u00e0 une version diff\u00e9rente ({1}) que Bonita Studio {2}. Un autre utilisateur \u00e0 peut-\u00eatre migr\u00e9 ce repository vers une version plus r\u00e9cente. Vous ne pouvez plus utiliser ce repository avec cette version de Bonita Studio. Le repository par d\u00e9faut va \u00eatre utilis\u00e9.
resfreshConnectors=Actualisation des connecteurs...
aboutText={2} Edition\nVersion \: {0}\nBuild id \: {1}\nCopyright \u00a9 {3} S.A., 2009-2013\nTous droits r\u00e9serv\u00e9s.
aboutText={2} Edition\nVersion \: {0}\nBuild id \: {1}\nCopyright \u00a9 {3} S.A., 2009-{4}\nTous droits r\u00e9serv\u00e9s.
maximizeCoolbarTooltip=Agrandir
reduceCoolbarTooltip=Minimiser
initializingCurrentRepository=Initialisation du repository courant...
......
......@@ -178,7 +178,7 @@ Group_title=Groupe
Group_desc=Cr\u00e9er un groupe qui peut contenir d'autres champs
IFrame_desc=Champ de donn\u00e9e qui cr\u00e9e une IFrame bas\u00e9 sur l'URL
IFrame_title=IFrame
confirmDelete_title=Etes-vous s\u00fbre ?
confirmDelete_title=Etes-vous s\u00fbr ?
confirmDelete_message=\u00cates vous s\u00fbr de vouloir supprimer le(s) \u00e9l\u00e9ment(s) suivant ? {0}
StartError_desc=Cr\u00e9er un nouvel \u00e9v\u00e9nement de d\u00e9but de type erreur. Il peut uniquement \u00eatre utilis\u00e9 dans un sous-processus \u00e9v\u00e9nementiel.
StartError_title=Ev\u00e9nement de d\u00e9but erreur
......
......@@ -37,5 +37,5 @@ initializingJavaProject=Initialisation du projet java...
creatingStore=Chargement de l'espace de stockage {0} ...
initializingProjectClasspath=L'initialisation du classpath du projet...
writePermission=Droits d'\u00e9criture refus\u00e9s pour {0}
exportFailed=Exporta\u00e7\u00e3o falhou
exportFailed=L'export a \u00e9chou\u00e9
......@@ -46,4 +46,4 @@ anonymousUser=Utilisateur anonyme
anonymousUserMessage=Configurer le nom d'utilisateur et le mot de passe pour l'ex\u00e9cution en tant qu'utilisateur anonyme
anonymousUserNameMissingMessage=Un nom d'utilisateur anonyme est manquant
synchronizingConfiguration=Configuration de la synchronisation...
exportFailedTitle=Exporta\u00e7\u00e3o falhou
exportFailedTitle=L'export a \u00e9chou\u00e9
......@@ -34,7 +34,7 @@ AppearanceSection_AlignRight_tooltip=Droite
AppearanceSection_AlignJustify_tooltip=Justifi\u00e9
AppearanceSection_Italic_tooltip=Italique
AppearanceSection_Bold_tooltip=Gras
AppearanceSection_Class_tooltip=Entrer un nom de la classe, il pourra \u00eatre utilis\u00e9 pour fournir vos propres fichiers CSS.
AppearanceSection_Class_tooltip=Entrez un nom de classe si vous fournissez vos propres fichiers CSS.
AppearanceSection_StyleAttr_tooltip=Vous pouvez param\u00e9trer des attributs de style CSS ici, e.g. color\:red;
AppearanceSection_Width_tooltip=Attribut de largeur de l'\u00e9l\u00e9ment en pixels (ajouter un % si vous souhaitez une taille relative)
AppearanceSection_Height_tooltip=Attribut de hauteur de l'\u00e9l\u00e9ment en pixels (ajouter un % si vous souhaitez une taille relative)
......@@ -104,7 +104,7 @@ table_userFirstRowAsHeader=Utiliser la premi\u00e8re ligne en tant qu'en-t\u00ea
table_userFirstColumnAsHeader=Utiliser la premi\u00e8re colonne en tant qu'en-t\u00eate
table_paginationNumber=Pagination\: nombre maximum de lignes \=
table_selectionSingle=Simple
table_selectionMultiple=Multiples
table_selectionMultiple=Multiple
customizeMandatorySymbol=Personnaliser le symbole "obligatoire"
customizeMandatory_WizardTitle=Personnaliser le d\u00e9corateur "obligatoire"
customizeMandatory_WizardDesc=Personalisez l'apparence du symbole "obligatoire" de votre application.
......
......@@ -6,7 +6,7 @@ timerDefinitionNotExported=La d\u00e9finition de la minuterie pour l'\u00e9v\u00
formsNotExported=Les formulaires et autres ressources ne sont pas export\u00e9s
defaultMappingToActivity=Impossible de trouver une valeur pour remplacer {0}. Saisissez une activit\u00e9.
exportingTo=Exporter vers
exportFailedTitle=Exporta\u00e7\u00e3o falhou
exportFailedTitle=L'export a \u00e9chou\u00e9
exportFailedMessage=L'op\u00e9ration d'export a \u00e9chou\u00e9.
exportSuccessfulTitle=Exportation r\u00e9ussie
exportSuccessfulMessage=L'op\u00e9ration d'export s'est termin\u00e9e avec succ\u00e8s.
......
......@@ -33,4 +33,4 @@ selectAValidatorWarning=S\u00e9lectionnez un validateur pour continuer
selectValidatorDesc=S\u00e9lectionnez un validateur dans la liste suivante
selectValidatorTitle=S\u00e9lectionnez un validateur
validatorSource=Sources du validateur
exportFailedTitle=Exporta\u00e7\u00e3o falhou
exportFailedTitle=L'export a \u00e9chou\u00e9
......@@ -24,7 +24,7 @@ PreferencesButtonLabel=Preferenze
badWorkspaceVersionTitle=Conflitto di versione del workspace
badWorkspaceVersionMessage=Lo spazio di lavoro corrente {0} \u00e8 una versione differente ({1}) rispetto BOS Studio {2}. Un altro utente potrebbe avere migrato questo lavoro per una versione pi\u00f9 recente. Non sei pi\u00f9 il permesso di utilizzare questo spazio di lavoro con questa versione di BOS. L'area di lavoro di default sar\u00e0 lanciato.
resfreshConnectors=Sto rinnovando i connettori...
aboutText={2} Edizione\nVersione \: {0}\nid della Build\: {1}\nCopyright \u00a9 {3} S.A., 2009-2013\nTutti i diritti riservati.
aboutText={2} Edizione\nVersione \: {0}\nid della Build\: {1}\nCopyright \u00a9 {3} S.A., 2009-{4}\nTutti i diritti riservati.
maximizeCoolbarTooltip=Massimizzare
reduceCoolbarTooltip=Minimizza
initializingCurrentRepository=Sto inizializzando il repository corrente...
......
......@@ -198,7 +198,7 @@ SubprocessEventDefaultName=Evento sottoprocesso
SubprocessEvent_desc=Crea un nuovo Evento sottoprocesso
SubprocessEvent_title=Evento sottoprocesso
CallActivity_desc=Crea una nuova Call Activity
CallActivity_title=chiama l'attivit\u00e0
CallActivity_title=Attivit\u00e0 di chiamata
name=Nome
version=Versione
edit=modifica...
......@@ -216,7 +216,7 @@ StartTimerCondition_script=Script
StartTimerCondition_dayOfMonth=Giorno del mese
StartTimerCondition_dayOfYear=Giorno dell'anno
StartTimerCondition_dayOfMonthInWeek=Giorno del mese nella settimana
StartTimerCondition_from=Da
StartTimerCondition_from=dal
StartTimerCondition_at=a
StartTimerCondition_every=Ogni
StartTimerCondition_hours=ore
......
#X-Generator: crowdin.net
previewButton=Anteprima
advancedPreviewButton=Anteprima avanzata...
lnfForPreview=Look'n Feel\:
advancedPreviewButton=Visualiza\u00e7\u00e3o avan\u00e7ada...
lnfForPreview=Apar\u00eancia\:
browserForPreview=Browser\:
formPreview=Anteprima del modulo corrente...
noActorDefined=Modulo non pu\u00f2 essere visualizzato in anteprima. Nessun attore \u00e8 definito sullo step {0}.
noActorMappingDefined=Il modulo non pu\u00f2 essere visualizzato in anteprima. Nessun actor mapping \u00e8 definito.
formPreview=Pr\u00e9-visualiza\u00e7\u00e3o do formul\u00e1rio...
noActorDefined=Formul\u00e1rio n\u00e3o pode ser visualizado. Nenhum ator definido no passo {0}.
noActorMappingDefined=Formul\u00e1rio n\u00e3o pode ser visualizado. Nenhum mapeamento de ator foi definido.
noActorDefinedTitle=Nessun attore definito
noActorMappingDefinedTitle=Nessuna Mappatura Attori definita
noActorMappingDefinedTitle=Nenhum mapeamento de ator definido
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment