FUNCTION runscript(_self, _cScriptName)
//-DEFAULTSCRIPT-//
// -----------------------------------------
// 'Beratungsprotokoll'
// -----------------------------------------
// benötigte Script's
global AusgabeFussZeile := _cScriptName + "01.txt"
global AusgabeKopfZeile := _cScriptName + "02.txt"
//global AusgabeTelFax := _cScriptName + "03.txt"
//global AusgabeGeschZeit := _cScriptName + "04.txt"
global AusgabeText := _cScriptName + "05.txt"
global Umbruch := _cScriptName + "06.txt"
global AusgabeMemo := _cScriptName + "07.txt"
global AusgabeTabZeile := _cScriptName + "08.txt"

local n
local i 

local cID_KdGspr
local nUserNr
local cKdNr
local aKdAnschrift
local cKdAnschriftName
local cKdAnschrift
local cKdOrt
local cKdStammName 
local cKdStammAnschrift
local cArt
local nAgNummer
local nAgCount
local cVersicherer
local cPraemie
local cBesonderheit
local cZahlweise
local nPraemie
local aAusschreib
local nPolRecno
local aAgRecno
local nAgRecno
local nSpartenID
local nAdd
local nPos
local cSpartenBasisInfo
local cBlock
local cTxt

local cKdEntscheid01
local cKdEntscheid02
local cKdEntscheid03
local cKdEntsch

local nZA
local nZAmedium
local nFondsize
local nFondsizeSmall
local nFondsizeTitel
local nFondsizeMedium
local nFonds
local nFondsattribNormal
local nFondsattribFett

local nTabHeight
local nTabHeightRow
local nTabWidth1
local nTabWidth2
local nTabWidth3

local nTab0
local nTab1
local nTab1a
local nTab2
local nTab2a
local nTab3

local nY
local nX
local nDiff
local nPos1
local nPos2
local nPos3

local lNoEmptyShow

cKdEntscheid01 := "Ich nehme den Rat meines Maklers an und bitte um Eindeckung gemäß dem Angebot und der Empfehlung"
cKdEntscheid02 := "Ich nehme den Rat nicht an und möchte keine derartige Versicherung abschließen. Über die Konsequenz der damit fehlenden Risikoabsicherung bin ich mir bewußt und werde keine Haftungsansprüche daraus stellen"
cKdEntscheid03 := "Ich wünsche den Abschluß der nachstehend aufgeführten Police:"

nZA := 40 // Zeilenabstand
nZAmedium := 35

nFondsize := 35 // Schriftgröße
nFondsizeMedium := 30
nFondsizeSmall := 25 // Schriftgröße für Tabelle
nFondsizeTitel := 45 // Schriftgröße für Titel

nFonds := _self:_schrift_roman()
nFondsattribNormal := _self:_attr_normal()
nFondsattribFett := _self:_attr_fett()

nUserNr := 0
cKdNr := ""
cKdAnschriftName := ""
cKdAnschrift := ""
cKdOrt := ""
cKdStammName := ""
cKdStammAnschrift := ""

nTab0 := 210
nTab1 := 1000
nTab1a := nTab1 + 150
nTab2 := 0
nTab2a := nTab2 + 40
nTab3 := 350

cID_KdGspr := _self:cID_KdGspr

lNoEmptyShow := _self:lNoEmptyShow

// -----------------------------------------
// benötigte Kd-Variable ermitteln
// -----------------------------------------
_self:_dbsetdeleted("DBKdGespraech", .T.)
_self:_dbsetorder("DBKdGespraech", 2)
IF (_self:__dbseek("DBKdGespraech", cID_KdGspr)) == .T.
 // Berater
 nUserNr := _self:_dbfieldget("DBKdGespraech","USERNR")
 // Kunde
 cKdNr := _self:_dbfieldget("DBKdGespraech","KDNR_G") + _self:_dbfieldget("DBKdGespraech","KDNR_U")
 aKdAnschrift := _self:pdf_aGetKdAnschrift(cKdNr)
 cKdAnschriftName := aKdAnschrift[6]
 cKdAnschrift := aKdAnschrift[7]
 cKdOrt := aKdAnschrift[8] + " " + aKdAnschrift[9]
 cKdStammName := _self:pdfGetKdName(cKdNr)
 cKdStammAnschrift := _self:pdfGetKdAdresse(cKdNr)
ENDIF


// -----------------------------------------
// Beginn Seite erzeugen				
// -----------------------------------------
_SELF:seite_neue_seite()
_SELF:seite_waehle_papierformat( _self:_papier_A4(), _self:_format_hochformat() )
_SELF:seite_setze_raender( _self:nRandLinks, _self:nRandOben, _self:nRandRechts, _self:nRandUnten )

// Konstante f. Tabelle
nTabHeight := 40 // Höhe der Titelzeile
nTabHeightRow := 70 // Höhe der Datenzeilen
nTabWidth1 := 400
nTabWidth2 := 400
nTabWidth3 := _SELF:seite_x_ausdehnung() - nTab2 - nTabWidth1 - nTabWidth2

_SELF:AusgabeBmp()


ExecuteScript(AusgabeFussZeile,_self)	
ExecuteScript(AusgabeKopfZeile,_self)

// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
// Beratungsprotokoll
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
nPos := 0

_SELF:wYTemp := _SELF:nY_Pos_Anschr_Text
_SELF:waehle_schrift( "ARIAL", nFondsizeTitel, nFonds, nFondsattribFett )
_SELF:txt_gerichtet(_SELF:wYTemp,_self:_txt_links(),"Beratungsprotokoll")
_SELF:wYTemp := _SELF:wYTemp + (nZA * 2)
_self:gdi_line(0, _SELF:wYTemp, _SELF:seite_x_ausdehnung(), _SELF:wYTemp)
_SELF:wYTemp := _SELF:wYTemp + nZA

// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
// Kunde, Berater
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
// Zeile 1
_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribNormal )
_SELF:txt_gerichtet(_SELF:wYTemp,_self:_txt_links(),"Kunde:")
_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
_SELF:txt_bereich(nTab0,_SELF:wYTemp,nTab1-5,_SELF:wYTemp+nZA,_self:_txt_links(),cKdStammName)

_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribNormal )
_SELF:txt_absolut(nTab1,_SELF:wYTemp,"Berater:")
_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
_SELF:txt_absolut(nTab1a,_SELF:wYTemp,_self:pdf_cUserNameFromUserNr(nUserNr))
_SELF:wYTemp := _SELF:wYTemp + nZA

// Zeile 2
_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribNormal )
_SELF:txt_gerichtet(_SELF:wYTemp,_self:_txt_links(),"Anschrift:")
_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
_SELF:txt_bereich(nTab0,_SELF:wYTemp,nTab1-5,_SELF:wYTemp+nZA,_self:_txt_links(),cKdStammAnschrift)

_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribNormal )
_SELF:txt_absolut(nTab1,_SELF:wYTemp,"Telefon:")
_SELF:txt_absolut(nTab1a,_SELF:wYTemp,_self:pdf_cUserDurchwahlFromUserNr(nUserNr))
_SELF:wYTemp := _SELF:wYTemp + nZA

// Zeile 3
_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribNormal )
_SELF:txt_absolut(0,_SELF:wYTemp,"Datum:")
_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
_SELF:txt_absolut(nTab0,_SELF:wYTemp,dtoc(_self:_dbfieldget("DBKdGespraech","GSPRVOM")))

_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribNormal )
_SELF:txt_absolut(nTab1,_SELF:wYTemp,"Fax:")
_SELF:txt_absolut(nTab1a,_SELF:wYTemp,_self:pdf_cUserFaxFromUserNr(nUserNr))
_SELF:wYTemp := _SELF:wYTemp + nZA

// Zeile 4
_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribNormal )
_SELF:txt_absolut(0,_SELF:wYTemp,"Ort:")
_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
_SELF:txt_bereich(nTab0,_SELF:wYTemp,nTab1-5,_SELF:wYTemp+nZA,_self:_txt_links(),alltrim(_self:_dbfieldget("DBKdGespraech","GSPRORT")))

