Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Older Screen Code in VFP8
Message
From
14/07/2003 16:52:05
 
 
To
All
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Title:
Older Screen Code in VFP8
Miscellaneous
Thread ID:
00810005
Message ID:
00810005
Views:
78
Anyone see why when the below screen code is run in VFP (it doesn't happen in FPD26) and the user clicks on the Search button (m.action="Search"), sometimes when a match is found I receive the error "Record is out of range" at show gets. This makes no sense as I can verify that the current alias is addsrch and that there is more than at least one record. However, if I remove the show gets when it does a read level show it errors out too on the activate window currwind line... However, It always ONLY occurs the 2nd time a match is found...and it only happens when running in my app, not if I run the code as is below as an external program...

TIA!
*       ÖÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ·
*       º                                                         º
*       º 07/14/2003           ADDRSRCH.SPR              16:56:11 º
*       º                                                         º
*       ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
*       º                                                         º
*       º Description:                                            º
*       º This program was automatically generated by GENSCRN.    º
*       º                                                         º
*       ÓÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĽ



*       ÖÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ·
*       º                                                         º
*       º                MS-DOS Window definitions                º
*       º                                                         º
*       ÓÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĽ
*

	glrow=1
	glfontname="Foxfont"
	glfontsize=9
DEFINE WINDOW addsrch ;
	FROM INT((SROW()-28)/2),INT((SCOL()-81)/2) ;
	TO INT((SROW()-28)/2)+27+glRow,INT((SCOL()-81)/2)+80 ;
	TITLE "ENHANCED ADDRESS SEARCH" FONT (glFontName), (glFontSize) ;
	NOFLOAT ;
	NOCLOSE ;
	SHADOW ;
	NOMINIMIZE ;
	COLOR SCHEME 1


*       ÖÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ·
*       º                                                         º
*       º         ADDRSRCH/MS-DOS Setup Code - SECTION 2          º
*       º                                                         º
*       ÓÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĽ
*

#REGION 1
IF !USED("INSURED")
    CREATE TABLE INSURED (po_name c(15), po_sysnum c(10), po_addr1 c(15),;
         po_addr2 c(15))
    SELECT insured
    append blank
    replace insured.po_name with "JOHNSON, JOHNNY D"
    replace insured.po_sysnum WITH "000001"
    replace insured.po_addr1 WITH "300 Mill Street"
    replace insured.po_addr2 WITH "PO BOX 900"
    append blank
    replace insured.po_name with "SMITH, BEVERLY J"
    replace insured.po_sysnum WITH "000002"
    replace insured.po_addr1 WITH "9001 Cherry Point Road"
    replace insured.po_addr2 WITH "RR3"
ENDIF
SAVE SCREEN TO Xa
CLEAR
@1,0 CLEAR TO 22,78
crntalias = ALIAS()
m.action = ""
m.target_Add = ""
SELECT INSURED
*sys_id = 0
mpo_sysnum = 0
SET ORDER TO
GO TOP
DIMENSION keywords(1)
keywords = ""
PRIVATE addscount
maddscount=0

#REGION 1
DEFINE POPUP _10010attm ;
	PROMPT FIELD IIF(ALIAS()='ADDSRCH',PO_NAME+left(PO_ADDR1,20)+" ³ "+LEFT(po_addr2,20),"") ;
	SCROLL ;
	MARGIN ;
	MARK ""


*       ÖÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ·
*       º                                                         º
*       º              ADDRSRCH/MS-DOS Screen Layout              º
*       º                                                         º
*       ÓÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĽ
*

#REGION 1
IF WVISIBLE("addsrch")
	ACTIVATE WINDOW addsrch SAME
ELSE
	ACTIVATE WINDOW addsrch NOSHOW
ENDIF
@ 2,3 SAY "Target Address Information:" ;
	SIZE 1,27, 0
@ 2,32 GET m.target_Add ;
	SIZE 1,43 ;
	DEFAULT " " ;
	VALID _10010attn()
@ 4,32 GET m.action ;
	PICTURE "@*HN \!Search;\?Exit" ;
	SIZE 1.25,12,IIF(_DOS, 1, .75) ;
	DEFAULT 1 ;
	VALID VALID_MACTION_ADDRSRCH()
@ 7,1 GET m.selection ;
 	PICTURE "@&T" ;
	POPUP _10010attm ;
	SIZE 12,78 ;
	DEFAULT " " ;
	WHEN USED('ADDSRCH').and. RECCOUNT('ADDSRCH')>0 ;
	COLOR SCHEME 2
@ 6,3 SAY "Name" ;
	SIZE 1,4, 0
@ 6,33 SAY "Address 1" ;
	SIZE 1,9, 0
@ 6,56 SAY "Address 2" ;
	SIZE 1,9, 0
@ 3,3 SAY "Located:" ;
	SIZE 1,8, 0
@ 3,12 SAY maddscount ;
	SIZE 1,10 ;
	PICTURE "@B 99,999,999"
@ 20,20 SAY "Use  to select entry and press [ENTER]" ;
	SIZE 1,40, 0
@ 22,2 SAY "Hint: Enter just the street name and house number - this will locate any" ;
	SIZE 1,72, 0
@ 23,8 SAY "address regardless of being a ST, AVE, STREET, AVENUE or LANE." ;
	SIZE 1,62, 0

IF NOT WVISIBLE("addsrch")
	ACTIVATE WINDOW addsrch
ENDIF

READ CYCLE ;
	SHOW _10010attw()

RELEASE WINDOW addsrch
RELEASE POPUPS _10010attm

#REGION 0


*       ÖÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ·
*       º                                                         º
*       º              ADDRSRCH/MS-DOS Cleanup Code               º
*       º                                                         º
*       ÓÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĽ
*

#REGION 1
IF LASTKEY() != 27
	IF USED('ADDSRCH')
		mpo_sysnum = addsrch.po_sysnum
	ELSE
		mpo_sysnum = 0
	ENDIF
ENDIF

IF USED('addsrch')
	USE IN addsrch
ENDIF
SELECT INSURED
IF TYPE('xa')="S"
	RESTORE SCREEN FROM xa
ENDIF
****************************


*       ÖÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ·
*       º                                                         º
*       º  ADDRSRCH/MS-DOS Supporting Procedures and Functions    º
*       º                                                         º
*       ÓÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĽ
*

#REGION 1
FUNCTION haskeys
****************************

PARAMETER addr1,addr2

PRIVATE i,hits

isvalid = .T.
hits=0
FOR i = 1 TO ALEN(keywords)
	IF keywords(i) $ UPPER(addr1)
		hits = hits + 1
	ENDIF
ENDFOR

IF hits != ALEN(keywords) AND !EMPTY(addr2)
	hits = 0
	FOR i = 1 TO ALEN(keywords)
		IF keywords(i) $ UPPER(addr2)
			hits = hits + 1
		ENDIF
	ENDFOR
ENDIF

RETURN hits = ALEN(keywords)


*       ÖÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ·
*       º                                                         º
*       º _10010ATTN           m.target_Add VALID                 º
*       º                                                         º
*       º Function Origin:                                        º
*       º                                                         º
*       º From Platform:       MS-DOS                             º
*       º From Screen:         ADDRSRCH,     Record Number:    3  º
*       º Variable:            m.target_Add                       º
*       º Called By:           VALID Clause                       º
*       º Object Type:         Field                              º
*       º Snippet Number:      1                                  º
*       º                                                         º
*       ÓÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĽ
*
FUNCTION _10010attn     &&  m.target_Add VALID
#REGION 1
i = 0
DIMENSION keywords(1)
keywords(1) = ''
w_temp = ALLTRIM(m.target_Add)
DO WHILE .T.
	j = AT(" ",w_temp)
	IF j > 0
		i = i + 1
		DIMENSION keywords(i)
		keywords(i) = UPPER(LEFT(w_temp,j-1))
		w_temp = SUBSTR(w_temp,j+1)
	ELSE
		EXIT
	ENDIF
ENDDO
IF !empty(w_temp)
	i = i + 1
	DIMENSION keywords(i)
	keywords(i) = UPPER(w_temp)
ENDIF


*       ÖÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ·
*       º                                                         º
*       º VALID_MACTION_ADDRSRCH           m.action VALID         º
*       º                                                         º
*       º Function Origin:                                        º
*       º                                                         º
*       º From Platform:       MS-DOS                             º
*       º From Screen:         ADDRSRCH,     Record Number:    4  º
*       º Variable:            m.action                           º
*       º Called By:           VALID Clause                       º
*       º Object Type:         Push Button                        º
*       º Snippet Number:      2                                  º
*       º                                                         º
*       ÓÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĽ
*
FUNCTION VALID_MACTION_ADDRSRCH     &&  m.action VALID
#REGION 1

IF UPPER(ALLTRIM(m.action)) = 'SEARCH'
	SELECT INSURED
	IF USED('addsrch')
		USE IN addsrch
	ENDIF
	WAIT WINDOW NOWAIT 'Scanning Records....'
	SET SAFETY OFF
	SELECT INSURED.PO_SYSNUM, INSURED.PO_NAME, INSURED.PO_ADDR1,;
	  INSURED.PO_ADDR2;
	 FROM INSURED;
	 HAVING haskeys(insured.po_addr1,insured.po_addr2);
	 INTO CURSOR ADDSRCH
	*--TCH 07/14/2003
	IF USED('ADDSRCH')
		IF RECCOUNT('ADDSRCH')=0
			maddscount=0
			m.action = ""
			SELECT INSURED
			IF USED('addsrch')
				USE IN addsrch
			ENDIF
			SET ORDER TO
			GO TOP
			mpo_sysnum = 0
			WAIT CLEAR
		 	_CUROBJ = OBJNUM(target_add)
			SHOW GETS
			DO OKAY WITH 'No Records found matching criteria!'
		 	_CUROBJ = OBJNUM(m.target_add)
		ELSE
			SELECT addsrch
			maddscount=reccount('addsrch')
			GO TOP
			m.selection = ""
			SHOW GETS
			SHOW GET maddscount
			SHOW GET m.selection
			WAIT CLEAR
			m.selection = IIF(UPPER(ALLTRIM(ALIAS()))="ADDSRCH",PO_NAME+left(PO_ADDR1,20)+" ³ "+LEFT(po_addr2,20),"")
			_CUROBJ = OBJNUM(m.selection)
			KEYBOARD '{HOME}'
		ENDIF
	ELSE
		maddscount=0
		m.action = ""
		SELECT INSURED
		SET ORDER TO
		GO TOP
		mpo_sysnum = 0
		WAIT CLEAR
	 	_CUROBJ = OBJNUM(target_add)
		SHOW GETS
		DO OKAY WITH 'No Records found matching criteria!'
	 	_CUROBJ = OBJNUM(m.target_add)
	ENDIF
ELSE
	CLEAR READ
ENDIF




*       ÖÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ·
*       º                                                         º
*       º _10010ATTW           Read Level Show                    º
*       º                                                         º
*       º Function Origin:                                        º
*       º                                                         º
*       º                                                         º
*       º From Platform:       MS-DOS                             º
*       º From Screen:         ADDRSRCH                           º
*       º Called By:           READ Statement                     º
*       º Snippet Number:      3                                  º
*       º                                                         º
*       ÓÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĽ
*
FUNCTION _10010attw     && Read Level Show
PRIVATE currwind
STORE WOUTPUT() TO currwind
*
* Show Code from screen: ADDRSRCH
*
#REGION 1
IF SYS(2016) = "ADDSRCH" OR SYS(2016) = "*"
	ACTIVATE WINDOW addsrch SAME
	@ 3,12 SAY maddscount ;
		SIZE 1,10, 0 ;
		PICTURE "@B 99,999,999"
ENDIF
IF NOT EMPTY(currwind)
	ACTIVATE WINDOW (currwind) SAME
ENDIF

PROCEDURE OKAY
PARAMETER mmessage, mscheme, mtimeout, mtitle

IF EMPTY(mmessage)
	mmessage = "Unknown Message."
ENDIF

IF EMPTY(mscheme)
	mscheme = 7
ENDIF

IF EMPTY(mtimeout)
	mtimeout = 0
ENDIF

IF EMPTY(mtitle)
	#IF 'VISUAL' $ UPPER(VERSION())
		mtitle = _SCREEN.Caption
	#ELSE
		mtitle = ""
	#ENDIF
ENDIF

#IF 'VISUAL' $ UPPER(VERSION())

	IF ";" $ mmessage
		mmessage = STRTRAN(mmessage, ';', ' ')
	ENDIF

	IF mtimeout > 0
		lnResult = MessageBox(mmessage, 64+4096, mtitle, mtimeout * 1000)
	ELSE
		lnResult = MessageBox(mmessage, 64+4096, mtitle)
	ENDIF

	DO CASE
	CASE lnresult = -1        && TimeOut
		lcChoice = "OK"
	CASE lnresult = 1         && Ok
		lcChoice = "OK"
	CASE lnResult = 2         && Cancel
		lcChoice = "CANCEL"
	CASE lnResult = 3         && Abort
		lcChoice = "ABORT"
	CASE lnResult = 4         && Retry
		lcChoice = "RETRY"
	CASE lnResult = 5         && Ignore
		lcChoice = "IGNORE"
	CASE lnResult = 6         && Yes
		lcChoice = "YES"
	CASE lnResult = 7         && No
		lcChoice = "NO"
	OTHERWISE
		lcChoice = "ESCAPE"
	ENDCASE

	RETURN lcChoice = 'OK'
	
#ELSE

	PRIVATE curntwin,mssglen,messgline2,messgline3,messgline4,mpos,mssgbot,m.choice
	curntwin = WOUTPUT()
	messgline2 = ""
	messgline3 = ""
	messgline4 = ""
	mpos = 60
	mssgbott = 14
	m.printerstat = SET("PRINTER")
	m.consolestat = SET("CONSOLE")
	m.curntdevice = SET("DEVICE")
	SET PRINTER OFF
	SET CONSOLE ON
	SET DEVICE TO SCREEN

	CLEAR TYPEAHEAD

	* If message is longer than 60 characters, chop it in half.
	* If message is longer than 120 characters, split it three ways.
	* If message is longer than 180 characters, split it four ways.

	IF ";" $ mmessage
		mpos = AT(";", mmessage)
		messgline2 = SUBSTR(mmessage,mpos+1)
		mmessage = LEFT(mmessage,mpos - 1)
		IF ";" $ messgline2
			mpos = AT(";", messgline2)
			messgline3 = SUBSTR(messgline2,mpos+1)
			messgline2 = LEFT(messgline2,mpos - 1)
			IF ";" $ messgline3
				mpos = AT(";", messgline3)
				messgline4 = SUBSTR(messgline3,mpos+1)
				messgline3 = LEFT(messgline3,mpos - 1)
			ENDIF
		ENDIF
	ELSE
		DO CASE
		CASE LEN(mmessage) > 180
			mpos = INT(LEN(mmessage)/4)
			DO WHILE mpos < LEN(mmessage) AND SUBSTR(mmessage,mpos,1) <> " "
				mpos = mpos + 1
			ENDDO
			messgline2 = SUBSTR(mmessage,mpos+1)
			mmessage = LEFT(mmessage,mpos - 1)

			mpos = INT(LEN(messgline2)/3)
			DO WHILE mpos < LEN(messgline2) AND SUBSTR(messgline2,mpos,1) <> " "
				mpos = mpos + 1
			ENDDO
			messgline3 = SUBSTR(messgline2,mpos+1)
			messgline2 = LEFT(messgline2,mpos - 1)

			mpos = INT(LEN(messgline3)/2)
			DO WHILE mpos < LEN(messgline3) AND SUBSTR(messgline3,mpos,1) <> " "
				mpos = mpos + 1
			ENDDO
			messgline4 = SUBSTR(messgline3,mpos+1)
			messgline3 = LEFT(messgline3,mpos - 1)
		CASE LEN(mmessage) > 120
			mpos = INT(LEN(mmessage)/3)
			DO WHILE mpos < LEN(mmessage) AND SUBSTR(mmessage,mpos,1) <> " "
				mpos = mpos + 1
			ENDDO
			messgline2 = SUBSTR(mmessage,mpos+1)
			mmessage = LEFT(mmessage,mpos - 1)

			mpos = INT(LEN(messgline2)/2)
			DO WHILE mpos < LEN(messgline2) AND SUBSTR(messgline2,mpos,1) <> " "
				mpos = mpos + 1
			ENDDO
			messgline3 = SUBSTR(messgline2,mpos+1)
			messgline2 = LEFT(messgline2,mpos - 1)
		CASE LEN(mmessage) > 60
			mpos = INT(LEN(mmessage)/2)
			DO WHILE mpos > 0 AND SUBSTR(mmessage,mpos,1) <> " "
				mpos = mpos - 1
			ENDDO
			messgline2 = SUBSTR(mmessage,mpos+1)
			mmessage = LEFT(mmessage,mpos - 1)
		ENDCASE
	ENDIF

	* Get the longest of the two message lines, if there's a second one.

	mssglen = MAX(LEN(mmessage),LEN(messgline2),LEN(messgline3),LEN(messgline4))

	* Make window 1 row taller to allow for second message line.

	IF !EMPTY(messgline2)
		mssgbott = mssgbott+1
	ENDIF
	IF !EMPTY(messgline3)
		mssgbott = mssgbott+1
	ENDIF
	IF !EMPTY(messgline4)
		mssgbott = mssgbott+1
	ENDIF

	* Window can't be less less than 30 chrs - got to allow for buttons.

	IF mssglen < 30
		mssglen = 30
	ENDIF

	DEFINE WINDOW okay FROM 8,37-INT(mssglen/2) TO mssgbott,41+INT(mssglen/2) ;
		TITLE mtitle ;
		SHADOW ;
		DOUBLE ;
		FLOAT ;
		COLOR SCHEME mscheme FONT (glFontName), (glFontSize)

	ACTIVATE WINDOW okay

	@ 1,1 SAY mmessage PICTURE "@I "+REPLI("X",WCOLS()-2)
	IF !EMPTY(messgline2)
		@ 2,1 SAY messgline2 PICTURE "@I "+REPLI("X",WCOLS()-2)
	ENDIF
	IF !EMPTY(messgline3)
		@ 3,1 SAY messgline3 PICTURE "@I "+REPLI("X",WCOLS()-2)
	ENDIF
	IF !EMPTY(messgline4)
		@ 4,1 SAY messgline4 PICTURE "@I "+REPLI("X",WCOLS()-2)
	ENDIF

	m.choice = 1
	@ WROWS()-2,INT(WCOLS()/2)-14 GET m.choice ;
		PICTURE "@*HT Press any key to continue" ;
		SIZE 1.25,10,WCOLS()-22 ;
		DEFAULT 0
		
	READ TIMEOUT (mtimeout)

	RELEASE WINDOW okay

	IF !EMPTY(curntwin)
		ACTIVATE WINDOW &curntwin
	ELSE
		ACTIVATE SCREEN
	ENDIF
	IF m.printerstat = "ON"
		SET PRINTER ON
	ELSE
		SET PRINTER OFF
	ENDIF
	IF m.consolestat = "ON"
		SET CONSOLE ON
	ELSE
		SET CONSOLE OFF
	ENDIF
	SET DEVICE TO &curntdevice

	RETURN m.choice = 1

#ENDIF
.·*´¨)
.·`TCH
(..·*

010000110101001101101000011000010111001001110000010011110111001001000010011101010111001101110100
"When the debate is lost, slander becomes the tool of the loser." - Socrates
Vita contingit, Vive cum eo. (Life Happens, Live With it.)
"Life is not measured by the number of breaths we take, but by the moments that take our breath away." -- author unknown
"De omnibus dubitandum"
Next
Reply
Map
View

Click here to load this message in the networking platform