[55862] in SAPr3-news
Re: hylaFAX und SAP R/3
daemon@ATHENA.MIT.EDU (Mecons)
Tue Nov 1 04:50:26 2005
To: sapr3-news@mit.edu
Date: Tue, 1 Nov 2005 10:50:17 +0100
From: "Mecons" <news@www.mecons.com>
Message-ID: <43673a5b$0$23178$fa624c98@news.rtlnet.de>
Reply-To: "Mecons" <news@www.mecons.com>
Hallo Dirk,
wie von Axel bereits angeregt definierst du einen PS-Drucker zur Übergabe
interpretierbarer Daten an Hylafax.
In der Druckerdefinition kann für diesen Drucker eine eigene
"Printparameteriesierung incl. Printprogramm" auf
BS-Ebene hinterlegt werden. Darin den Parameter für "Tel-Nr" mitgeben und
anschließend auf Systemebene
im Printprogramm auslesen --> an Hylafax weitergeben.
Etwas in der Art habe ich früher mal gemacht als die Druckersteuerung von
SAP noch nicht so ausgereift war,
anbei die entsprechenden Scripte wobei sapprint.sp das in der RZ10
eingetragene Printprogramm war.
Gruß Achim
#!/bin/sh
# @(#)sapprint.sh 23.11.1994 Ewikon, Medenbach
##########################################################
#
#*********************************************************
#****EWIKON Heisskanalsysteme GmbH************************
#****Siegener Strasse 35**********************************
#****D-35066 Frankenberg**********************************
#****Author: Achim Medenbach******************************
#****Telefon: +49 6451 501156*****************************
#****Telefax: +49 6451 501250*****************************
#****E-Mail => Internet: am@office.ewikon.de**************
#****E-Mail => Compuserve: 100350.3003********************
#*********************************************************
#
# aktuelle Releases:
# Solaris 2.3
# SAP R/3 Rel. 22B
#
# sap-drucker-script
# dieses script leitet die druckauftraege von sap r/3
# an das spool-system weiter
# dies ist notwendig, da die sap-schnittstelle
# notwendige und effiziente druckparameter
# nicht immer unterstuetzt
###########################################################
P=$1
C=$2
F=$3
O=$4
###########################################################
# Start Sonderroutine Fax-Nummern zur Uebergabe an Telefax #
###########################################################
t=$5
if test "X$6" != "X"
then
t0=$t
t=`echo "$t0$6"`
fi
if test "X$7" != "X"
then
t0=$t
t=`echo "$t0$7"`
fi
if test "X$8" != "X"
then
t0=$t
t=`echo "$t0$8"`
fi
###########################################################
# Ende Sonderroutine Fax-Nummern zur Uebergabe an Telefax #
###########################################################
# UNIX-User, der bei fehler benachrichtigt werden soll
OPER=t11adm
# Dateiname der Drucker und Druckbefehle
DRUCKPAR=/usr/local/sap/sapprint.par
if test "X$P" = "X"
then
echo "Ausgabegeraet nicht benannt" 1>&2
elif test "X$F" = "X"
then
echo "Dateiname fehlt" 1>&2
else
PAR_SP=`fgrep "$P" "$DRUCKPAR" | cut -d":" -f1`
if test "X$PAR_SP" = "X"
then
echo "Ausgabegeraet $P nicht in Parameterdatei" | mail $OPER
# echo "Ausgabegeraet $P nicht in Parameterdatei" 1>&2
else
PAR_UP=`fgrep "$P" "$DRUCKPAR" | cut -d":" -f2`
fi
if test "X$PAR_UP" = "X"
then
echo "keine Druckparameter fuer Geraet $P in Parameterdatei" | mail $OPER
# echo "keine Druckparameter fuer Geraet $P in Parameterdatei" 1>&2
else
eval $PAR_UP
fi
fi
----------snip---------snip---------
sapprint.par
werb:/usr/bin/lp -dedv1 -n$C -c $F >/dev/null; /bin/rm $F
edv1:/usr/bin/lp -dedv1 -otray3 -n$C -c $F >/dev/null; /bin/rm $F
edv2:/usr/bin/lp -dedv1 -otray1 -c $F >/dev/null; /bin/rm $F
gl99:/usr/bin/lp -dedv1 -n$C -c $F >/dev/null; /bin/rm $F
eink1:/usr/bin/lp -dedv1 -otray3 -n$C -c $F >/dev/null; /bin/rm $F
eink2:/usr/bin/lp -dedv1 -otray1 -c $F >/dev/null; /bin/rm $F
verk1:/usr/bin/lp -dedv1 -otray3 -n$C -c $F >/dev/null; /bin/rm $F
verk2:/usr/bin/lp -dedv1 -otray1 -c $F >/dev/null; /bin/rm $F
expo1:/usr/bin/lp -dedv1 -otray3 -c $F >/dev/null; /bin/rm $F
expo2:/usr/bin/lp -dedv1 -otray1 -c $F >/dev/null; /bin/rm $F
fibu1:/usr/bin/lp -dedv1 -otray3 -n$C -c $F >/dev/null; /bin/rm $F
fibu2:/usr/bin/lp -dedv1 -otray1 -c $F >/dev/null; /bin/rm $F
lag1:/usr/bin/lp -dedv1 -otray3 -n$C -c $F >/dev/null; /bin/rm $F
lag2:/usr/bin/lp -dedv1 -otray1 -n$C -c $F >/dev/null; /bin/rm $F
vers1:/usr/bin/lp -dedv1 -otray3 -n$C -c $F >/dev/null; /bin/rm $F
vers2:/usr/bin/lp -dedv1 -otray1 -c $F >/dev/null; /bin/rm $F
hrzfi1:/usr/bin/lp -dfi03 -otray1 -n$C -c $F >/dev/null; /bin/rm $F
hrzfi2:/usr/bin/lp -dfi03 -otray2 -c $F >/dev/null; /bin/rm $F
rech:/usr/bin/lp -dedv1 -otray1 -c $F >/tmp/rech.out; /bin/rm $F
bfax:/usr/local/sap/sapfax 0200-0600 $F $O $t >/dev/null; /bin/rm $F
dfax:/usr/local/sap/sapfax 0000-2359 $F $O $t >/dev/null; /bin/rm $F
echo:/usr/bin/echo "P=$P,C=$C,F=$F,I=$I,J=$J,K=$K,O=$O,t=$t"
>>/tmp/echo.log; cp $F /tmp; /bin/rm $F
---------snip----------snip-------------
sapfax
#!/bin/sh
# Script zum Transport von Fax-Dateien zur Fax-Software
#
if [ $# -lt 4 ]
then
echo " "
echo "Anzahl Parameter kleiner 4 " >>/tmp/fax.log
echo " "
exit
fi
SAPFAX=office
FAXPARAM=/usr/local/sap/faxtrans
FAXZEIT=$1
FAXFILE=$2
FAXUSER=$3
FAXNUM=$4
FAXDIR=/usr/local/sap/fax
cd $FAXDIR
cp $FAXFILE /usr/local/sap/fax
for FILE_NAME in *
do
mv $FILE_NAME $FILE_NAME.data
echo "$FAXZEIT;$FAXUSER;$FAXNUM" >/usr/local/sap/fax/$FILE_NAME.tele
done
echo "$FAXZEIT, $FAXFILE, $FAXUSER, $FAXNUM " >>/tmp/fax.log
ftp -v $SAPFAX <$FAXPARAM
rm *
cd
------snip-----------snip-----------