_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribNormal )
_SELF:txt_absolut(nTab1,_SELF:wYTemp,"Email:")
_SELF:txt_absolut(nTab1a,_SELF:wYTemp,_self:pdf_cUserEmailFromUserNr(nUserNr))
_SELF:wYTemp := _SELF:wYTemp + nZA

// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
// Beratung am, wo
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribNormal )
_SELF:txt_absolut(0,_SELF:wYTemp,"Teilnehmer:")
//_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
ExecuteScript(AusgabeMemo, _self, _self:_dbfieldget("DBKdGespraech","TLN"), nFondsize, nFonds, nFondsattribFett, nTab0, nZA)

_SELF:wYTemp := _SELF:wYTemp + (nZA *4)

// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
// Wünsche und Bedürfnisse
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
_SELF:txt_gerichtet(_SELF:wYTemp,_self:_txt_links(),"1. Wünsche und Bedürfnisse des Kunden")
_SELF:wYTemp := _SELF:wYTemp + (nZA * 2)

// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
// Kundenwunsch / Anlass der Beratung
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
IF _self:lKundenWunsch == .T.
 cTxt := _self:_dbfieldget("DBKdGespraech","KDWUNSCH")
	IF ! ((empty(cTxt) == .T.) .and. (_self:lNoEmptyShow == .T.))
	 nPos := nPos + 1
	 cBlock := "1."+alltrim(str(nPos))+". Kundenwunsch / Anlass der Beratung"
	 // Umbruch ?
	 ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
	 _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
	 _SELF:txt_absolut(nTab2,_SELF:wYTemp,cBlock)
	 _self:oDlg:TextUpDate(cBlock)
	 _SELF:wYTemp := _SELF:wYTemp + nZA
	 ExecuteScript(AusgabeMemo, _self, cTxt, nFondsize, nFonds, nFondsattribNormal, nTab2, nZA)
	 _SELF:wYTemp := _SELF:wYTemp + (nZA *2)
	 // Umbruch ?
	 ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
 ENDIF
ENDIF
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
// Beratungsumfang
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
IF _self:lBeratungsumfang == .T.
 cTxt := _self:pdf_GetMarketgnBezug(92, _self:_dbfieldget("DBKdGespraech","BERATUNG"))
	IF ! ((empty(cTxt) == .T.) .and. (_self:lNoEmptyShow == .T.))
	 nPos := nPos + 1
	 cBlock := "1."+alltrim(str(nPos))+". Beratungsumfang"
		_self:oDlg:TextUpDate(cBlock)
	 // Umbruch ?
	 ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
	 _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
	 _SELF:txt_absolut(nTab2,_SELF:wYTemp,cBlock)
	 _self:oDlg:TextUpDate("Erstelle: 1."+alltrim(str(nPos))+". Beratungsumfang")
	 _SELF:wYTemp := _SELF:wYTemp + nZA
	 _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribNormal )
	 _SELF:txt_absolut(nTab2,_SELF:wYTemp,cTxt)
	 _SELF:wYTemp := _SELF:wYTemp + (nZA *2)
	 // Umbruch ?
	 ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
 ENDIF
ENDIF
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
// Qualität der Absicherung
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
IF _self:lQualitaet == .T.
 cTxt := _self:_dbfieldget("DBKdGespraech","QUALITAET")
	IF ! ((empty(cTxt) == .T.) .and. (_self:lNoEmptyShow == .T.))
	 nPos := nPos + 1
		cBlock := "1."+alltrim(str(nPos))+". Qualität der Absicherung"
		_self:oDlg:TextUpDate(cBlock)
	 // Umbruch ?
	 ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
	 _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
	 _SELF:txt_absolut(nTab2,_SELF:wYTemp,cBlock)
	 _SELF:wYTemp := _SELF:wYTemp + nZA
	 ExecuteScript(AusgabeMemo, _self, cTxt, nFondsize, nFonds, nFondsattribNormal, nTab2, nZA)
	 _SELF:wYTemp := _SELF:wYTemp + (nZA *2)
	 // Umbruch ?
	 ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
	ENDIF
