IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SAS Base Discussion :

Affichage des retours charriots


Sujet :

SAS Base

  1. #1
    Membre du Club
    Homme Profil pro
    statisticien
    Inscrit en
    Juin 2017
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : statisticien
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2017
    Messages : 54
    Points : 46
    Points
    46
    Par défaut Affichage des retours charriots
    Bonjour à tous,

    Je viens vers vous aujourd'hui car j'ai un problème lors de l'importation d'un jeu de données dans sas.

    J'ai un fichier Excel que je dois convertir en format Access (pour y effectuer des opérations) et pouvoir l'importer via SAS dans une base de données Oracle.
    Les personnes remplissant mon fichier Excel ne s'encombrent pas de mettre des points à la fin de leurs phrases et préfèrent utiliser des retours chariots (touche alt + entrée).

    Mon problème est le suivant quand j'effectue une requête dans Oracle tous les retours chariots ont sauté et le paragraphe deviens vite illisible. J'ai réussi à faire un programme vba afin que les retours chariots ne disparaissent pas entre Excel et Access mais après l'importation dans SAS le texte est illisible.
    Je précise que lors de l'importation des données dans SAS je n'utilise pas une proc import mais que je fait fichier -> importé des données.

    Ma question est donc la suivante: Dois-je utiliser une proc import avec peut être un paramètre spécifique? Idéalement puis je remplacer les retours chariots par un code (par ex <br>) dans Excel afin que les retours chariots restent dans SAS?
    Question bonus: dois je remplacer les retours chariots par un code ou je ne sais quoi dans SAS afin qu'ils restent dans Oracle.

    J'espère avoir été clair, en complément je vous ai mis un fichier contenant la capture écran d'un fichier test Excel et le même fichier après importation dans SAS.

    Merci par avance de votre aide,

    Cordialement,

    Yannick
    Fichiers attachés Fichiers attachés

  2. #2
    Membre régulier
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2017
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Novembre 2017
    Messages : 63
    Points : 82
    Points
    82
    Par défaut
    Bonjour,

    Pouvez-vous coller en texte un exemple de texte "illisible" ou bien expliciter un peu plus la structure de la table dans SAS?

    (je n'ouvre pas de fichier externe, c'est le cas pour beaucoup de personnes)

  3. #3
    Membre du Club
    Homme Profil pro
    statisticien
    Inscrit en
    Juin 2017
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : statisticien
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2017
    Messages : 54
    Points : 46
    Points
    46
    Par défaut Exemple de tableau
    Re-bonjour,

    Merci de votre intérêt pour mon topique.

    Ci-joint un exemple, bien entendu mes données sont bien plus importantes donc plus difficilement lisible mais ceci peut je le pense servir d'exemple.

    Ma table importé dans SAS ressemble à celle ci-dessous.

    nom prenom sexe hobbies
    dupond jean h ski
    dupont pierre f skiskatetennis
    du jardin guillaume h skiskatetennis

    Alors que dans Excel entre chaque hobbies il y a un retour à la ligne (au sein de la même cellule).

    Ci-dessous les copies d'écran insérées dans ma réponse:
    Pièce jointe 347722
    Pièce jointe 347727

  4. #4
    Membre régulier
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2017
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Novembre 2017
    Messages : 63
    Points : 82
    Points
    82
    Par défaut
    SAS ne gère pas de retour à la ligne, ce n'est pas un tableur. Vous devez donc réfléchir à la façon dont vous voulez que vos données soient organisées dans votre table.
    Soit une ligne par phrase et donc plusieurs lignes pour chaque individu, soit une ligne par individu et plusieurs colonnes (une colonne pour chaque phrase).
    La dernière solution est de créer une chaîne de caractères en insérant un séparateur entre chaque "phrase" (ou en tout cas morceau de texte à isoler).

    Dans ces conditions, tout est possible au niveau de l'import. Tout dépend de ce que vous voulez en sortie.

  5. #5
    Membre expérimenté
    Homme Profil pro
    Attaché statisticien
    Inscrit en
    Mai 2011
    Messages
    687
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Attaché statisticien
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2011
    Messages : 687
    Points : 1 581
    Points
    1 581
    Par défaut
    Bonjour, êtes-vous sûr que le retour chariot a vraiment disparu ? Avez-vous essayé d'examiner les chaînes de caractères récupérées sous SAS en hexadécimal ?

  6. #6
    Membre du Club
    Homme Profil pro
    statisticien
    Inscrit en
    Juin 2017
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : statisticien
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2017
    Messages : 54
    Points : 46
    Points
    46
    Par défaut Retour chariot
    Bonjour,

    Alors plusieurs lignes par individus n'est pas possible cela fausserait mes données. Quand à la seconde option c'est en quelque sorte ma solution de secours de remplacer mes retours chariots par ". " ainsi je reconstituerais des phrases. Cependant mes données sont des comptes rendu médicaux et ils seraient plus lisible avec des retours à la ligne.
    L'affichage dans SAS in fine m'importe peu ce qui m'intéresse surtout c'est que les données soit correctement "enregistré" dans Oracle (c'est juste que lors de l'étape SAS les retours chariots ne s'affiche plus). Connaissez-vous sinon l’existence d'une balise à intégrer afin qu'Oracle stock les données avec retour chariot?

    Vérification faite à l'instant, j'ai examiné le code hexadécimal de mes cellules SAS et les retours chariots sont bien présent (plusieurs code 0A au milieu des chiffres donc à moins que cela puisse signifier autre chose ils n'ont pas sauté dans SAS). Le problème viendrait donc probablement du passage entre SAS et Oracle et non entre Access et Oracle.

    Cordialement,

    Yannick

  7. #7
    Membre expérimenté
    Homme Profil pro
    Attaché statisticien
    Inscrit en
    Mai 2011
    Messages
    687
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Attaché statisticien
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2011
    Messages : 687
    Points : 1 581
    Points
    1 581
    Par défaut
    Ton problème semble donc un questionnement Oracle et non SAS. Rendez-vous donc dans le forum subséquent si il existe... Cordialement

  8. #8
    Membre éprouvé
    Avatar de Stackware
    Homme Profil pro
    ArchiDuc de la Sasserie
    Inscrit en
    Juillet 2013
    Messages
    439
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : ArchiDuc de la Sasserie
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2013
    Messages : 439
    Points : 1 017
    Points
    1 017
    Billets dans le blog
    4
    Par défaut
    Bonjour,
    Je me disais qu'il serait peut-être possible de déclarer le champ en CLOB dans Oracle, et de l'utiliser à partir de SAS comme ça?
    Il y a un article qui pourrait aider : champs Oracle particuliers.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PowerShell] Exécution et affichage des retours de plusieurs scripts
    Par devilsnake88 dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 04/12/2015, 08h28
  2. Suppression des retour charriot (Line Feed)
    Par manucha dans le forum Unix
    Réponses: 1
    Dernier message: 27/10/2008, 13h09
  3. Problème d'affichage des retours à la ligne
    Par Beaveroli dans le forum ASP.NET
    Réponses: 8
    Dernier message: 08/08/2007, 18h09
  4. Affichage des retours à la ligne
    Par joquetino dans le forum Langage
    Réponses: 1
    Dernier message: 29/03/2006, 20h23
  5. [XSLT] Suppression des retours charriots
    Par Hoegaarden dans le forum XSL/XSLT/XPATH
    Réponses: 6
    Dernier message: 17/08/2005, 16h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo