Rstudio-shiny-Sql Server

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Serge Rapenne
Messages : 1426
Enregistré le : 20 Aoû 2007, 15:17
Contact :

Rstudio-shiny-Sql Server

Messagepar Serge Rapenne » 05 Oct 2018, 15:42

Bonjour à tous,

J'ai un pb qui me rend un peu chèvre !
Je développe une application Shiny avec RSutdio server (installé sur Centos 7).
La version de production de cette application tourne sur un shiny-server qui est sur la même machine que le Rstudio-Server.

Pour debugger mes modifications je lance l'application directement depuis Rstudio avec un runApp. Ça fonctionne MAIS lorsque je fait une insertion d'un champ texte contenant des caractères accentués dans une table d'une base SqlServer, je perd les accents dans la base alors que si je lance cette application depuis un navigateur grâce à shiny-server, les accents sont correctement traités.

J'ai pensé qu'il y avait un pb de locale, alors j'ai ajouté dans mon code

Code : Tout sélectionner

Getlocale<-Sys.getlocale()
  save(Getlocale,file="locale.RData")

mais dans les deux cas

Code : Tout sélectionner

GetLocale
[1] "LC_CTYPE=fr_FR.UTF-8;LC_NUMERIC=C;LC_TIME=fr_FR.UTF-8;LC_COLLATE=fr_FR.UTF-8;LC_MONETARY=fr_FR.UTF-8;LC_MESSAGES=fr_FR.UTF-8;LC_PAPER=fr_FR.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=fr_FR.UTF-8;LC_IDENTIFICATION=C"

Donc le pb n'est pas là.

Quelqu'un a t'il déjà rencontré ce type de pb et a trouvé le pourquoi du comment ?

Merci d'avance

Serge

Mickael Canouil
Messages : 1315
Enregistré le : 04 Avr 2011, 08:53
Contact :

Re: Rstudio-shiny-Sql Server

Messagepar Mickael Canouil » 08 Oct 2018, 09:32

Bonjour,

en passant par rstudio (server), l'encodage n'est pas que celui du serveur (locales), mais également celui du navigateur et ordinateur utilisé.
Si l'encodage n'est pas le même, rstudio doit effectué une conversion d'encodage, ce qui peut ne pas donner le résultat escompté.

En gros, est-ce-que l'encodage par défault du navigateur ouvert par rstudio après le runApp() est le même que celui du navigateur via lequel vous accéder à l'application shiny via le serveur?

PS: les "locales" ne permettent de définir que la façon dont sont gérer les chaînes de caractère une fois qu'elles sont dans R. Cela ne change en rien l'encodage de la source des dites chaînes.

Cordialement,
Mickaël
mickael.canouil.fr | rlille.fr

Serge Rapenne
Messages : 1426
Enregistré le : 20 Aoû 2007, 15:17
Contact :

Re: Rstudio-shiny-Sql Server

Messagepar Serge Rapenne » 08 Oct 2018, 13:10

Merci de ton retour Mickaël,

Après d'autre tests, je pense que le pb vient de Rstudio. En effet, que ce soit dans Rstudio ou en utilisant Shiny-server, je n'utilise que Firefox. Mon poste de travail est sous Windows mais j'ai essayé de lancer mon appli dans Rstudio-server avec Firefox depuis Windows et Linux, le pb reste présent, par contre, si je lance l'appli avec runApp depuis une console R hors de Rstudio (sur la machine ou Rstudio est installé), les accents sont conservés. J'aurais bien testé en copiant mon appli sur Windows et en la lançant depuis Rgui mais il aurait fallut que je modifie mon code pour qu'il fonctionne dans Windows (les connexions aux db ne sont pas portables) et je n'ai pas vraiment le temps.

Serge

Mickael Canouil
Messages : 1315
Enregistré le : 04 Avr 2011, 08:53
Contact :

Re: Rstudio-shiny-Sql Server

Messagepar Mickael Canouil » 09 Oct 2018, 08:32

Bonjour,

et les options d'encodage de Rstudio sont bien définies ?
Au niveau global:
Image
Ou par "projet":
Image
Mickaël
mickael.canouil.fr | rlille.fr

Serge Rapenne
Messages : 1426
Enregistré le : 20 Aoû 2007, 15:17
Contact :

Re: Rstudio-shiny-Sql Server

Messagepar Serge Rapenne » 20 Déc 2018, 09:34

Bonjour,

Je ne sais toujours pas pourquoi, le comportement est différent entre le lancement interactif et le lancement via shiny-server mais j'ai résolu le pb par une mise à jour de FreeTDS. J'utilise maintenant la version1.1 compilé par mes soins, je n'ai plus de pb d'accent et un autre pb que je n'avais pas évoqué avant qui entrainait la troncature de champ texte à 255 caractères lors d'une requête "select" en mode interactif est lui aussi corrigé (là encore le pb n’était pas présent avec shiny-server)

Merci Mickael pour tes pistes

Serge


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité