logo

Client/serveur : SAS ne trouve pas mes formats !

Je travaille en client/serveur. Je crée en RSUBMIT des formats avec une PROC FORMAT. Je fais une option FMTSEARCH sur la librairie qui contient le catalogue de formats. Pour l’exécution de procédures, tout va bien. Mais quand je veux regarder ma table avec l’Explorer, SAS me dit qu’il ne trouve pas les formats. Que se passe-t-il ?

LE PROBLEME : l’architecture client/serveur ne fait pas transiter les formats. Cela implique entre autres qu’on ne peut pas utiliser sur le client les formats du serveur et vice-versa, et que l’on ne peut pas créer sur le serveur des formats depuis le poste client (même dans un RSUBMIT).

LA SOLUTION : Première étape, créer le(s) format(s) en LOCAL. Donc sur le PC. Pour cela, exécuter EN-DEHORS du bloc RSUBMIT / ENDRSUBMIT la procédure formats avec une syntaxe

 

PROC FORMAT LIB = librairie_locale ;
 etc...
 RUN ;

Deuxième étape, le catalogue FORMATS créé dans la librairie locale doit être « remonté » sur le serveur. Pour cela, SUR LE SERVEUR cette fois (dans un bloc RSUBMIT / ENDRSUBMIT), utiliser la PROC UPLOAD qui est dédiée à la copie de « membres » SAS d’une librairie client dans une librairie distante du serveur.
Si, par exemple, vous avez stocké les formats dans WORK.FORMATS, vous les remonterez ainsi vers ServLib.FORMATS :

PROC UPLOAD INCAT = WORK.FORMATS
 OUTCAT = ServLib.FORMATS ;
 RUN ;