ENDIF
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
// Kundenbedarf
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
IF _self:lKundenbedarf == .T.
 cTxt := _self:_dbfieldget("DBKdGespraech","INFO")
	IF ! ((empty(cTxt) == .T.) .and. (_self:lNoEmptyShow == .T.))
	 nPos := nPos + 1
		cBlock := "1."+alltrim(str(nPos))+". Kundenbedarf"
		_self:oDlg:TextUpDate(cBlock)
	 // Umbruch ?
	 ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
	 _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
	 _SELF:txt_absolut(nTab2,_SELF:wYTemp,cBlock)
	 _SELF:wYTemp := _SELF:wYTemp + nZA
	 ExecuteScript(AusgabeMemo, _self, cTxt, nFondsize, nFonds, nFondsattribNormal, nTab2, nZA)
	 _SELF:wYTemp := _SELF:wYTemp + (nZA *2)
	 // Umbruch ?
	 ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
	ENDIF
ENDIF
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
// Regeln der Ausschreibung
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
IF _self:lRegelAusschr == .T.
 cTxt := _self:_dbfieldget("DBKdGespraech","REGEL")
	IF ! ((empty(cTxt) == .T.) .and. (_self:lNoEmptyShow == .T.))
	 nPos := nPos + 1
		cBlock := "1."+alltrim(str(nPos))+". Regeln der Ausschreibung"
		_self:oDlg:TextUpDate(cBlock)
	 // Umbruch ?
	 ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
	 _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
	 _SELF:txt_absolut(nTab2,_SELF:wYTemp,cBlock)
	 _SELF:wYTemp := _SELF:wYTemp + nZA
	 ExecuteScript(AusgabeMemo, _self, cTxt, nFondsizeMedium, nFonds, nFondsattribNormal, nTab2, nZAmedium)
	 _SELF:wYTemp := _SELF:wYTemp + (nZA *2)
	 // Umbruch ?
	 ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
	ENDIF
ENDIF
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
// allgemeine Basisinformation
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
IF _self:lBasisinfo == .T.
 cTxt := _self:pdf_cGetBeratProtBasisInfo(9999)
	IF ! ((empty(cTxt) == .T.) .and. (_self:lNoEmptyShow == .T.))
	 nPos := nPos + 1
		cBlock := "1."+alltrim(str(nPos))+". Basisinformation"
		_self:oDlg:TextUpDate(cBlock)
	 // Umbruch ?
	 ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
	 _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
	 _SELF:txt_absolut(nTab2,_SELF:wYTemp,cBlock)
	 _SELF:wYTemp := _SELF:wYTemp + nZA
	 ExecuteScript(AusgabeMemo, _self, cTxt, nFondsize, nFonds, nFondsattribNormal, nTab2, nZA)
	ENDIF
ENDIF
// ----------------------------------------------
// pro Angebot
// ----------------------------------------------
_self:_dbsetdeleted("DBAg", .T.)
_self:_dbsetorder("DBAg", 8)
_self:_dbsetdeleted("DBAgPos", .T.)
_self:_dbsetorder("DBAgPos", 1)
_self:_dbsetdeleted("DBPolicen", .T.)
_self:_dbsetorder("DBPolicen", 1)

IF (_self:__dbseek("DBAg", cID_KdGspr)) == .T.

 aAgRecno := {}

 DO WHILE _self:_dbfieldget("DBAg", "ID_KDGSPR") = cID_KdGspr
  nAgNummer := _self:_dbfieldget("DBAg", "AGNUMMER")
  nAgRecno := _self:_dbrecno("DBAg")
  
  // PolRecno ermitteln
  IF (_self:__dbseek("DBPolicen", padr("AG-"+ltrim(Str(nAgNummer)),30," "))) == .T.
   nPolRecno := _self:_dbrecno("DBPolicen")
  ELSE
   nPolRecno := 0
  ENDIF

  aadd(aAgRecno, {nAgRecno,nPolRecno})
  _self:_dbskip("DBAg")

 ENDDO
  
 nAgCount := 0

 FOR i := 1 TO len(aAgRecno)
  _self:_dbgoto("DBAg", aAgRecno[i][1])
 
  IF _self:_dbfieldget("DBAg", "LOE") == .F.

   nSpartenID := _self:_dbfieldget("DBAg", "SPARTENID")
   cArt := _self:_dbfieldget("DBAg", "ART")
   nAgNummer := _self:_dbfieldget("DBAg", "AGNUMMER")
   
   nPos := 0

  // Umbruch ?
   ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal, .T.,0)

   nAgCount := nAgCount + 1

   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   // Angebote
   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   IF nAgCount == 1
    _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
    _SELF:txt_gerichtet(_SELF:wYTemp,_self:_txt_links(),"2. Angebote")
    _SELF:wYTemp := _SELF:wYTemp + (nZA * 2)
    // -----------------------
    // Trennlinie
    // -----------------------
    _self:gdi_line(0, _SELF:wYTemp, _SELF:seite_x_ausdehnung(), _SELF:wYTemp)
    _SELF:wYTemp := _SELF:wYTemp + nZA
   ENDIF

   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   // Produkt
   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   IF _self:lProduktbez == .T.
			 cBlock := "2."+alltrim(Str(nAgCount))+" Produkt"
				_self:oDlg:TextUpdate(cBlock)
    // Umbruch ?
    ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
    _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
    _SELF:txt_absolut(nTab2,_SELF:wYTemp,"2."+Str(nAgCount)+" Produkt")
    _SELF:wYTemp := _SELF:wYTemp + nZA

    _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribNormal )
    _SELF:txt_absolut(nTab2,_SELF:wYTemp,_self:pdfArt2Text2(cArt))
    _SELF:wYTemp := _SELF:wYTemp + (nZA*2)
    // Umbruch ?
    ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
   ENDIF

   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   // Risiobeschreibung
   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   IF _self:lRisikobeschreib == .T.
			 cTxt := _self:pdfGetRisikobeschreibung(nAgNummer)
				IF ! ((empty(cTxt) == .T.) .and. (_self:lNoEmptyShow == .T.))
	    nPos := nPos + 1
					cBlock := "2."+alltrim(Str(nAgCount))+"."+alltrim(str(nPos))+". Risikobeschreibung"
					_self:oDlg:TextUpDate(cBlock)
	    // Umbruch ?
	    ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
	    _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
	    _SELF:txt_absolut(nTab2,_SELF:wYTemp,cBlock)
	    _SELF:wYTemp := _SELF:wYTemp + nZA

	    ExecuteScript(AusgabeMemo, _self, cTxt, nFondsize, nFonds, nFondsattribNormal, nTab2, nZA)
	    _SELF:wYTemp := _SELF:wYTemp + (nZA *2)
	    // Umbruch ?
	    ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
				ENDIF
   ENDIF
   
   // -----------------------
   // Produktinformation
   // -----------------------
   IF _self:lProduktinfo == .T.
			 cTxt := _self:pdfProduktInfoGet(cArt)
				IF ! ((empty(cTxt) == .T.) .and. (_self:lNoEmptyShow == .T.))
	    IF _self:_dbfieldget("DBAg", "NOPINFPROT") == .F.
	     nPos := nPos + 1
						cBlock := "2."+alltrim(Str(nAgCount))+"."+alltrim(Str(nPos))+". Produktionformation"
						_self:oDlg:TextUpDate(cBlock)
	     // Umbruch ?
	     ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
	     _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
	     _SELF:txt_absolut(nTab2,_SELF:wYTemp,cBlock)
	     _SELF:wYTemp := _SELF:wYTemp + nZA

	     ExecuteScript(AusgabeMemo, _self, cTxt, nFondsizeMedium, nFonds, nFondsattribNormal, nTab2, nZAmedium)
	     _SELF:wYTemp := _SELF:wYTemp + (nZA *2)
	     // Umbruch ?
	     ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
	    ENDIF
				ENDIF
   ENDIF

   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   // Ergebnis Ausschreibungen
   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   IF _self:lErgebnisAusschr == .T.
	   nPos := nPos + 1
				cBlock := "2."+alltrim(Str(nAgCount))+"."+alltrim(Str(nPos))+". Ergebnis der Ausschreibungen"
				_self:oDlg:TextUpDate(cBlock)
	   IF _self:_dbfieldget("DBAg", "NOTABPROT") == .T.
     // ****************************
 				// alternativen Text ausgeben
     // ****************************
	   	// Umbruch ?
	   	nDiff := (nZA*2)
	   	// Umbruch ?
	   	ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nDiff)
	   	_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
	   	_SELF:txt_absolut(nTab2,_SELF:wYTemp,cBlock)
	   	_SELF:wYTemp := _SELF:wYTemp + nZA
	   	_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribNormal )
	   	_SELF:txt_absolut(nTab2,_SELF:wYTemp,"Bitte beachten Sie die beiliegende Vergleichsberechnung.")

	   ELSE

     // ****************************
	    // Tabelle ausgeben
     // ****************************
     // Tabellenzeilen ermitteln
     aAusschreib := {}
	    IF (_self:__dbseek("DBAgPos", nAgNummer)) == .T.
	     // Tabellenzeilen in array schreiben
	     DO WHILE _self:_dbfieldget("DBAgPos", "AGNUMMER") = nAgNummer
	      cVersicherer := _self:pdf_VU2Text(_self:_dbfieldget("DBAgPos", "VU"))
	      cZahlweise := _self:pdf_GetMarketgnBeschrbg(27,_self:_dbfieldget("DBAgPos", "ZAHLW"))
	      nPraemie := _self:_dbfieldget("DBAgPos", "ZAHLBETRAG")
	      cPraemie := cZahlweise + " " +_self:pdf_SetDecPoint(Str(nPraemie))+" €"
	      cBesonderheit := alltrim(_self:_dbfieldget("DBAgPos", "BESONDERH"))

	       AAdd(aAusschreib,{nPraemie,cVersicherer,cPraemie,cBesonderheit})
	      _self:_dbskip("DBAgPos")
	     ENDDO
					ENDIF
					
	    // Umbruch ?
	    nDiff := nZA + 10 // Überschrift + Abstand zur Überschrift
	    nDiff := nDiff + nTabHeight // Titelzeile
	    nDiff := nDiff + ((nTabHeight*2) * len(aAusschreib)) // Tabellenzeilen
	    // Umbruch ?
	    ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nDiff)

     // Überschrift
     _SELF:wYTemp := _SELF:wYTemp
     _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
     _SELF:txt_absolut(nTab2,_SELF:wYTemp,cBlock)
     _SELF:wYTemp := _SELF:wYTemp + nZA + 10 // Abstand zur Überschrift

     // Tabelle
     // Tabellenkopf
     _SELF:waehle_schrift( "ARIAL", nFondsizeSmall, nFonds, nFondsattribFett )
     ExecuteScript(AusgabeTabZeile,_self,"Versicherer","Prämie","Besonderheit",nTab2,nTabWidth1,nTabWidth2,nTabWidth3,nTabHeight,.T.)

     IF len(aAusschreib) > 0
					 // aAusschreib nach Prämie sortieren
	     aAusschreib := ASort(aAusschreib,,, {|x, y| x[1] <= y[1]})

	     // Tabellenzeilen
	     FOR n := 1 TO (Len(aAusschreib))
	      ExecuteScript(AusgabeTabZeile,_self,aAusschreib[n][2],aAusschreib[n][3],aAusschreib[n][4],nTab2,nTabWidth1,nTabWidth2,nTabWidth3,nTabHeightRow,.F.)
	     NEXT n

	    ENDIF
	   ENDIF
	   _SELF:wYTemp := _SELF:wYTemp + (nZA * 2)
	   // Umbruch ?
	   ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
   ENDIF
			
   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   // Rat und Begründung
   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
			IF _self:lRatBegruendung == .T.
			 cTxt := _self:_dbfieldget("DBAg", "BEGRUEND")
				IF ! ((empty(cTxt) == .T.) .and. (_self:lNoEmptyShow == .T.))
		   nPos := nPos + 1
					cBlock := "2."+alltrim(Str(nAgCount))+"."+alltrim(Str(nPos))+". Rat und Begründung"
					_self:oDlg:TextUpDate(cBlock)
		   // Umbruch ?
		   ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)

		   _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
		   _SELF:txt_absolut(nTab2,_SELF:wYTemp,cBlock)
		   _SELF:wYTemp := _SELF:wYTemp + nZA

		   ExecuteScript(AusgabeMemo, _self, cTxt, nFondsize, nFonds, nFondsattribNormal, nTab2, nZA)
		   _SELF:wYTemp := _SELF:wYTemp + (nZA*2)
		   // Umbruch ?
		   ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
				ENDIF
   ENDIF
			
   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   // spartenbezogene Basisinformation
   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   IF _self:lHinweisSparte == .T.
			 cTxt := _self:pdf_cGetBeratProtBasisInfo(nSpartenID)
				IF ! ((empty(cTxt) == .T.) .and. (_self:lNoEmptyShow == .T.))
					nPos := nPos + 1
					cBlock := "2."+alltrim(Str(nAgCount))+"."+alltrim(Str(nPos))+". Allgemeine Hinweise zur " + _self:pdf_Art2Text(cArt)
					_self:oDlg:TextUpDate(cBlock)
					// Umbruch ?
					ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
					_SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )

					_SELF:txt_absolut(nTab2,_SELF:wYTemp,cBlock)
					_SELF:wYTemp := _SELF:wYTemp + nZA
					ExecuteScript(AusgabeMemo, _self, cTxt, nFondsizeMedium, nFonds, nFondsattribNormal, nTab2, nZAmedium)
					_SELF:wYTemp := _SELF:wYTemp + (nZA*2)

					// Umbruch ?
					ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nZA)
				ENDIF
			ENDIF
			
   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   // Kundenentscheidung
   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   IF _self:lKundenEntsch == .T.
    nPos := nPos + 1
    cBlock := "2."+alltrim(Str(nAgCount))+"."+alltrim(str(nPos))+". Kundenentscheidung"
				_self:oDlg:TextUpDate(cBlock)

	   // Umbruch gesamt 2.x.6
	   cKdEntsch := _self:_dbfieldget("DBAg", "KDENTSCH")
	   IF Empty(cKdEntsch)
	    nAdd := 650
	   ELSE    
	    nAdd := (_self:pdf_MemLines(cKdEntsch)*nZA) + 300
	   ENDIF

	   // Umbruch ?
	   ExecuteScript(Umbruch,_self, nFondsize, nFonds, nFondsattribNormal,.F.,nAdd)

	   _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
	   _SELF:txt_absolut(nTab2,_SELF:wYTemp,cBlock)
	   _SELF:wYTemp := _SELF:wYTemp + nZA
	   
	   IF Empty(cKdEntsch)
	    // - - - - - - - - - - - 
	    // Kundenentscheidung 1
	    // - - - - - - - - - - - 
	    _self:gdi_rect( nTab2, _SELF:wYTemp+10, nTab2+25, _SELF:wYTemp + 35 )
	    ExecuteScript(AusgabeMemo, _self, cKdEntscheid01, nFondsize, nFonds, nFondsattribNormal, nTab2a, nZA)
	    _SELF:wYTemp := _SELF:wYTemp + nZA

	    // - - - - - - - - - - - 
	    // Kundenentscheidung 2
	    // - - - - - - - - - - - 
	    _self:gdi_rect( nTab2, _SELF:wYTemp+10, nTab2+25, _SELF:wYTemp + 35 )
	    ExecuteScript(AusgabeMemo, _self, cKdEntscheid02, nFondsize, nFonds, nFondsattribNormal, nTab2a, nZA)
	    _SELF:wYTemp := _SELF:wYTemp + nZA

	    // - - - - - - - - - - - 
	    // Kundenentscheidung 3
	    // - - - - - - - - - - - 
	    _self:gdi_rect( nTab2, _SELF:wYTemp+10, nTab2+25, _SELF:wYTemp + 35 )
	    ExecuteScript(AusgabeMemo, _self, cKdEntscheid03, nFondsize, nFonds, nFondsattribNormal, nTab2a, nZA)
	    _SELF:wYTemp := _SELF:wYTemp + nZA
	    _self:gdi_line(nTab2a+_self:txt_breite(cKdEntscheid03), _SELF:wYTemp, _SELF:seite_x_ausdehnung(), _SELF:wYTemp)

	   ELSE
	    ExecuteScript(AusgabeMemo, _self, cKdEntsch, nFondsize, nFonds, nFondsattribNormal, nTab2, nZA)
	   ENDIF

	   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
	   // Unterschriften
	   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
	   _SELF:wYTemp := _SELF:wYTemp + (nZA * 4)

	   _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribNormal )

	   nY := _self:txt_breite(Replicate("_",20))
	   nX := nY * 3
	   nDiff := _SELF:seite_x_ausdehnung() - nX - nTab2
	   nPos1 := nTab2
	   nPos2 := nY + (nDiff/2)
	   nPos3 := (nY * 2) + nDiff

	   _SELF:txt_absolut(nPos1,_SELF:wYTemp,Replicate("_",20))
	   _SELF:txt_absolut(nPos2,_SELF:wYTemp,Replicate("_",20))
	   _SELF:txt_absolut(nPos3,_SELF:wYTemp,Replicate("_",20))

	   _SELF:wYTemp := _SELF:wYTemp + nZA 

	   _SELF:txt_absolut(nPos1,_SELF:wYTemp,"Ort, Datum")
	   _SELF:txt_absolut(nPos2,_SELF:wYTemp,"Kunde")
	   _SELF:txt_absolut(nPos3,_SELF:wYTemp,"Berater")
   ENDIF

   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   // Anlage zur Ausschreibung
   // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   IF _self:lGrundlageAusschr == .T.
	   nPolRecno := aAgRecno[i][2]
	   IF nPolRecno > 0
	    nPos := nPos + 1
					cBlock := "2."+alltrim(Str(nAgCount))+"."+alltrim(str(nPos))+". Grundlage der Ausschreibungen"
					_self:oDlg:TextUpDate(cBlock)

	    _SELF:seite_neue_seite()
	    _SELF:seite_waehle_papierformat( _self:_papier_A4(), _self:_format_querformat() )
	    _SELF:seite_setze_raender( 200, 200, 200, 100 )
	    _SELF:wYTemp := 0

	    _SELF:waehle_schrift( "ARIAL", nFondsize, nFonds, nFondsattribFett )
	    _SELF:txt_absolut(nTab2+50,_SELF:wYTemp,cBlock)

	    _SELF:wYTemp := _SELF:wYTemp + (nZA * 2)

	    _self:gdi_line(50, _SELF:wYTemp, _SELF:seite_x_ausdehnung(), _SELF:wYTemp)
	    _SELF:wYTemp := _SELF:wYTemp + (nZA *2)

	    _self:AusgabePolDat(nPolRecno)

	    _SELF:wYTemp := _SELF:wYTemp + nZA
	    _self:gdi_line(50, _SELF:wYTemp, _SELF:seite_x_ausdehnung(), _SELF:wYTemp)

		// Seitennummer für Anlage
	    _SELF:waehle_stift( _self:_stift_durchgezogen(), 1 )
	    _SELF:waehle_farbe( _self:_farbe_schwarz() )
	    _SELF:waehle_schrift( "ARIAL", 25, _self:_schrift_roman(), _self:_attr_normal() )
	    _SELF:txt_gerichtet(_SELF:seite_y_ausdehnung()+30,_self:_txt_zentriert(),"-"+trim(str(_self:doc_anzahl_seiten()))+" -")
		  ENDIF
   ENDIF
   
  ENDIF
 NEXT i
ENDIF

RETURN