Index: GuiMail/trunk/KIDS/CWMAIL2_3.KID
===================================================================
--- GuiMail/trunk/KIDS/CWMAIL2_3.KID	(revision 1139)
+++ GuiMail/trunk/KIDS/CWMAIL2_3.KID	(revision 1139)
@@ -0,0 +1,3742 @@
+KIDS Distribution saved on Jul 22, 2005@07:26:11
+VERSION 2.3
+**KIDS**:CWMAIL*2.3*0^
+
+**INSTALL NAME**
+CWMAIL*2.3*0
+"BLD",6280,0)
+CWMAIL*2.3*0^CW GUIMail^0^3050722^n
+"BLD",6280,4,0)
+^9.64PA^^0
+"BLD",6280,"ABPKG")
+n
+"BLD",6280,"INIT")
+EN^CWMAINI
+"BLD",6280,"KRN",0)
+^9.67PA^8989.52^19
+"BLD",6280,"KRN",.4,0)
+.4
+"BLD",6280,"KRN",.401,0)
+.401
+"BLD",6280,"KRN",.402,0)
+.402
+"BLD",6280,"KRN",.403,0)
+.403
+"BLD",6280,"KRN",.5,0)
+.5
+"BLD",6280,"KRN",.84,0)
+.84
+"BLD",6280,"KRN",3.6,0)
+3.6
+"BLD",6280,"KRN",3.8,0)
+3.8
+"BLD",6280,"KRN",9.2,0)
+9.2
+"BLD",6280,"KRN",9.8,0)
+9.8
+"BLD",6280,"KRN",9.8,"NM",0)
+^9.68A^16^16
+"BLD",6280,"KRN",9.8,"NM",1,0)
+CWMACPPI^^0^B4934611
+"BLD",6280,"KRN",9.8,"NM",2,0)
+CWMAIL^^0^B19315599
+"BLD",6280,"KRN",9.8,"NM",3,0)
+CWMAIL0^^0^B20950040
+"BLD",6280,"KRN",9.8,"NM",4,0)
+CWMAIL1^^0^B14471507
+"BLD",6280,"KRN",9.8,"NM",5,0)
+CWMAIL2^^0^B22772090
+"BLD",6280,"KRN",9.8,"NM",6,0)
+CWMAIL3^^0^B5057438
+"BLD",6280,"KRN",9.8,"NM",7,0)
+CWMAIL4^^0^B1346202
+"BLD",6280,"KRN",9.8,"NM",8,0)
+CWMAILA^^0^B23710063
+"BLD",6280,"KRN",9.8,"NM",9,0)
+CWMAILB^^0^B22359091
+"BLD",6280,"KRN",9.8,"NM",10,0)
+CWMAILC^^0^B12646738
+"BLD",6280,"KRN",9.8,"NM",11,0)
+CWMAILD^^0^B22909291
+"BLD",6280,"KRN",9.8,"NM",12,0)
+CWMAILE^^0^B13183521
+"BLD",6280,"KRN",9.8,"NM",13,0)
+CWMAILF^^0^B6688838
+"BLD",6280,"KRN",9.8,"NM",14,0)
+CWMAINI^^0^B9313045
+"BLD",6280,"KRN",9.8,"NM",15,0)
+CWMAPP^^0^B806108
+"BLD",6280,"KRN",9.8,"NM",16,0)
+CWMAPP01^^0^B2776736
+"BLD",6280,"KRN",9.8,"NM","B","CWMACPPI",1)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAIL",2)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAIL0",3)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAIL1",4)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAIL2",5)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAIL3",6)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAIL4",7)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAILA",8)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAILB",9)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAILC",10)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAILD",11)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAILE",12)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAILF",13)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAINI",14)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAPP",15)
+
+"BLD",6280,"KRN",9.8,"NM","B","CWMAPP01",16)
+
+"BLD",6280,"KRN",19,0)
+19
+"BLD",6280,"KRN",19,"NM",0)
+^9.68A^1^1
+"BLD",6280,"KRN",19,"NM",1,0)
+CW MAIL^^0
+"BLD",6280,"KRN",19,"NM","B","CW MAIL",1)
+
+"BLD",6280,"KRN",19.1,0)
+19.1
+"BLD",6280,"KRN",101,0)
+101
+"BLD",6280,"KRN",409.61,0)
+409.61
+"BLD",6280,"KRN",771,0)
+771
+"BLD",6280,"KRN",870,0)
+870
+"BLD",6280,"KRN",8989.51,0)
+8989.51
+"BLD",6280,"KRN",8989.51,"NM",0)
+^9.68A^19^19
+"BLD",6280,"KRN",8989.51,"NM",1,0)
+CWMA ALLOW ATTACHMENTS^^0
+"BLD",6280,"KRN",8989.51,"NM",2,0)
+CWMA GENERAL CMA STYLE^^0
+"BLD",6280,"KRN",8989.51,"NM",3,0)
+CWMA GENERAL MD COL^^0
+"BLD",6280,"KRN",8989.51,"NM",4,0)
+CWMA GENERAL MD COUNT^^0
+"BLD",6280,"KRN",8989.51,"NM",5,0)
+CWMA GENERAL MPD TAB^^0
+"BLD",6280,"KRN",8989.51,"NM",6,0)
+CWMA GENERAL NMP FREQ^^0
+"BLD",6280,"KRN",8989.51,"NM",7,0)
+CWMA GENERAL PRINTMODE^^0
+"BLD",6280,"KRN",8989.51,"NM",8,0)
+CWMA GENERAL VISTA PRT^^0
+"BLD",6280,"KRN",8989.51,"NM",9,0)
+CWMA SOUND ENABLED^^0
+"BLD",6280,"KRN",8989.51,"NM",10,0)
+CWMA SOUND MESSAGE CLOSE^^0
+"BLD",6280,"KRN",8989.51,"NM",11,0)
+CWMA SOUND MESSAGE OPEN^^0
+"BLD",6280,"KRN",8989.51,"NM",12,0)
+CWMA SOUND NEW MAIL^^0
+"BLD",6280,"KRN",8989.51,"NM",13,0)
+CWMA SOUND PRIORITY MAIL^^0
+"BLD",6280,"KRN",8989.51,"NM",14,0)
+CWMA STARTUP MAIL BOX NAME^^0
+"BLD",6280,"KRN",8989.51,"NM",15,0)
+CWMA STARTUP NEW MAIL^^0
+"BLD",6280,"KRN",8989.51,"NM",16,0)
+CWMA STARTUP OPEN MAIL BOX^^0
+"BLD",6280,"KRN",8989.51,"NM",17,0)
+CWMA GUIMAIL TIMEOUT VALUE^^0
+"BLD",6280,"KRN",8989.51,"NM",18,0)
+CWMA DISABLE GUIMAIL TIMEOUT^^0
+"BLD",6280,"KRN",8989.51,"NM",19,0)
+CWMA ALLOW ATTACHMENTS OPEN^^0
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA ALLOW ATTACHMENTS",1)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA ALLOW ATTACHMENTS OPEN",19)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA DISABLE GUIMAIL TIMEOUT",18)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA GENERAL CMA STYLE",2)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA GENERAL MD COL",3)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA GENERAL MD COUNT",4)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA GENERAL MPD TAB",5)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA GENERAL NMP FREQ",6)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA GENERAL PRINTMODE",7)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA GENERAL VISTA PRT",8)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA GUIMAIL TIMEOUT VALUE",17)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA SOUND ENABLED",9)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA SOUND MESSAGE CLOSE",10)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA SOUND MESSAGE OPEN",11)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA SOUND NEW MAIL",12)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA SOUND PRIORITY MAIL",13)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA STARTUP MAIL BOX NAME",14)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA STARTUP NEW MAIL",15)
+
+"BLD",6280,"KRN",8989.51,"NM","B","CWMA STARTUP OPEN MAIL BOX",16)
+
+"BLD",6280,"KRN",8989.52,0)
+8989.52
+"BLD",6280,"KRN",8989.52,"NM",0)
+^9.68A^2^2
+"BLD",6280,"KRN",8989.52,"NM",1,0)
+CWMA PACKAGE PARAMETERS^^0
+"BLD",6280,"KRN",8989.52,"NM",2,0)
+CWMA USER PARAMETERS^^0
+"BLD",6280,"KRN",8989.52,"NM","B","CWMA PACKAGE PARAMETERS",1)
+
+"BLD",6280,"KRN",8989.52,"NM","B","CWMA USER PARAMETERS",2)
+
+"BLD",6280,"KRN",8994,0)
+8994
+"BLD",6280,"KRN",8994,"NM",0)
+^9.68A^1^1
+"BLD",6280,"KRN",8994,"NM",1,0)
+CW MAIL API^^0
+"BLD",6280,"KRN",8994,"NM","B","CW MAIL API",1)
+
+"BLD",6280,"KRN","B",.4,.4)
+
+"BLD",6280,"KRN","B",.401,.401)
+
+"BLD",6280,"KRN","B",.402,.402)
+
+"BLD",6280,"KRN","B",.403,.403)
+
+"BLD",6280,"KRN","B",.5,.5)
+
+"BLD",6280,"KRN","B",.84,.84)
+
+"BLD",6280,"KRN","B",3.6,3.6)
+
+"BLD",6280,"KRN","B",3.8,3.8)
+
+"BLD",6280,"KRN","B",9.2,9.2)
+
+"BLD",6280,"KRN","B",9.8,9.8)
+
+"BLD",6280,"KRN","B",19,19)
+
+"BLD",6280,"KRN","B",19.1,19.1)
+
+"BLD",6280,"KRN","B",101,101)
+
+"BLD",6280,"KRN","B",409.61,409.61)
+
+"BLD",6280,"KRN","B",771,771)
+
+"BLD",6280,"KRN","B",870,870)
+
+"BLD",6280,"KRN","B",8989.51,8989.51)
+
+"BLD",6280,"KRN","B",8989.52,8989.52)
+
+"BLD",6280,"KRN","B",8994,8994)
+
+"BLD",6280,"PRE")
+CWMAINI
+"BLD",6280,"QUES",0)
+^9.62^^
+"BLD",6280,"REQB",0)
+^9.611^^
+"INIT")
+EN^CWMAINI
+"KRN",19,13463,-1)
+0^1
+"KRN",19,13463,0)
+CW MAIL^CW MAIL^^B^^^^^^^^
+"KRN",19,13463,1,0)
+^19.06^1^1^3020820^^
+"KRN",19,13463,1,1,0)
+This menu option is used to validate the Broker Context of a user.
+"KRN",19,13463,99)
+57216,70477
+"KRN",19,13463,99.1)
+59038,29134
+"KRN",19,13463,"RPC",0)
+^19.05P^103^103
+"KRN",19,13463,"RPC",11,0)
+DDR LISTER
+"KRN",19,13463,"RPC",12,0)
+DDR FILER
+"KRN",19,13463,"RPC",13,0)
+DDR GETS ENTRY DATA
+"KRN",19,13463,"RPC",14,0)
+DDR VALIDATOR
+"KRN",19,13463,"RPC",15,0)
+XWB GET VARIABLE VALUE
+"KRN",19,13463,"RPC",52,0)
+CW MAIL API
+"KRN",19,13463,"RPC",92,0)
+DDR FINDER
+"KRN",19,13463,"RPC",100,0)
+DDR DELETE ENTRY
+"KRN",19,13463,"RPC",101,0)
+DDR FIND1
+"KRN",19,13463,"RPC",102,0)
+DDR GET DD HELP
+"KRN",19,13463,"RPC",103,0)
+DDR LOCK/UNLOCK NODE
+"KRN",19,13463,"U")
+CW MAIL
+"KRN",8989.5,21924,0)
+515;DIC(9.4,^CWMA STARTUP NEW MAIL^1
+"KRN",8989.5,21924,1)
+1
+"KRN",8989.5,21925,0)
+515;DIC(9.4,^CWMA GENERAL MD COL^1
+"KRN",8989.5,21925,1)
+0,5
+"KRN",8989.5,21926,0)
+515;DIC(9.4,^CWMA GENERAL MD COL^2
+"KRN",8989.5,21926,1)
+1,25
+"KRN",8989.5,21927,0)
+515;DIC(9.4,^CWMA GENERAL MD COL^3
+"KRN",8989.5,21927,1)
+2,60
+"KRN",8989.5,21928,0)
+515;DIC(9.4,^CWMA GENERAL MD COL^4
+"KRN",8989.5,21928,1)
+3,250
+"KRN",8989.5,21929,0)
+515;DIC(9.4,^CWMA GENERAL MD COL^5
+"KRN",8989.5,21929,1)
+4,200
+"KRN",8989.5,21930,0)
+515;DIC(9.4,^CWMA GENERAL MD COL^6
+"KRN",8989.5,21930,1)
+5,47
+"KRN",8989.5,21931,0)
+515;DIC(9.4,^CWMA SOUND ENABLED^1
+"KRN",8989.5,21931,1)
+0
+"KRN",8989.5,21932,0)
+515;DIC(9.4,^CWMA GENERAL MD COL^7
+"KRN",8989.5,21932,1)
+6,38
+"KRN",8989.5,21933,0)
+515;DIC(9.4,^CWMA GENERAL CMA STYLE^1
+"KRN",8989.5,21933,1)
+0
+"KRN",8989.5,21934,0)
+515;DIC(9.4,^CWMA GENERAL MPD TAB^1
+"KRN",8989.5,21934,1)
+0
+"KRN",8989.5,21935,0)
+515;DIC(9.4,^CWMA GENERAL NMP FREQ^1
+"KRN",8989.5,21935,1)
+5
+"KRN",8989.5,21936,0)
+515;DIC(9.4,^CWMA GENERAL MD COUNT^1
+"KRN",8989.5,21936,1)
+8
+"KRN",8989.5,21937,0)
+515;DIC(9.4,^CWMA GENERAL PRINTMODE^1
+"KRN",8989.5,21937,1)
+0
+"KRN",8989.5,27914,0)
+515;DIC(9.4,^CWMA ALLOW ATTACHMENTS^1
+"KRN",8989.5,27914,1)
+1
+"KRN",8989.5,269310,0)
+515;DIC(9.4,^CWMA DISABLE GUIMAIL TIMEOUT^1
+"KRN",8989.5,269310,1)
+1
+"KRN",8989.51,34,-1)
+0^11
+"KRN",8989.51,34,0)
+CWMA SOUND MESSAGE OPEN^GUIMAIL MESSAGE OPEN SOUND^0^^Open Message Sound File Location
+"KRN",8989.51,34,1)
+F^^Enter the full path to the wav sound file
+"KRN",8989.51,34,20,0)
+^^4^4^2990423.100233
+"KRN",8989.51,34,20,1,0)
+This parameter holds the full resolved path to the wav file that will be
+"KRN",8989.51,34,20,2,0)
+played on the client system when a message is opened.
+"KRN",8989.51,34,20,3,0)
+
+"KRN",8989.51,34,20,4,0)
+Client attribute: [Sound]Message Open
+"KRN",8989.51,34,30,0)
+^8989.513I^2^2
+"KRN",8989.51,34,30,1,0)
+1^200
+"KRN",8989.51,34,30,2,0)
+9^9.4
+"KRN",8989.51,35,-1)
+0^10
+"KRN",8989.51,35,0)
+CWMA SOUND MESSAGE CLOSE^GUIMAIL MESSAGE CLOSE SOUND^0^^Close Message Sound File Location
+"KRN",8989.51,35,1)
+F^^Enter the full path to the wav sound file
+"KRN",8989.51,35,20,0)
+^^4^4^2990423.100321
+"KRN",8989.51,35,20,1,0)
+This parameter holds the full resolved path to the wav file that will be
+"KRN",8989.51,35,20,2,0)
+played on the client system when a message is closed.
+"KRN",8989.51,35,20,3,0)
+
+"KRN",8989.51,35,20,4,0)
+Client attribute: [Sound]Message Close
+"KRN",8989.51,35,30,0)
+^8989.513I^2^2
+"KRN",8989.51,35,30,1,0)
+1^200
+"KRN",8989.51,35,30,2,0)
+9^9.4
+"KRN",8989.51,36,-1)
+0^12
+"KRN",8989.51,36,0)
+CWMA SOUND NEW MAIL^GUIMAIL NEW MAIL SOUND^0^^New Mail Sound File Location
+"KRN",8989.51,36,1)
+F^^Enter the full path to the wav sound file
+"KRN",8989.51,36,20,0)
+^^4^4^2990423^
+"KRN",8989.51,36,20,1,0)
+This parameter holds the full resolved path to the wav file that will be
+"KRN",8989.51,36,20,2,0)
+played on the client system when new mail is received.
+"KRN",8989.51,36,20,3,0)
+
+"KRN",8989.51,36,20,4,0)
+Client attribute: [Sound]New Mail
+"KRN",8989.51,36,30,0)
+^8989.513I^2^2
+"KRN",8989.51,36,30,1,0)
+1^200
+"KRN",8989.51,36,30,2,0)
+9^9.4
+"KRN",8989.51,37,-1)
+0^15
+"KRN",8989.51,37,0)
+CWMA STARTUP NEW MAIL^GUIMAIL STARTUP RETRIEVE NEW MAIL^0^^Retrieve New Mail at Startup
+"KRN",8989.51,37,1)
+S^0:False;1:True^Enter 'True' or 'False'
+"KRN",8989.51,37,20,0)
+^^4^4^2981228^
+"KRN",8989.51,37,20,1,0)
+This parameter holds a boolean value of 'True' or 'False' and is used by
+"KRN",8989.51,37,20,2,0)
+the client system to determine if New Mail will be displayed on Startup.
+"KRN",8989.51,37,20,3,0)
+
+"KRN",8989.51,37,20,4,0)
+Client attribute: [StartUp]StartUpNewMail=
+"KRN",8989.51,37,30,0)
+^8989.513I^2^2
+"KRN",8989.51,37,30,1,0)
+1^200
+"KRN",8989.51,37,30,2,0)
+9^9.4
+"KRN",8989.51,38,-1)
+0^16
+"KRN",8989.51,38,0)
+CWMA STARTUP OPEN MAIL BOX^GUIMAIL OPEN MAIL BOX^0^^Open a Mail Box at Startup
+"KRN",8989.51,38,1)
+S^0:False;1:True^Enter 'True' or 'False'
+"KRN",8989.51,38,20,0)
+^^4^4^2990423.100148
+"KRN",8989.51,38,20,1,0)
+This parameter holds the setting for mail box opening at start-up of the
+"KRN",8989.51,38,20,2,0)
+client application.
+"KRN",8989.51,38,20,3,0)
+
+"KRN",8989.51,38,20,4,0)
+Client attribute: [StartUp]StartUpOpenMailBoxName
+"KRN",8989.51,38,30,0)
+^8989.513I^2^2
+"KRN",8989.51,38,30,1,0)
+1^200
+"KRN",8989.51,38,30,2,0)
+9^9.4
+"KRN",8989.51,39,-1)
+0^14
+"KRN",8989.51,39,0)
+CWMA STARTUP MAIL BOX NAME^GUIMAIL OPEN MAIL BOX NAME^0^^Mail Box Name to Open
+"KRN",8989.51,39,1)
+F^^Enter mail box name to open Name is case sensitive
+"KRN",8989.51,39,20,0)
+^^5^5^2990423^
+"KRN",8989.51,39,20,1,0)
+This parameters holds the name of the Mail Box that will be opened at
+"KRN",8989.51,39,20,2,0)
+client application startup if the CWMA STARTUP OPEN MAIL BOX parameter is
+"KRN",8989.51,39,20,3,0)
+set to 1. This value is case sensitive. 
+"KRN",8989.51,39,20,4,0)
+
+"KRN",8989.51,39,20,5,0)
+Client attribute: [StartUp]StartUpOpenMailBoxName
+"KRN",8989.51,39,30,0)
+^8989.513I^2^2
+"KRN",8989.51,39,30,1,0)
+1^200
+"KRN",8989.51,39,30,2,0)
+9^9.4
+"KRN",8989.51,40,-1)
+0^2
+"KRN",8989.51,40,0)
+CWMA GENERAL CMA STYLE^GUIMAIL CMA STYLE DEFAULT^0^^Msg Attrib Style
+"KRN",8989.51,40,1)
+S^0:Use Menu;1:Show Checkboxes^Enter the display style on Create Message Form
+"KRN",8989.51,40,20,0)
+^8989.512^4^4^3050511^
+"KRN",8989.51,40,20,1,0)
+This parameter holds the style that the Create Message Form will use to
+"KRN",8989.51,40,20,2,0)
+display Message Attributes.
+"KRN",8989.51,40,20,3,0)
+
+"KRN",8989.51,40,20,4,0)
+Client attribute: [General]CreateMessageAttributes
+"KRN",8989.51,40,30,0)
+^8989.513I^2^2
+"KRN",8989.51,40,30,1,0)
+1^200
+"KRN",8989.51,40,30,2,0)
+9^9.4
+"KRN",8989.51,41,-1)
+0^5
+"KRN",8989.51,41,0)
+CWMA GENERAL MPD TAB^GUIMAIL MSG PROPERTIES DEFAULT TAB^0^^MSG Properties Default Tab
+"KRN",8989.51,41,1)
+S^0:Recipients;1:Message Info;2:Addressed To^Enter the default tab
+"KRN",8989.51,41,20,0)
+^^4^4^2981228.145529
+"KRN",8989.51,41,20,1,0)
+This parameter holds the default Message Properties Tab that will display
+"KRN",8989.51,41,20,2,0)
+when viewing the message attributes.
+"KRN",8989.51,41,20,3,0)
+
+"KRN",8989.51,41,20,4,0)
+Client attribute: [General]MessagePropertiesDefaultTab
+"KRN",8989.51,41,30,0)
+^8989.513I^2^2
+"KRN",8989.51,41,30,1,0)
+1^200
+"KRN",8989.51,41,30,2,0)
+9^9.4
+"KRN",8989.51,49,-1)
+0^6
+"KRN",8989.51,49,0)
+CWMA GENERAL NMP FREQ^GUIMAIL NEW MAIL POLLING FREQUENCY^0^^New Mail Polling Freq.
+"KRN",8989.51,49,1)
+N^1:360:0^Enter number of minutes for polling frequency
+"KRN",8989.51,49,20,0)
+^^4^4^2981228.145551
+"KRN",8989.51,49,20,1,0)
+This parameter holds the number of minutes that the application will poll 
+"KRN",8989.51,49,20,2,0)
+the VISTA mail server for new mail. 
+"KRN",8989.51,49,20,3,0)
+
+"KRN",8989.51,49,20,4,0)
+Client attribute: [General]NewMailPollingFrequency
+"KRN",8989.51,49,30,0)
+^8989.513I^2^2
+"KRN",8989.51,49,30,1,0)
+1^200
+"KRN",8989.51,49,30,2,0)
+9^9.4
+"KRN",8989.51,87,-1)
+0^4
+"KRN",8989.51,87,0)
+CWMA GENERAL MD COUNT^GUIMAIL # OF MSG DISPLAY COUNT^0^^Message Display Count
+"KRN",8989.51,87,1)
+N^1:49^Enter the number of messages to display
+"KRN",8989.51,87,20,0)
+^^4^4^2981228.145151
+"KRN",8989.51,87,20,1,0)
+This parameter holds the number of messages to display in main message 
+"KRN",8989.51,87,20,2,0)
+viewer.
+"KRN",8989.51,87,20,3,0)
+
+"KRN",8989.51,87,20,4,0)
+Client attribute: [General]MessageDisplayCount
+"KRN",8989.51,87,30,0)
+^8989.513I^2^2
+"KRN",8989.51,87,30,1,0)
+1^200
+"KRN",8989.51,87,30,2,0)
+9^9.4
+"KRN",8989.51,89,-1)
+0^8
+"KRN",8989.51,89,0)
+CWMA GENERAL VISTA PRT^GUIMAIL DEFAULT VISTA PRINTER^0^^VISTA Printer Name
+"KRN",8989.51,89,1)
+F^^Enter the Vista printer name as defined in the Device File
+"KRN",8989.51,89,20,0)
+^^3^3^2981228.145625
+"KRN",8989.51,89,20,1,0)
+This parameter holds the default Vista printer name.
+"KRN",8989.51,89,20,2,0)
+
+"KRN",8989.51,89,20,3,0)
+Client attribute: [General]DefaultVistaPrinter
+"KRN",8989.51,89,30,0)
+^8989.513I^2^2
+"KRN",8989.51,89,30,1,0)
+1^200
+"KRN",8989.51,89,30,2,0)
+9^9.4
+"KRN",8989.51,90,-1)
+0^13
+"KRN",8989.51,90,0)
+CWMA SOUND PRIORITY MAIL^GUIMAIL PRIORITY MAIL SOUND^0^^Priority Message Sound File Location
+"KRN",8989.51,90,1)
+F^^Enter the full path to the wav sound file
+"KRN",8989.51,90,20,0)
+^8989.512^4^4^3050624^
+"KRN",8989.51,90,20,1,0)
+This parameter holds the full resolved path to the wav file that will be
+"KRN",8989.51,90,20,2,0)
+played on the client system when a message is of type Priority.
+"KRN",8989.51,90,20,3,0)
+
+"KRN",8989.51,90,20,4,0)
+Client attribute: [Sound]Message Priority
+"KRN",8989.51,90,30,0)
+^8989.513I^2^2
+"KRN",8989.51,90,30,1,0)
+1^200
+"KRN",8989.51,90,30,2,0)
+9^9.4
+"KRN",8989.51,92,-1)
+0^7
+"KRN",8989.51,92,0)
+CWMA GENERAL PRINTMODE^GUIMAIL DEFAULT PRINT MODE^0^^Print Mode
+"KRN",8989.51,92,1)
+S^0:Vista;1:Windows^Enter mode of default printing
+"KRN",8989.51,92,20,0)
+^^3^3^2990423^
+"KRN",8989.51,92,20,1,0)
+This parameter holds the default mode of printing for the Print button.
+"KRN",8989.51,92,20,2,0)
+
+"KRN",8989.51,92,20,3,0)
+Client attribute: [General]DefaultPrintMode
+"KRN",8989.51,92,30,0)
+^8989.513I^2^2
+"KRN",8989.51,92,30,1,0)
+1^200
+"KRN",8989.51,92,30,2,0)
+9^9.4
+"KRN",8989.51,95,-1)
+0^3
+"KRN",8989.51,95,0)
+CWMA GENERAL MD COL^GUIMAIL MSG DISPLAY COLUMN SETTINGS^1^Column Display Sequence^Column,Width
+"KRN",8989.51,95,1)
+F^^Example: 3,50 (Column Number (zero based), pixel width)(Pattern: 1.2N1","1.N)
+"KRN",8989.51,95,2)
+K:X'?1.2N1","1.N X
+"KRN",8989.51,95,6)
+N^1:7^Enter the sequence in which the columns will display
+"KRN",8989.51,95,20,0)
+^8989.512^7^7^3050624^^^^
+"KRN",8989.51,95,20,1,0)
+This parameter holds the ordering of the columns and the column/width value
+"KRN",8989.51,95,20,2,0)
+pair. The value of each sequence instance will be in the following format:
+"KRN",8989.51,95,20,3,0)
+
+"KRN",8989.51,95,20,4,0)
+Column Number, a comma, and column width in pixels. The column number is 
+"KRN",8989.51,95,20,5,0)
+zero based.
+"KRN",8989.51,95,20,6,0)
+
+"KRN",8989.51,95,20,7,0)
+Client attribute: [General]MessageDisplayColumns
+"KRN",8989.51,95,30,0)
+^8989.513I^2^2
+"KRN",8989.51,95,30,1,0)
+1^200
+"KRN",8989.51,95,30,2,0)
+9^9.4
+"KRN",8989.51,96,-1)
+0^9
+"KRN",8989.51,96,0)
+CWMA SOUND ENABLED^GUIMAIL SOUND ENABLED^0^^Enable Sound
+"KRN",8989.51,96,1)
+S^0:False;1:True^Enter '1' to play sound, '0' to disable sound
+"KRN",8989.51,96,20,0)
+^^3^3^2990423.100335
+"KRN",8989.51,96,20,1,0)
+This parameter holds the value of whether or not sound will be played.
+"KRN",8989.51,96,20,2,0)
+
+"KRN",8989.51,96,20,3,0)
+Client attribute: [Sound]Sound
+"KRN",8989.51,96,30,0)
+^8989.513I^2^2
+"KRN",8989.51,96,30,1,0)
+1^200
+"KRN",8989.51,96,30,2,0)
+9^9.4
+"KRN",8989.51,100,-1)
+0^1
+"KRN",8989.51,100,0)
+CWMA ALLOW ATTACHMENTS^GUIMAIL ALLOW ATTACHMENTS^0^^Allow attachments to be added to message
+"KRN",8989.51,100,1)
+S^0:False;1:True^Enter 'True' or 'False'
+"KRN",8989.51,100,20,0)
+^8989.512^4^4^3050104^^^
+"KRN",8989.51,100,20,1,0)
+This parameter holds a boolean value of 'True' or 'False' and is used by
+"KRN",8989.51,100,20,2,0)
+the client system to determine if a user can add attachments to messages.
+"KRN",8989.51,100,20,3,0)
+
+"KRN",8989.51,100,20,4,0)
+Client attribute: [General]AllowAttachments=
+"KRN",8989.51,100,30,0)
+^8989.513I^2^2
+"KRN",8989.51,100,30,1,0)
+1^200
+"KRN",8989.51,100,30,2,0)
+9^9.4
+"KRN",8989.51,391,-1)
+0^19
+"KRN",8989.51,391,0)
+CWMA ALLOW ATTACHMENTS OPEN^ GUIMAIL ALLOW ATTACHMENT OPEN^0^^Allow attachments to be opened
+"KRN",8989.51,391,1)
+S^0:False;1:True^Enter 'True' or 'False'
+"KRN",8989.51,391,20,0)
+^8989.512^6^6^3050512^^^^
+"KRN",8989.51,391,20,1,0)
+This parameter holds a boolean value of 'True' or 'False' and is used by
+"KRN",8989.51,391,20,2,0)
+the client system to determine if a user can open an attachment within a 
+"KRN",8989.51,391,20,3,0)
+message.
+"KRN",8989.51,391,20,4,0)
+ 
+"KRN",8989.51,391,20,5,0)
+ 
+"KRN",8989.51,391,20,6,0)
+Client attribute: [General]AllowAttachmentsOpen=
+"KRN",8989.51,391,30,0)
+^8989.513I^2^2
+"KRN",8989.51,391,30,1,0)
+1^200
+"KRN",8989.51,391,30,2,0)
+9^9.4
+"KRN",8989.51,407,-1)
+0^18
+"KRN",8989.51,407,0)
+CWMA DISABLE GUIMAIL TIMEOUT^GUIMAIL DISABLE TIMEOUT^0^^Disable Timeout feature
+"KRN",8989.51,407,1)
+S^1:True;0:False^Enter 'True' to disable the timeout feature for GuiMail
+"KRN",8989.51,407,20,0)
+^8989.512^4^4^3050512^^
+"KRN",8989.51,407,20,1,0)
+This parameter disables GuiMail2.2 timeout feature, if this is set to 
+"KRN",8989.51,407,20,2,0)
+True the 'CWMA GUIMAIL TIMEOUT VALUE'is ignored.
+"KRN",8989.51,407,20,3,0)
+ 
+"KRN",8989.51,407,20,4,0)
+Client attribute: [General]GuiMailDisableTimeout
+"KRN",8989.51,407,30,0)
+^8989.513I^1^1
+"KRN",8989.51,407,30,1,0)
+10^9.4
+"KRN",8989.51,408,-1)
+0^17
+"KRN",8989.51,408,0)
+CWMA GUIMAIL TIMEOUT VALUE^GUIMail Timeout value^0^^Timeout Value
+"KRN",8989.51,408,1)
+N
+"KRN",8989.51,408,3)
+K:X<1 X
+"KRN",8989.51,408,6)
+N^600^Enter a value greater than 0
+"KRN",8989.51,408,20,0)
+^^7^7^3050512^
+"KRN",8989.51,408,20,1,0)
+This parameter allows a site timeout value for GuiMail 2.2
+"KRN",8989.51,408,20,2,0)
+if not set the users 'Timed Read' value is used, 
+"KRN",8989.51,408,20,3,0)
+if users timed read value can not be obtained then it default to 300 
+"KRN",8989.51,408,20,4,0)
+sec.  If the timeout is disabled this value is ignored
+"KRN",8989.51,408,20,5,0)
+ 
+"KRN",8989.51,408,20,6,0)
+ 
+"KRN",8989.51,408,20,7,0)
+Client attribute: [General]GuiMailTimeoutValue
+"KRN",8989.51,408,30,0)
+^8989.513I^1^1
+"KRN",8989.51,408,30,1,0)
+9^9.4
+"KRN",8989.52,1,-1)
+0^1
+"KRN",8989.52,1,0)
+CWMA PACKAGE PARAMETERS^GUI Mail Package Parameters^9.4
+"KRN",8989.52,1,10,0)
+^8989.521IA^17^17
+"KRN",8989.52,1,10,1,0)
+1^CWMA STARTUP NEW MAIL
+"KRN",8989.52,1,10,2,0)
+2^CWMA STARTUP OPEN MAIL BOX
+"KRN",8989.52,1,10,3,0)
+3^CWMA STARTUP MAIL BOX NAME
+"KRN",8989.52,1,10,4,0)
+4^CWMA GENERAL CMA STYLE
+"KRN",8989.52,1,10,5,0)
+5^CWMA GENERAL MPD TAB
+"KRN",8989.52,1,10,6,0)
+6^CWMA GENERAL NMP FREQ
+"KRN",8989.52,1,10,7,0)
+7^CWMA GENERAL MD COUNT
+"KRN",8989.52,1,10,8,0)
+8^CWMA GENERAL PRINTMODE
+"KRN",8989.52,1,10,9,0)
+9^CWMA GENERAL VISTA PRT
+"KRN",8989.52,1,10,10,0)
+10^CWMA GENERAL MD COL
+"KRN",8989.52,1,10,11,0)
+20^CWMA SOUND MESSAGE OPEN
+"KRN",8989.52,1,10,12,0)
+21^CWMA SOUND MESSAGE CLOSE
+"KRN",8989.52,1,10,13,0)
+22^CWMA SOUND PRIORITY MAIL
+"KRN",8989.52,1,10,14,0)
+23^CWMA SOUND NEW MAIL
+"KRN",8989.52,1,10,15,0)
+15^CWMA SOUND ENABLED
+"KRN",8989.52,1,10,16,0)
+29^CWMA ALLOW ATTACHMENTS
+"KRN",8989.52,1,10,17,0)
+30^CWMA ALLOW ATTACHMENTS OPEN
+"KRN",8989.52,97,-1)
+0^2
+"KRN",8989.52,97,0)
+CWMA USER PARAMETERS^GUI Mail Package Parameters^200
+"KRN",8989.52,97,10,0)
+^8989.521IA^16^16
+"KRN",8989.52,97,10,1,0)
+1^CWMA STARTUP NEW MAIL
+"KRN",8989.52,97,10,2,0)
+2^CWMA STARTUP OPEN MAIL BOX
+"KRN",8989.52,97,10,3,0)
+3^CWMA STARTUP MAIL BOX NAME
+"KRN",8989.52,97,10,4,0)
+4^CWMA GENERAL CMA STYLE
+"KRN",8989.52,97,10,5,0)
+5^CWMA GENERAL MPD TAB
+"KRN",8989.52,97,10,6,0)
+6^CWMA GENERAL NMP FREQ
+"KRN",8989.52,97,10,7,0)
+7^CWMA GENERAL MD COUNT
+"KRN",8989.52,97,10,8,0)
+8^CWMA GENERAL PRINTMODE
+"KRN",8989.52,97,10,9,0)
+9^CWMA GENERAL VISTA PRT
+"KRN",8989.52,97,10,10,0)
+10^CWMA GENERAL MD COL
+"KRN",8989.52,97,10,11,0)
+20^CWMA SOUND MESSAGE OPEN
+"KRN",8989.52,97,10,12,0)
+21^CWMA SOUND MESSAGE CLOSE
+"KRN",8989.52,97,10,13,0)
+22^CWMA SOUND PRIORITY MAIL
+"KRN",8989.52,97,10,14,0)
+23^CWMA SOUND NEW MAIL
+"KRN",8989.52,97,10,15,0)
+15^CWMA SOUND ENABLED
+"KRN",8989.52,97,10,16,0)
+60^CWMA ALLOW ATTACHMENTS
+"KRN",8994,424,-1)
+0^1
+"KRN",8994,424,0)
+CW MAIL API^ENTRY^CWMAIL^4^P^^^1
+"KRN",8994,424,1,0)
+^8994.01^2^2^2990805^^^^
+"KRN",8994,424,1,1,0)
+The RPC Call is used by the Clinical Workstation GUI Vista Mail
+"KRN",8994,424,1,2,0)
+ application.
+"KRN",8994,424,2,0)
+^8994.02A^2^2
+"KRN",8994,424,2,1,0)
+PARAMETER^1^512
+"KRN",8994,424,2,2,0)
+TEXT ARRAY^2
+"KRN",8994,424,2,"B","PARAMETER",1)
+
+"KRN",8994,424,2,"B","TEXT ARRAY",2)
+
+"MBREQ")
+0
+"ORD",16,8994)
+8994;16;1;;;;;;;RPCDEL^XPDIA1
+"ORD",16,8994,0)
+REMOTE PROCEDURE
+"ORD",18,19)
+19;18;;;OPT^XPDTA;OPTF1^XPDIA;OPTE1^XPDIA;OPTF2^XPDIA;;OPTDEL^XPDIA
+"ORD",18,19,0)
+OPTION
+"ORD",20,8989.51)
+8989.51;20;;;PAR1E1^XPDTA2;PAR1F1^XPDIA3;PAR1E1^XPDIA3;PAR1F2^XPDIA3;;PAR1DEL^XPDIA3(%)
+"ORD",20,8989.51,0)
+PARAMETER DEFINITION
+"ORD",21,8989.52)
+8989.52;21;1;;PAR2E1^XPDTA2;PAR2F1^XPDIA3;PAR2E1^XPDIA3;PAR2F2^XPDIA3;;PAR2DEL^XPDIA3(%)
+"ORD",21,8989.52,0)
+PARAMETER TEMPLATE
+"PKG",515,-1)
+1^1
+"PKG",515,0)
+CW GUIMail^CWMA^CW GUIMail
+"PKG",515,20,0)
+^9.402P^^
+"PKG",515,22,0)
+^9.49I^1^1
+"PKG",515,22,1,0)
+2.3
+"PKG",515,22,1,"PAH",1,0)
+0^3050722
+"PRE")
+CWMAINI
+"QUES","XPF1",0)
+Y
+"QUES","XPF1","??")
+^D REP^XPDH
+"QUES","XPF1","A")
+Shall I write over your |FLAG| File
+"QUES","XPF1","B")
+YES
+"QUES","XPF1","M")
+D XPF1^XPDIQ
+"QUES","XPF2",0)
+Y
+"QUES","XPF2","??")
+^D DTA^XPDH
+"QUES","XPF2","A")
+Want my data |FLAG| yours
+"QUES","XPF2","B")
+YES
+"QUES","XPF2","M")
+D XPF2^XPDIQ
+"QUES","XPI1",0)
+YO
+"QUES","XPI1","??")
+^D INHIBIT^XPDH
+"QUES","XPI1","A")
+Want KIDS to INHIBIT LOGONs during the install
+"QUES","XPI1","B")
+YES
+"QUES","XPI1","M")
+D XPI1^XPDIQ
+"QUES","XPM1",0)
+PO^VA(200,:EM
+"QUES","XPM1","??")
+^D MG^XPDH
+"QUES","XPM1","A")
+Enter the Coordinator for Mail Group '|FLAG|'
+"QUES","XPM1","B")
+
+"QUES","XPM1","M")
+D XPM1^XPDIQ
+"QUES","XPO1",0)
+Y
+"QUES","XPO1","??")
+^D MENU^XPDH
+"QUES","XPO1","A")
+Want KIDS to Rebuild Menu Trees Upon Completion of Install
+"QUES","XPO1","B")
+YES
+"QUES","XPO1","M")
+D XPO1^XPDIQ
+"QUES","XPZ1",0)
+Y
+"QUES","XPZ1","??")
+^D OPT^XPDH
+"QUES","XPZ1","A")
+Want to DISABLE Scheduled Options, Menu Options, and Protocols
+"QUES","XPZ1","B")
+YES
+"QUES","XPZ1","M")
+D XPZ1^XPDIQ
+"QUES","XPZ2",0)
+Y
+"QUES","XPZ2","??")
+^D RTN^XPDH
+"QUES","XPZ2","A")
+Want to MOVE routines to other CPUs
+"QUES","XPZ2","B")
+NO
+"QUES","XPZ2","M")
+D XPZ2^XPDIQ
+"RTN")
+16
+"RTN","CWMACPPI")
+0^1^B4934611
+"RTN","CWMACPPI",1,0)
+CWMACPPI ;RVAMC/PLS - Convert Personal Preferences to Parameters Utility;21-Jun-2005 06:34;CLC
+"RTN","CWMACPPI",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMACPPI",3,0)
+ ;Call EN to convert Personal Preferences from File 890
+"RTN","CWMACPPI",4,0)
+ ;to the Kernel Toolkit Parameter File.
+"RTN","CWMACPPI",5,0)
+EN ;entry point
+"RTN","CWMACPPI",6,0)
+ N CWLP,CWCNT,DTOUT,DUOUT,DIR,X,Y
+"RTN","CWMACPPI",7,0)
+ ;check for existing CWMAIL1 global containing preferences
+"RTN","CWMACPPI",8,0)
+ I '$D(^CWMAIL1) D BMES^XPDUTL("CWMAIL1 Global doesn't exist! Conversion of preferences not needed.") Q
+"RTN","CWMACPPI",9,0)
+ S (CWCNT,CWLP)=0 F  S CWLP=$O(^CWMAIL1(CWLP)) Q:CWLP<1  D
+"RTN","CWMACPPI",10,0)
+ . I $D(^CWMAIL1(CWLP,1,1,0)) S CWCNT=CWCNT+1
+"RTN","CWMACPPI",11,0)
+ D BMES^XPDUTL("There are "_CWCNT_" user(s) to convert")
+"RTN","CWMACPPI",12,0)
+ D UPDATE^XPDID(0)  ;init progress bar
+"RTN","CWMACPPI",13,0)
+ D MES^XPDUTL("Beginning conversion of preferences...")
+"RTN","CWMACPPI",14,0)
+ D LOOP
+"RTN","CWMACPPI",15,0)
+ Q
+"RTN","CWMACPPI",16,0)
+LOOP ;loop thru users
+"RTN","CWMACPPI",17,0)
+ N CWUSR,CWLP,CWTXT,CWVAL,CWPREF,CWCNTC,XPDIDTOT
+"RTN","CWMACPPI",18,0)
+ S CWUSR=0
+"RTN","CWMACPPI",19,0)
+ S XPDIDTOT=CWCNT  ;set total number
+"RTN","CWMACPPI",20,0)
+ F  S CWUSR=$O(^CWMAIL1(CWUSR)) Q:CWUSR<1  D
+"RTN","CWMACPPI",21,0)
+ . S CWCNTC=+$G(CWCNTC)+1
+"RTN","CWMACPPI",22,0)
+ . I CWCNTC#10=0 D UPDATE^XPDID(CWCNTC)
+"RTN","CWMACPPI",23,0)
+ . S CWPREF=$O(^CWMAIL1(CWUSR,1,"B","PREFERENCES",0))  ;get node
+"RTN","CWMACPPI",24,0)
+ . Q:'CWPREF  ;no preferences stored
+"RTN","CWMACPPI",25,0)
+ . S CWLP=0 F  S CWLP=$O(^CWMAIL1(CWUSR,1,CWPREF,1,CWLP)) Q:CWLP<1  D
+"RTN","CWMACPPI",26,0)
+ . . S CWTXT=^CWMAIL1(CWUSR,1,CWPREF,1,CWLP,0)  ;get node text
+"RTN","CWMACPPI",27,0)
+ . . I CWTXT'?1"[".E1"]" D
+"RTN","CWMACPPI",28,0)
+ . . . S CWPRM=$$GETPRM^CWMAILE($P(CWTXT,"="))   ;get parameter
+"RTN","CWMACPPI",29,0)
+ . . . I $L(CWPRM) D
+"RTN","CWMACPPI",30,0)
+ . . . . S CWVAL=$$STRIP^XLFSTR($P(CWTXT,"=",2)," ")                 ;get value
+"RTN","CWMACPPI",31,0)
+ . . . . I CWPRM="1|CWMA GENERAL MD COL" D
+"RTN","CWMACPPI",32,0)
+ . . . . . S CWVAL=CWVAL_$S($E(CWVAL,$L(CWVAL))=";":"6,38",1:";6,38")  ;add data for new column
+"RTN","CWMACPPI",33,0)
+ . . . . S CWERR=$$SETPARM^CWMAILD(CWUSR,CWPRM,CWVAL)                 ;set value into parameter
+"RTN","CWMACPPI",34,0)
+ D BMES^XPDUTL("Preference conversion is finished.")
+"RTN","CWMACPPI",35,0)
+ Q
+"RTN","CWMAIL")
+0^2^B19315599
+"RTN","CWMAIL",1,0)
+CWMAIL ;INDPLS/PLS- DELPHI VISTA MAIL SERVER ;22-Jul-2005 06:59;CLC
+"RTN","CWMAIL",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAIL",3,0)
+ Q   ;ROUTINE CAN'T BE CALLED DIRECTLY
+"RTN","CWMAIL",4,0)
+ENTRY(CWDATA,CWINPUT,CWTEXT) ;CALL WITH CWINPUT=CALL;DUZ;MSG;BASKET;NEW BASKET;NEWMAIL, TEXT=TEXT ARRAY
+"RTN","CWMAIL",5,0)
+ N CWCALL,X,DUZ,CWMHDR,CWMST,U,CWSVER
+"RTN","CWMAIL",6,0)
+ ;REMOVED XMDUZ FROM BEING NEW STATEMENT
+"RTN","CWMAIL",7,0)
+ I $$NEWERR^%ZTER N $ET S $ET=""
+"RTN","CWMAIL",8,0)
+ S U="^"
+"RTN","CWMAIL",9,0)
+ S $ZT="ERR^CWMAIL"
+"RTN","CWMAIL",10,0)
+ K CWDATA
+"RTN","CWMAIL",11,0)
+ S CWDATA(1)="0^^AN ERROR HAS OCCURRED"
+"RTN","CWMAIL",12,0)
+ S CWCALL="%"_$$UP^XLFSTR($P(CWINPUT,";"))   ;HOLDS TAG
+"RTN","CWMAIL",13,0)
+ S DUZ=$P(CWINPUT,";",2)
+"RTN","CWMAIL",14,0)
+ D DUZ^XUP(DUZ)   ;SETUP DUZ ARRAY
+"RTN","CWMAIL",15,0)
+ D INIT^XMVVITAE  ;UPDATE MAILMAN STATUS
+"RTN","CWMAIL",16,0)
+ S CWINPUT=$P(CWINPUT,";",3,999)
+"RTN","CWMAIL",17,0)
+ D PURGNAM
+"RTN","CWMAIL",18,0)
+ I CWCALL?1"%"1.7A,$T(@CWCALL)'="" D @(CWCALL_"(.CWDATA,CWINPUT,.CWTEXT)")
+"RTN","CWMAIL",19,0)
+ Q
+"RTN","CWMAIL",20,0)
+ERR D @^%ZOSF("ERRTN")
+"RTN","CWMAIL",21,0)
+ D RETGNAM
+"RTN","CWMAIL",22,0)
+ Q   ;
+"RTN","CWMAIL",23,0)
+%READ(CWDATA,CWINPUT,CWTEXT) ;
+"RTN","CWMAIL",24,0)
+ D %READ^CWMAILA(.CWDATA,CWINPUT)
+"RTN","CWMAIL",25,0)
+ Q
+"RTN","CWMAIL",26,0)
+%LIST(CWDATA,CWINPUT,CWTEXT) ;
+"RTN","CWMAIL",27,0)
+ ;CWINPUT = MAIL TYPE OR MAILBOX NUMBER;
+"RTN","CWMAIL",28,0)
+ D %LIST^CWMAILA(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",29,0)
+ Q
+"RTN","CWMAIL",30,0)
+%DELETE(CWDATA,CWINPUT,CWTEXT) ;
+"RTN","CWMAIL",31,0)
+ D %DELETE^CWMAILA(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",32,0)
+ Q
+"RTN","CWMAIL",33,0)
+%SAVE(CWDATA,CWINPUT,CWTEXT) ;
+"RTN","CWMAIL",34,0)
+ D %SAVE^CWMAILA(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",35,0)
+ Q
+"RTN","CWMAIL",36,0)
+%MAKNEW(CWDATA,CWINPUT,CWTEXT) ;
+"RTN","CWMAIL",37,0)
+ D %MAKNEW^CWMAILA(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",38,0)
+ Q
+"RTN","CWMAIL",39,0)
+%NEWBSK(CWDATA,CWINPUT,CWTEXT) ;CREATE A NEW MAIL BASKET
+"RTN","CWMAIL",40,0)
+ D %NEWBSK^CWMAILA(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",41,0)
+ Q
+"RTN","CWMAIL",42,0)
+%RESEQ(CWDATA,CWINPUT,CWTEXT) ;RESEQUENCE A VISTA MAIL BASKET
+"RTN","CWMAIL",43,0)
+ D %RESEQ^CWMAILA(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",44,0)
+ Q
+"RTN","CWMAIL",45,0)
+%REPLY(CWDATA,CWINPUT,CWTEXT) ;
+"RTN","CWMAIL",46,0)
+ D %REPLY^CWMAILB(.CWDATA,CWINPUT,.CWTEXT),RETGNAM
+"RTN","CWMAIL",47,0)
+ Q
+"RTN","CWMAIL",48,0)
+%FORWARD(CWDATA,CWINPUT,CWTEXT) ;
+"RTN","CWMAIL",49,0)
+ ;M ^TMP("CWMAIL","FORWARD",$H)=CWTEXT
+"RTN","CWMAIL",50,0)
+ ;S ^TMP("CWMAIL","CWINPUT",$J)=CWINPUT
+"RTN","CWMAIL",51,0)
+ D %FORWARD^CWMAILB(.CWDATA,CWINPUT,.CWTEXT),RETGNAM
+"RTN","CWMAIL",52,0)
+ Q
+"RTN","CWMAIL",53,0)
+%ANSWER(CWDATA,CWINPUT,CWTEXT) ;
+"RTN","CWMAIL",54,0)
+ D %ANSWER^CWMAILB(.CWDATA,CWINPUT,.CWTEXT),RETGNAM
+"RTN","CWMAIL",55,0)
+ Q
+"RTN","CWMAIL",56,0)
+%TERMIN(CWDATA,CWINPUT,CWTEXT) ;TERMINATE A MESSAGE THREAD
+"RTN","CWMAIL",57,0)
+ D %TERMIN^CWMAILB(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",58,0)
+ Q
+"RTN","CWMAIL",59,0)
+%CREATE(CWDATA,CWINPUT,CWTEXT) ;CREATE A NEW MESSAGE
+"RTN","CWMAIL",60,0)
+ D %CREATE^CWMAIL2(.CWDATA,CWINPUT,.CWTEXT),RETGNAM
+"RTN","CWMAIL",61,0)
+ Q
+"RTN","CWMAIL",62,0)
+%LATER(CWDATA,CWINPUT,CWTEXT) ;LATER A MESSAGE
+"RTN","CWMAIL",63,0)
+ D %LATER^CWMAILC(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",64,0)
+ Q
+"RTN","CWMAIL",65,0)
+ ;
+"RTN","CWMAIL",66,0)
+%MBOX(CWDATA,CWINPUT,CWTEXT) ;RETRIEVE MAILBOXES
+"RTN","CWMAIL",67,0)
+ D %MBOX^CWMAILC(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",68,0)
+ Q
+"RTN","CWMAIL",69,0)
+%PMBOX(CWDATA,CWINPUT,CWTEXT) ;PURGE ENTIRE MAIL BOX
+"RTN","CWMAIL",70,0)
+ D %PMBOX^CWMAILC(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",71,0)
+ Q
+"RTN","CWMAIL",72,0)
+%RNMBOX(CWDATA,CWINPUT,CWTEXT) ;RENAME EXISTING MAILBOX
+"RTN","CWMAIL",73,0)
+ D %RNMBOX^CWMAILC(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",74,0)
+ Q
+"RTN","CWMAIL",75,0)
+%MSGRCP(CWDATA,CWINPUT,CWTEXT) ; RETURNS A LIST OF MESSAGE RECIPIENTS
+"RTN","CWMAIL",76,0)
+ D %MSGRCP^CWMAILC(.CWDATA,CWINPUT)    ;,RETGNAM
+"RTN","CWMAIL",77,0)
+ Q
+"RTN","CWMAIL",78,0)
+%NETINFO(CWDATA,CWINPUT,CWTEXT) ; RETURNS NETWORK TRANSMISSION INFO
+"RTN","CWMAIL",79,0)
+ D %NETINFO^CWMAILC(.CWDATA,CWINPUT)    ;,RETGNAM
+"RTN","CWMAIL",80,0)
+ Q
+"RTN","CWMAIL",81,0)
+%ADRSTO(CWDATA,CWINPUT,CWTEXT) ;RETURNS ARRAY OF ADDRESSED TO
+"RTN","CWMAIL",82,0)
+ D %ADRSTO^CWMAILC(.CWDATA,CWINPUT)   ;,RETGNAM
+"RTN","CWMAIL",83,0)
+ Q
+"RTN","CWMAIL",84,0)
+%GRPINF(CWDATA,CWINPUT,CWTEXT) ;MAIL GROUP INFO
+"RTN","CWMAIL",85,0)
+ D %GRPINF^CWMAILC(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",86,0)
+ Q
+"RTN","CWMAIL",87,0)
+%USRINF(CWDATA,CWINPUT,CWTEXT) ; MAIL USER INFO
+"RTN","CWMAIL",88,0)
+ ;CWINPUT = MAIL USER IEN
+"RTN","CWMAIL",89,0)
+ D %USRINF^CWMAILC(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",90,0)
+ Q
+"RTN","CWMAIL",91,0)
+%PERPREF(CWDATA,CWINPUT,CWTEXT) ;RETRIEVE PERSONAL PREFERENCES
+"RTN","CWMAIL",92,0)
+ ;CWINPUT = MAIL USER IEN;SAVE NAME
+"RTN","CWMAIL",93,0)
+ D %PERPREF^CWMAILD(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",94,0)
+ Q
+"RTN","CWMAIL",95,0)
+%USRLOG(CWDATA,CWINPUT,CWTEXT) ;LOG USER INTO GUI MAIL LOG
+"RTN","CWMAIL",96,0)
+ ;CWINPUT = DUZ
+"RTN","CWMAIL",97,0)
+ D %USRLOG^CWMAILD(.CWDATA,DUZ),RETGNAM
+"RTN","CWMAIL",98,0)
+ Q
+"RTN","CWMAIL",99,0)
+%BMSGD(CWDATA,CWINPUT,CWTEXT) ;BUILD MSG INFO INTO GLOBAL
+"RTN","CWMAIL",100,0)
+ ;
+"RTN","CWMAIL",101,0)
+ D %BMSGD^CWMAILD(.CWDATA,CWINPUT,.CWTEXT),RETGNAM
+"RTN","CWMAIL",102,0)
+ Q
+"RTN","CWMAIL",103,0)
+%SUPREF(CWDATA,CWINPUT,CWTEXT) ;SET USER PREFERENCES
+"RTN","CWMAIL",104,0)
+ ;
+"RTN","CWMAIL",105,0)
+ D %SUPREF^CWMAILD(.CWDATA,CWINPUT,.CWTEXT),RETGNAM
+"RTN","CWMAIL",106,0)
+ Q
+"RTN","CWMAIL",107,0)
+RETGNAM ;RETURNS A $NAME FOR GLOBAL AFTER MERGING
+"RTN","CWMAIL",108,0)
+ M ^TMP($J,"CWMAIL")=CWDATA
+"RTN","CWMAIL",109,0)
+ K CWDATA S CWDATA=$NA(^TMP($J,"CWMAIL"))
+"RTN","CWMAIL",110,0)
+ Q
+"RTN","CWMAIL",111,0)
+PURGNAM ;PURGE GLOBAL ARRAY USED FOR DATA RETURN
+"RTN","CWMAIL",112,0)
+ K ^TMP($J,"CWMAIL")
+"RTN","CWMAIL",113,0)
+ Q
+"RTN","CWMAIL",114,0)
+%CHKMAIL(CWDATA,CWINPUT,CWTEXT) ;CHECK FOR NEW MAIL
+"RTN","CWMAIL",115,0)
+ ;CWINPUT = DUZ
+"RTN","CWMAIL",116,0)
+ D %CHKMAIL^CWMAILD(.CWDATA,DUZ),RETGNAM
+"RTN","CWMAIL",117,0)
+ Q
+"RTN","CWMAIL",118,0)
+%PRINT(CWDATA,CWINPUT,CWTEXT) ;PRINT A MESSAGE
+"RTN","CWMAIL",119,0)
+ ;
+"RTN","CWMAIL",120,0)
+ D %PRTMSG^CWMAILD(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",121,0)
+ Q
+"RTN","CWMAIL",122,0)
+%GETSVER(CWDATA,CWINPUT,CWTEXT) ;GET SERVER VERSION
+"RTN","CWMAIL",123,0)
+ ;
+"RTN","CWMAIL",124,0)
+ D %GETSVER^CWMAILD(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",125,0)
+ Q
+"RTN","CWMAIL",126,0)
+%MSGSRC(CWDATA,CWINPUT,CWTEXT) ;SEARCH AND RETURN SELECTED MESSAGES
+"RTN","CWMAIL",127,0)
+ ;
+"RTN","CWMAIL",128,0)
+ D %MSGSRC^CWMAILA(.CWDATA,CWINPUT,.CWTEXT),RETGNAM
+"RTN","CWMAIL",129,0)
+ Q
+"RTN","CWMAIL",130,0)
+%MSGISRC(CWDATA,CWINPUT,CWTEXT) ;SEARCH FOR A SPECIFIC MESSAGE NUMBER
+"RTN","CWMAIL",131,0)
+ ;
+"RTN","CWMAIL",132,0)
+ D %MSGISRC^CWMAILF(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",133,0)
+ Q
+"RTN","CWMAIL",134,0)
+ ;
+"RTN","CWMAIL",135,0)
+%OPENATT(CWDATA,CWINPUT,CWTEXT) ;ALLOW OPENING OF ATTACHMENTS
+"RTN","CWMAIL",136,0)
+ ;
+"RTN","CWMAIL",137,0)
+ D %OPENATT^CWMAILD(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",138,0)
+ Q
+"RTN","CWMAIL",139,0)
+%TIMEROF(CWDATA,CWINPUT,CWTEXT) ;TIMER OFF
+"RTN","CWMAIL",140,0)
+ ;
+"RTN","CWMAIL",141,0)
+ D %TIMEROF^CWMAILD(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",142,0)
+ Q
+"RTN","CWMAIL",143,0)
+%TIMERVA(CWDATA,CWINPUT,CWTEXT) ;SET TIME-OUT VALUE
+"RTN","CWMAIL",144,0)
+ ;
+"RTN","CWMAIL",145,0)
+ D TIMERVAL^CWMAILD(.CWDATA,CWINPUT),RETGNAM
+"RTN","CWMAIL",146,0)
+ Q
+"RTN","CWMAIL0")
+0^3^B20950040
+"RTN","CWMAIL0",1,0)
+CWMAIL0 ;INDPLS/PLS- DELPHI MAIL SERVER, CONT'D ;21-Jun-2005 06:34;CLC
+"RTN","CWMAIL0",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAIL0",3,0)
+ Q   ;ROUTINE CAN'T BE CALLED DIRECTLY
+"RTN","CWMAIL0",4,0)
+ ;
+"RTN","CWMAIL0",5,0)
+PROCMS(CWDATA,CWMSGN,CWNMFLG) ;PROCESS MAIL MESSAGE THREAD
+"RTN","CWMAIL0",6,0)
+ N CWRE,CWCNT,CWRSP,CWNWMSG,CWDATT,CWLCNT,CWLP,CWCONFRM,CW
+"RTN","CWMAIL0",7,0)
+ N CWIM,CWIU,CWINSTR,CWFLAGS,CWIR
+"RTN","CWMAIL0",8,0)
+ D INMSG^XMXUTIL2(XMDUZ,$$BSKT^XMXUTIL2(XMDUZ,CWMSGN),CWMSGN,,"F",.CWIM,.CWINSTR,.CWIU)  ;SET-UP MESSAGE INFO
+"RTN","CWMAIL0",9,0)
+ S CWDATA=$NA(^TMP($J,"CWMAIL"))
+"RTN","CWMAIL0",10,0)
+ S CWNWMSG=$G(CWIM("FROM"))["@"  ;NETWORK MESSAGE
+"RTN","CWMAIL0",11,0)
+ S CWCNT=2,CWLCNT=0
+"RTN","CWMAIL0",12,0)
+ S @CWDATA@(CWCNT)="Mail Message From: "_$G(CWIM("FROM NAME"))_"  "_"Dated: "_$$FMDTE^CWMAIL4(CWIM("DATE FM"),"5MZ")
+"RTN","CWMAIL0",13,0)
+ S CWCNT=$$INCNT(CWCNT),@CWDATA@(CWCNT)="Subject: "_$G(CWIM("SUBJ"))
+"RTN","CWMAIL0",14,0)
+ S CWCNT=$$INCNT(CWCNT),@CWDATA@(CWCNT)=""
+"RTN","CWMAIL0",15,0)
+ ;I 'CWNMFLG!(CWNMFLG&($G(CWIM("RESP"))<1))!(CWNMFLG&(+$G(CWIM("RESP"))=+$G(CWIM("RESPS"))))
+"RTN","CWMAIL0",16,0)
+ I 'CWNMFLG!(CWNMFLG&(+$G(CWIU("RESP"))<1))!(CWNMFLG&(+$G(CWIU("RESP"))=+$G(CWIM("RESPS")))) D READM(.CWDATA,CWMSGN,.CWCNT)
+"RTN","CWMAIL0",17,0)
+ S CWCONFRM=""
+"RTN","CWMAIL0",18,0)
+ D LASTACC(CWMSGN,$$BSKT^XMXUTIL2(XMDUZ,CWMSGN),0,.CWCONFRM)  ;UPDATE LAST ACCESS DATE/TIME
+"RTN","CWMAIL0",19,0)
+ ;PROCESS RESPONSES
+"RTN","CWMAIL0",20,0)
+ I $G(CWIM("RESPS"))>0 D
+"RTN","CWMAIL0",21,0)
+ . S CWLP=$S(+$G(CWIU("RESP"))=+$G(CWIM("RESPS")):1,+$G(CWIU("RESP"))<1:1,CWNMFLG:+$G(CWIU("RESP")),1:1) F CWLP=CWLP:1:CWIM("RESPS") D
+"RTN","CWMAIL0",22,0)
+ . . D INRESP^XMXUTIL2(CWMSGN,CWLP,"F",.CWIR)  ;gather details on specific response
+"RTN","CWMAIL0",23,0)
+ . . S CWCNT=$$INCNT(CWCNT),@CWDATA@(CWCNT)=""
+"RTN","CWMAIL0",24,0)
+ . . S CWCNT=$$INCNT(CWCNT),@CWDATA@(CWCNT)="Response: "_CWLP_") "_$G(CWIR("FROM NAME"))_"  "_$$FMDTE^CWMAIL4($G(CWIR("DATE FM")),"5MZ")
+"RTN","CWMAIL0",25,0)
+ . . S CWCNT=$$INCNT(CWCNT),@CWDATA@(CWCNT)=""
+"RTN","CWMAIL0",26,0)
+ . . D READM(.CWDATA,CWIR("XMZ"),.CWCNT)
+"RTN","CWMAIL0",27,0)
+ . . D LASTACC(CWMSGN,$$BSKT^XMXUTIL2(XMDUZ,CWMSGN),CWLP)  ;UPDATES LAST RESPONSE READ
+"RTN","CWMAIL0",28,0)
+ D NONEW^XMXUTIL(XMDUZ,$$BSKT^XMXUTIL2(XMDUZ,CWMSGN),CWMSGN,1)  ;UNNEW MESSAGE
+"RTN","CWMAIL0",29,0)
+ I +CWCONFRM D  ;SEND CONFIRMATION IF NEEDED
+"RTN","CWMAIL0",30,0)
+ . S CWCNT=$$INCNT(CWCNT),@CWDATA@(CWCNT)=""
+"RTN","CWMAIL0",31,0)
+ . S CWCNT=$$INCNT(CWCNT),@CWDATA@(CWCNT)=">>Confirmation Message Sent to Sender.<<"
+"RTN","CWMAIL0",32,0)
+ I $O(@CWDATA@(1)) D
+"RTN","CWMAIL0",33,0)
+ . S @CWDATA@(1)="1^^DATA HAS BEEN FOUND"
+"RTN","CWMAIL0",34,0)
+ E  S @CWDATA@(1)="1^^Message text could not be found."
+"RTN","CWMAIL0",35,0)
+ S $P(@CWDATA@(1),U,2)=CWCNT-2
+"RTN","CWMAIL0",36,0)
+ Q
+"RTN","CWMAIL0",37,0)
+ ;
+"RTN","CWMAIL0",38,0)
+LASTACC(XMZ,CWBIEN,CWLRSP,XMCONFRM) ;UPDATE LAST RESPONSE READ DATE
+"RTN","CWMAIL0",39,0)
+ ;INPUT    XMZ = MESSAGE NUMBER
+"RTN","CWMAIL0",40,0)
+ ;      CWBIEN = BASKET IEN
+"RTN","CWMAIL0",41,0)
+ ;      CWLRSP = LAST RESPONSE READ
+"RTN","CWMAIL0",42,0)
+ ;
+"RTN","CWMAIL0",43,0)
+ N CWIM,CWIU,CWINSTR,CWXINSTR,CWFLAGS
+"RTN","CWMAIL0",44,0)
+ D INMSG1^XMXUTIL2(XMDUZ,XMZ,,.CWFLAGS,.CWIM,.CWIU)   ;SET-UP FOR CALL
+"RTN","CWMAIL0",45,0)
+ D INMSG2^XMXUTIL2(XMDUZ,XMZ,,.CWIM,.CWXINSTR,.CWIU)
+"RTN","CWMAIL0",46,0)
+ S CWINSTR("FLAGS")=$S($G(CWXINSTR("FLAGS"))["R":"R",1:"")
+"RTN","CWMAIL0",47,0)
+ D LASTACC^XMXUTIL(XMDUZ,CWBIEN,XMZ,CWLRSP,.CWIM,.CWINSTR,.CWIU,.XMCONFRM)
+"RTN","CWMAIL0",48,0)
+ Q
+"RTN","CWMAIL0",49,0)
+ ;
+"RTN","CWMAIL0",50,0)
+READM(CWDATA,CWINPUT,CWCNT) ;OUTPUT MAIL MESSAGE IN ARRAY
+"RTN","CWMAIL0",51,0)
+ S $ZT="READMER^CWMAIL"
+"RTN","CWMAIL0",52,0)
+ N CWRDATA,XMZ,CWMTYPE,CWTFLG,XMER,XMPOS
+"RTN","CWMAIL0",53,0)
+ S XMZ=+$G(CWINPUT),CWTFLG=0,CWMTYPE=$G(CWINSTR("TYPE"))
+"RTN","CWMAIL0",54,0)
+ F  S CWRDATA=$$READ^XMGAPI1() Q:XMER<0!(CWTFLG)  S CWCNT=CWCNT+1,@CWDATA@(CWCNT)=CWRDATA I CWMTYPE="K"!(CWMTYPE="X") S:CWRDATA["$END TXT" CWTFLG=1
+"RTN","CWMAIL0",55,0)
+ ;
+"RTN","CWMAIL0",56,0)
+READMER Q
+"RTN","CWMAIL0",57,0)
+ ;
+"RTN","CWMAIL0",58,0)
+INCNT(CWCNT) ;INCREMENT COUNTER
+"RTN","CWMAIL0",59,0)
+ Q CWCNT+1
+"RTN","CWMAIL0",60,0)
+ ;
+"RTN","CWMAIL0",61,0)
+ADDMP(CWXMZ,CWVAL) ;set data into DAT based on subscripted CWVAL
+"RTN","CWMAIL0",62,0)
+ ;INPUT  -  CWXMZ = message ien
+"RTN","CWMAIL0",63,0)
+ ;          CWVAL = input array (i.e. CWVAL(1)=first piece...CWVAL(n)=last piece
+"RTN","CWMAIL0",64,0)
+ ;OUTPUT -  data string holding delimited ('^') data
+"RTN","CWMAIL0",65,0)
+ S CWXMZ=$G(CWXMZ,0)
+"RTN","CWMAIL0",66,0)
+ I +$G(CWXMZ) D
+"RTN","CWMAIL0",67,0)
+ . N X,CWCONFRM,CWTYPE,CWCLOSED,CWINFO,CWCONFID,CWSDRDUZ,CWBRDCAS,CWSDRNAM,CWTRECPT,CWTREPLY
+"RTN","CWMAIL0",68,0)
+ . N CWIM,CWIU,CWINSTR,CWPMSG,CWLP,CWDAT
+"RTN","CWMAIL0",69,0)
+ . D INMSG^XMXUTIL2(XMDUZ,$$BSKT^XMXUTIL2(XMDUZ,CWXMZ),CWXMZ,,"F",.CWIM,.CWINSTR,.CWIU)  ;SET-UP MESSAGE INFO
+"RTN","CWMAIL0",70,0)
+ . S CWVAL(6)=$$UP^XLFSTR($G(CWINSTR("TYPE")))  ;message type(s)
+"RTN","CWMAIL0",71,0)
+ . S:$G(CWINSTR("FLAGS"))["P" CWVAL(6)="P"_CWVAL(6)   ;add priority flag as a type
+"RTN","CWMAIL0",72,0)
+ . S CWVAL(7)=$G(CWINSTR("FLAGS"))["R"       ;confirmation flag
+"RTN","CWMAIL0",73,0)
+ . S CWVAL(8)=$G(CWINSTR("FLAGS"))["X"       ;closed flag
+"RTN","CWMAIL0",74,0)
+ . S CWVAL(9)=$G(CWINSTR("FLAGS"))["I"       ;informational flag
+"RTN","CWMAIL0",75,0)
+ . S CWVAL(10)=$G(CWINSTR("FLAGS"))["C"      ;confidential flag
+"RTN","CWMAIL0",76,0)
+ . S CWVAL(11)=$G(CWIM("FROM DUZ"))          ;sender ien
+"RTN","CWMAIL0",77,0)
+ . S CWVAL(13)=$G(CWIM("FROM NAME"))         ;sender full name
+"RTN","CWMAIL0",78,0)
+ . S CWVAL(12)=$$BCAST^XMXSEC(CWXMZ)         ;broadcast flag
+"RTN","CWMAIL0",79,0)
+ . S CWVAL(14)=$G(CWIM("RECIPS"))            ;total # of recipients
+"RTN","CWMAIL0",80,0)
+ . S CWVAL(15)=$G(CWIM("RESPS"))             ;total # of replies
+"RTN","CWMAIL0",81,0)
+ . S CWVAL(16)=$G(CWINSTR("FLAGS"))["P"      ;priority flag
+"RTN","CWMAIL0",82,0)
+ . S CWVAL(17)=+$G(CWIU("RESP"))              ;# of last response read
+"RTN","CWMAIL0",83,0)
+ . S CWVAL(20)=+$$ANSWER^XMXSEC(XMDUZ,CWXMZ,$$ZNODE^XMXUTIL2(CWXMZ))  ;can user answer message
+"RTN","CWMAIL0",84,0)
+ ;set data into node
+"RTN","CWMAIL0",85,0)
+ S CWLP="" F  S CWLP=$O(CWVAL(CWLP)) Q:CWLP<1  D
+"RTN","CWMAIL0",86,0)
+ . S $P(CWDAT,U,CWLP)=CWVAL(CWLP)
+"RTN","CWMAIL0",87,0)
+ Q CWDAT
+"RTN","CWMAIL1")
+0^4^B14471507
+"RTN","CWMAIL1",1,0)
+CWMAIL1 ;INDPLS/PLS- GUI MAIL UTILITIES ;21-Jun-2005 06:34;CLC
+"RTN","CWMAIL1",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAIL1",3,0)
+ ;MODIFIED FOR XM*7.1*50
+"RTN","CWMAIL1",4,0)
+LATER(CWXMZ,CWXMA) ;LATER A MESSAGE
+"RTN","CWMAIL1",5,0)
+ S $ZT="LATERE^CWMAIL1"
+"RTN","CWMAIL1",6,0)
+ N CWFLG,X,Y,%H,NOW,CWINSTR,CWXMMSG,CWTMDF
+"RTN","CWMAIL1",7,0)
+ S CWFLG=0
+"RTN","CWMAIL1",8,0)
+ G:'CWXMZ!('$G(CWXMA)) LATERE
+"RTN","CWMAIL1",9,0)
+ ;S CWTMDF=$G(^XMB("TIMEDIFF"))  ;get time diff for site
+"RTN","CWMAIL1",10,0)
+ ;I CWXMA[":" D
+"RTN","CWMAIL1",11,0)
+ ;. I '$L(CWTMDF) S CWXMA=$P(CWXMA," ")  ;use date and not date/time
+"RTN","CWMAIL1",12,0)
+ ;. E  S CWXMA=CWXMA_" "_CWTMDF  ;append time zone diff
+"RTN","CWMAIL1",13,0)
+ S CWXMA=$$CONVERT^XMXUTIL1(CWXMA,$S(CWXMA[":":1,1:0))  ;convert to fileman date/time
+"RTN","CWMAIL1",14,0)
+CK S NOW=$$NOW^XLFDT S CWXMA=$S(CWXMA>NOW:CWXMA,1:(NOW+.0010))  ;DEFAULT TO 10 MINUTES IN FUTURE
+"RTN","CWMAIL1",15,0)
+ I CWXMA>0 D
+"RTN","CWMAIL1",16,0)
+ . S CWINSTR("LATER")=CWXMA
+"RTN","CWMAIL1",17,0)
+ . D LATERMSG^XMXAPI(XMDUZ,"",CWXMZ,.CWINSTR,.CWXMMSG)
+"RTN","CWMAIL1",18,0)
+ . I CWXMMSG S CWFLG=1
+"RTN","CWMAIL1",19,0)
+LATERE ;
+"RTN","CWMAIL1",20,0)
+ Q CWFLG
+"RTN","CWMAIL1",21,0)
+ ;
+"RTN","CWMAIL1",22,0)
+ ;
+"RTN","CWMAIL1",23,0)
+NETINFO(CWDAT,XMZ) ;RETRIEVE NETWORK TRANMISSION INFORMATION
+"RTN","CWMAIL1",24,0)
+ ;
+"RTN","CWMAIL1",25,0)
+ K CWDAT
+"RTN","CWMAIL1",26,0)
+ S CWDAT=$NA(^TMP($J,"CWMAIL"))
+"RTN","CWMAIL1",27,0)
+ S $ZT="NETINFOE^CWMAIL1"
+"RTN","CWMAIL1",28,0)
+ N CWLP,CWCNT
+"RTN","CWMAIL1",29,0)
+ S CWLP=0,CWCNT=2
+"RTN","CWMAIL1",30,0)
+ D QN^XMXUTIL3(XMZ,,,)  ;DEFAULTS TO ALL LINES;START AT 0 AND SET TO ^TMP("XMLIST",$J)
+"RTN","CWMAIL1",31,0)
+ F  S CWLP=$O(^TMP("XMLIST",$J,CWLP)) Q:CWLP<1  D
+"RTN","CWMAIL1",32,0)
+ . S @CWDAT@(CWCNT)=^TMP("XMLIST",$J,CWLP),CWCNT=CWCNT+1
+"RTN","CWMAIL1",33,0)
+NETINFOE ;
+"RTN","CWMAIL1",34,0)
+ I $O(@CWDAT@(1)) D
+"RTN","CWMAIL1",35,0)
+ . S @CWDAT@(1)="1^^DATA HAS BEEN FOUND"
+"RTN","CWMAIL1",36,0)
+ E  S @CWDAT@(1)="1^^There was no Transmission Information available."
+"RTN","CWMAIL1",37,0)
+ S $P(@CWDAT@(1),U,2)=CWCNT-2
+"RTN","CWMAIL1",38,0)
+ Q
+"RTN","CWMAIL1",39,0)
+ ;
+"RTN","CWMAIL1",40,0)
+ADRSTO(CWDAT,XMZ) ;RETRIEVE ADDRESSED TO INFO
+"RTN","CWMAIL1",41,0)
+ ;
+"RTN","CWMAIL1",42,0)
+ K CWDAT
+"RTN","CWMAIL1",43,0)
+ S CWDAT=$NA(^TMP($J,"CWMAIL"))
+"RTN","CWMAIL1",44,0)
+ N CWLP,CWCNT
+"RTN","CWMAIL1",45,0)
+ S CWLP=0,CWCNT=2
+"RTN","CWMAIL1",46,0)
+ D Q^XMXUTIL3(XMZ)  ;DEFAULTS TO ALL LINES;START AT 0 AND SET TO ^TMP("XMLIST",$J)
+"RTN","CWMAIL1",47,0)
+ F  S CWLP=$O(^TMP("XMLIST",$J,CWLP)) Q:CWLP<1  D
+"RTN","CWMAIL1",48,0)
+ . S @CWDAT@(CWCNT)=$G(^TMP("XMLIST",$J,CWLP,"TO NAME")),CWCNT=CWCNT+1
+"RTN","CWMAIL1",49,0)
+ I $O(@CWDAT@(1)) D
+"RTN","CWMAIL1",50,0)
+ . S @CWDAT@(1)="1^^DATA HAS BEEN FOUND"
+"RTN","CWMAIL1",51,0)
+ E  S @CWDAT@(1)="1^^There was no ADDRESSED TO recipients found."
+"RTN","CWMAIL1",52,0)
+ S $P(@CWDAT@(1),U,2)=CWCNT-2
+"RTN","CWMAIL1",53,0)
+ADRSTOE Q
+"RTN","CWMAIL1",54,0)
+ ;
+"RTN","CWMAIL1",55,0)
+RECPT(CWDAT,XMZ) ;BUILD RECIPIENT LIST
+"RTN","CWMAIL1",56,0)
+ K CWDAT
+"RTN","CWMAIL1",57,0)
+ S CWDAT=$NA(^TMP($J,"CWMAIL"))
+"RTN","CWMAIL1",58,0)
+ N CWLP,CWCNT,CWIM,CWIU,CWINSTR
+"RTN","CWMAIL1",59,0)
+ N CWRECPT,CWLR,CWLRSPRD,CWFR,CWFWD,CWTERM,CWRMI,CWNTT,CWSNT
+"RTN","CWMAIL1",60,0)
+ S CWLP=0,CWCNT=2
+"RTN","CWMAIL1",61,0)
+ D QD^XMXUTIL3(XMZ)  ;
+"RTN","CWMAIL1",62,0)
+ F  S CWLP=$O(^TMP("XMLIST",$J,CWLP)) Q:CWLP<1  D
+"RTN","CWMAIL1",63,0)
+ . S CWRECPT=$G(^TMP("XMLIST",$J,CWLP,"TO NAME"))  ;recipient name
+"RTN","CWMAIL1",64,0)
+ . S CWLR=$$FMDTE^CWMAIL4($G(^("LREAD")),"5MZ")  ;last read date/time
+"RTN","CWMAIL1",65,0)
+ . S CWLRSPRD=$G(^("RESP"))                      ;last response read
+"RTN","CWMAIL1",66,0)
+ . S CWFR=$$FMDTE^CWMAIL4($G(^("FREAD")),"5MZ")  ;first read date/time
+"RTN","CWMAIL1",67,0)
+ . S CWFWD=$S($D(^("FWD ON")):"*",1:"")          ;forwarded message
+"RTN","CWMAIL1",68,0)
+ . S CWTERM=$S($D(^("TERM")):"*",1:"")           ;terminated message
+"RTN","CWMAIL1",69,0)
+ . S CWRMI=$G(^("ID"))                           ;remote message id
+"RTN","CWMAIL1",70,0)
+ . S CWNTT=$G(^("SECS"))                         ;network trans time
+"RTN","CWMAIL1",71,0)
+ . S CWSNT=$$FMDTE^CWMAIL4($G(^("XDATE")),"5MZ") ;network sent date/time
+"RTN","CWMAIL1",72,0)
+ . S @CWDAT@(CWCNT)=U_CWRECPT_U_CWLR_U_CWFR_U_CWFWD_U_CWTERM_U_CWRMI_U_CWNTT_U_CWSNT_U_CWLRSPRD_U
+"RTN","CWMAIL1",73,0)
+ . S CWCNT=CWCNT+1
+"RTN","CWMAIL1",74,0)
+ D INMSG1^XMXUTIL2(XMDUZ,XMZ,,"F",.CWIM,.CWIU)   ;retrieve total recipients
+"RTN","CWMAIL1",75,0)
+ D INMSG2^XMXUTIL2(XMDUZ,XMZ,,.CWIM,.CWINSTR,.CWIU)  ;and responses.
+"RTN","CWMAIL1",76,0)
+RECPTE I $O(@CWDAT@(1)) D
+"RTN","CWMAIL1",77,0)
+ . S @CWDAT@(1)="1^^DATA HAS BEEN FOUND"_U_+$G(CWIM("RECIPS"))_U_+$G(CWIM("RESPS"))
+"RTN","CWMAIL1",78,0)
+ E  S @CWDAT@(1)="1^^There were no recipients found."_U_0_U_0
+"RTN","CWMAIL1",79,0)
+ S $P(@CWDAT@(1),U,2)=CWCNT-2
+"RTN","CWMAIL1",80,0)
+ Q
+"RTN","CWMAIL2")
+0^5^B22772090
+"RTN","CWMAIL2",1,0)
+CWMAIL2 ;INDPLS/PLS- DELPHI VISTA MAIL SERVER, CONT'D ;21-Jun-2005 06:34;CLC
+"RTN","CWMAIL2",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAIL2",3,0)
+ ;Input - CWINPUT : 1 - Subject
+"RTN","CWMAIL2",4,0)
+ ;                : 2 - Flags
+"RTN","CWMAIL2",5,0)
+ ;                : 3 - Attachment Flag
+"RTN","CWMAIL2",6,0)
+ ;
+"RTN","CWMAIL2",7,0)
+ Q   ;ROUTINE CAN'T BE CALLED DIRECTLY
+"RTN","CWMAIL2",8,0)
+%CREATE(CWDATA,CWINPUT,CWTEXT) ;CREATE A NEW MESSAGE
+"RTN","CWMAIL2",9,0)
+ N CWSDATA,CWSEDATA,CWLP,CWTXTARY,DA,DIE,DR,Y,XMTEXT,CWMSGABS,CWTMP,CWFILE,CWIEN,CWNAM
+"RTN","CWMAIL2",10,0)
+ N XMBODY,XMSUBJ,XMY,XMINSTR,XMZ
+"RTN","CWMAIL2",11,0)
+ S CWDATA(1)="0^99- UNDEFINED ERROR"
+"RTN","CWMAIL2",12,0)
+ ;INPUT CONTAINS SUBJECT;PARAMETER ARRAY (IE. TESTING API;PCSI
+"RTN","CWMAIL2",13,0)
+ ;P=PRIORITY, X=CLOSED, C=CONFIDENTIAL, I=INFORMATIONAL, R=CONFIRMATION
+"RTN","CWMAIL2",14,0)
+ ;TEXT ARRAY CONTAINS RECIPIENT LIST AND MESSAGE TEXT LOADED FROM BMSGD call
+"RTN","CWMAIL2",15,0)
+ ;BUILD XMY ARRAY
+"RTN","CWMAIL2",16,0)
+ S CWTEXT=$NA(^TMP($J,"CWMAILLOAD"))
+"RTN","CWMAIL2",17,0)
+ S CWSDATA=$G(@CWTEXT@(-9902),"[START XMY]"),CWSEDATA=$G(@CWTEXT@(-9903),"[END XMY]")
+"RTN","CWMAIL2",18,0)
+ S CWLP=-1 D GFNDLP^CWMAILB(.CWLP,CWSDATA)
+"RTN","CWMAIL2",19,0)
+ I $G(CWLP)="" S CWDATA(1)="0^1- NO RECIPIENTS LISTED" G CRTEND
+"RTN","CWMAIL2",20,0)
+ ;RETRIEVE RECIPIENTS
+"RTN","CWMAIL2",21,0)
+ F  S CWLP=$O(@CWTEXT@(CWLP)) Q:CWLP=""  Q:@CWTEXT@(CWLP)=CWSEDATA  D
+"RTN","CWMAIL2",22,0)
+ .S CWTMP=$G(@CWTEXT@(CWLP)) Q:CWTMP=""
+"RTN","CWMAIL2",23,0)
+ .S CWFILE=+$P(CWTMP,"^"),CWIEN=+$P(CWTMP,"^",2),CWNAM=$P(CWTMP,"^",3)
+"RTN","CWMAIL2",24,0)
+ .I CWFILE=200 S XMY(CWIEN)=""
+"RTN","CWMAIL2",25,0)
+ .E  I CWFILE=3.8 S XMY("G."_CWNAM)=""
+"RTN","CWMAIL2",26,0)
+ .E  S XMY(CWNAM)=""
+"RTN","CWMAIL2",27,0)
+ I '$D(XMY) S CWDATA(1)="0^1- NO RECIPIENTS LISTED" G CRTEND  ; NO RECIPIENTS LISTED
+"RTN","CWMAIL2",28,0)
+ ;BUILD MESSAGE @TEXT@ ARRAY
+"RTN","CWMAIL2",29,0)
+ S CWSDATA=$G(@CWTEXT@(-9900),"[START DATA]"),CWSEDATA=$G(@CWTEXT@(-9901),"[END DATA]")
+"RTN","CWMAIL2",30,0)
+ S CWLP=-1 D GFNDLP^CWMAILB(.CWLP,CWSDATA)
+"RTN","CWMAIL2",31,0)
+ I $G(CWLP)="" S CWDATA(1)="0^3- NO MESSAGE TEXT" G CRTEND
+"RTN","CWMAIL2",32,0)
+ F  S CWLP=$O(@CWTEXT@(CWLP)) Q:CWLP=""  Q:@CWTEXT@(CWLP)=CWSEDATA  D
+"RTN","CWMAIL2",33,0)
+ .S ^TMP($J,"CWMAILOUT",CWLP)=$G(@CWTEXT@(CWLP))
+"RTN","CWMAIL2",34,0)
+ I '$D(^TMP($J,"CWMAILOUT")) S CWDATA(1)="0^3- NO MESSAGE TEXT" G CRTEND   ;NO MESSAGE @CWTEXT@
+"RTN","CWMAIL2",35,0)
+ ;I '$L($P($G(CWINPUT),";")) S CWDATA(1)="0^4- MESSAGE SUBJECT NOT GIVEN" G CRTEND
+"RTN","CWMAIL2",36,0)
+ ;E
+"RTN","CWMAIL2",37,0)
+ S XMSUBJ=$P($G(CWINPUT),";")
+"RTN","CWMAIL2",38,0)
+ ;subject can be null or between 3-65 characters. Length is handled on client side.
+"RTN","CWMAIL2",39,0)
+ I $L(XMSUBJ),$L(XMSUBJ)<3 S XMSUBJ=XMSUBJ_$E("__",1,3-$L(XMSUBJ))
+"RTN","CWMAIL2",40,0)
+ ;PROCESS MESSAGE
+"RTN","CWMAIL2",41,0)
+ S XMBODY=$NA(^TMP($J,"CWMAILOUT"))
+"RTN","CWMAIL2",42,0)
+ D CNVTAB(XMBODY)  ;convert tabs to spaces
+"RTN","CWMAIL2",43,0)
+ S XMINSTR("FLAGS")=$P(CWINPUT,";",2)  ;GET MESSAGE ATTRIBUTES
+"RTN","CWMAIL2",44,0)
+ I '$P($G(CWINPUT),";",3) D
+"RTN","CWMAIL2",45,0)
+ . D SENDMSG^XMXAPI(XMDUZ,XMSUBJ,XMBODY,.XMY,.XMINSTR,.XMZ)
+"RTN","CWMAIL2",46,0)
+ E  D
+"RTN","CWMAIL2",47,0)
+ . D CRE8XMZ^XMXAPI(XMSUBJ,.XMZ)  ;create message stub
+"RTN","CWMAIL2",48,0)
+ . I +$G(XMZ) D
+"RTN","CWMAIL2",49,0)
+ . . D TEXT^XMXEDIT(XMZ,XMBODY)  ;stuff message text
+"RTN","CWMAIL2",50,0)
+ . . D BLDNETI(XMZ,XMSUBJ)  ;stuff network header information
+"RTN","CWMAIL2",51,0)
+ . . D ADDRNSND^XMXAPI(XMDUZ,XMZ,.XMY,.XMINSTR)  ;send message
+"RTN","CWMAIL2",52,0)
+ I +$G(XMZ)<1 S CWDATA(1)="0^5- MESSAGE CREATION FAILED" G CRTEND
+"RTN","CWMAIL2",53,0)
+ I +$G(XMZ)>0 S CWDATA(1)="1^^"_$G(XMZ)
+"RTN","CWMAIL2",54,0)
+CRTEND K ^TMP($J,"CWMAILOUT"),^TMP($J,"CWMAILLOAD")
+"RTN","CWMAIL2",55,0)
+ Q
+"RTN","CWMAIL2",56,0)
+CNVTAB(CWSRC) ;Convert TABS to spaces (use 6 char per tab)
+"RTN","CWMAIL2",57,0)
+ ;PASS $NA() VARIABLE NAME CONTAINING DATA
+"RTN","CWMAIL2",58,0)
+ N CWLP,CWLINE
+"RTN","CWMAIL2",59,0)
+ S CWLP=+$G(CWLP)
+"RTN","CWMAIL2",60,0)
+ F  S CWLP=$O(@CWSRC@(CWLP)) Q:CWLP=""  D
+"RTN","CWMAIL2",61,0)
+ . S CWLINE=@CWSRC@(CWLP)
+"RTN","CWMAIL2",62,0)
+ . S @CWSRC@(CWLP)=$$LNCNV(CWLINE)
+"RTN","CWMAIL2",63,0)
+ Q
+"RTN","CWMAIL2",64,0)
+LNCNV(CWL) ; data line tab extracter
+"RTN","CWMAIL2",65,0)
+ N CWTMP,CWTMPL,CWP,CWPR,CWPADL
+"RTN","CWMAIL2",66,0)
+ Q:'$F(CWL,$C(9)) CWL  ; no tabs to convert
+"RTN","CWMAIL2",67,0)
+ S CWTMP=CWL,CWTMPL=""
+"RTN","CWMAIL2",68,0)
+ F  D  Q:CWTMP'[$C(9)
+"RTN","CWMAIL2",69,0)
+ . S CWP=$P(CWTMP,$C(9)) ; left portion of string
+"RTN","CWMAIL2",70,0)
+ . S CWPR=$P(CWTMP,$C(9),2,999) ; remainder of string
+"RTN","CWMAIL2",71,0)
+ . S CWPADL=6-($L(CWP)#6)    ; pad length
+"RTN","CWMAIL2",72,0)
+ . I ($L(CWP)+CWPADL+$L(CWPR))>250 Q  ;line is to long
+"RTN","CWMAIL2",73,0)
+ . S CWTMP=CWP_$$REPEAT^XLFSTR(" ",CWPADL)_CWPR
+"RTN","CWMAIL2",74,0)
+ Q CWTMP
+"RTN","CWMAIL2",75,0)
+ ;
+"RTN","CWMAIL2",76,0)
+BLDNETI(CWXMZ,CWSUBJ) ;build network header information
+"RTN","CWMAIL2",77,0)
+ ;From: <user@domain>
+"RTN","CWMAIL2",78,0)
+ ;Subject:
+"RTN","CWMAIL2",79,0)
+ ;Date: 9 Jul 1999 09:02:27 -0500 (EST)
+"RTN","CWMAIL2",80,0)
+ ;X-Mailer: VISTA Mail
+"RTN","CWMAIL2",81,0)
+ N CWCNT
+"RTN","CWMAIL2",82,0)
+ I $L($$ZNODE^XMXUTIL2(CWXMZ)) D
+"RTN","CWMAIL2",83,0)
+ . S ^XMB(3.9,CWXMZ,2,.001,0)="From: "_$$LOW^XLFSTR($G(XMV("NETNAME")))
+"RTN","CWMAIL2",84,0)
+ . ;S ^XMB(3.9,CWXMZ,2,.002,0)="To:"  ;refet to bldnetit api
+"RTN","CWMAIL2",85,0)
+ . S ^XMB(3.9,CWXMZ,2,.003,0)="Subject: "_$G(CWSUBJ)
+"RTN","CWMAIL2",86,0)
+ . S ^XMB(3.9,CWXMZ,2,.004,0)="Date:"_$$INDT^XMXUTIL1($$NOW^XLFDT)
+"RTN","CWMAIL2",87,0)
+ . S ^XMB(3.9,CWXMZ,2,.005,0)="X-Mailer: Vista GuiMail"  ;VISTA MAIL"
+"RTN","CWMAIL2",88,0)
+ . S ^XMB(3.9,CWXMZ,2,.006,0)="Encoding: x-uuencode"  ;X-UUENCODE"
+"RTN","CWMAIL2",89,0)
+ . S CWCNT=.007
+"RTN","CWMAIL2",90,0)
+ . D BLDNETIT(CWXMZ,.XMY,.CWCNT)
+"RTN","CWMAIL2",91,0)
+ Q
+"RTN","CWMAIL2",92,0)
+BLDNETIT(CWXMZ,CWXMY,CWCTN) ; build To: section
+"RTN","CWMAIL2",93,0)
+ ;Input - CWXMZ - Message Number
+"RTN","CWMAIL2",94,0)
+ ;        CWXMY - Array of Recipients
+"RTN","CWMAIL2",95,0)
+ ;        CWCTN - Counter
+"RTN","CWMAIL2",96,0)
+ ;
+"RTN","CWMAIL2",97,0)
+ N LP,CWINSTR,CWFULL,CWSET,CWTO,CWTO1,CWRHDR
+"RTN","CWMAIL2",98,0)
+ K ^TMP($J,"CWNETH")
+"RTN","CWMAIL2",99,0)
+ S CWINSTR("ADDR FLAGS")="RX"
+"RTN","CWMAIL2",100,0)
+ S CWFLG=0,CWTO="To: ",CWTO1="    ",CWRHDR=""
+"RTN","CWMAIL2",101,0)
+ S LP="" F  S LP=$O(CWXMY(LP)) Q:LP=""  D
+"RTN","CWMAIL2",102,0)
+ . D TOWHOM^XMXAPI(XMDUZ,,"S",LP,.CWINSTR,.CWFULL)
+"RTN","CWMAIL2",103,0)
+ . I $L($G(CWFULL)) D
+"RTN","CWMAIL2",104,0)
+ . . I CWFULL'["@" D
+"RTN","CWMAIL2",105,0)
+ . . .S CWFULL=$TR(CWFULL,", .","._+")  ; set internet naming convention
+"RTN","CWMAIL2",106,0)
+ . . .S CWFULL=CWFULL_"@"_$G(^XMB("NETNAME"))
+"RTN","CWMAIL2",107,0)
+ . . I ($L(CWRHDR)+$L(CWFULL)+1)<140 D  ;line not full
+"RTN","CWMAIL2",108,0)
+ . . . S CWRHDR=CWRHDR_$S($L(CWRHDR)>0&($E(CWRHDR,$L(CWRHDR))'=","):",",1:"")_CWFULL
+"RTN","CWMAIL2",109,0)
+ . . E  D
+"RTN","CWMAIL2",110,0)
+ . . . S ^TMP($J,"CWNETH",CWCTN)=CWRHDR
+"RTN","CWMAIL2",111,0)
+ . . . S CWCTN=CWCTN+.001
+"RTN","CWMAIL2",112,0)
+ . . . S CWRHDR=CWFULL
+"RTN","CWMAIL2",113,0)
+ I $L(CWRHDR) S ^TMP($J,"CWNETH",CWCTN)=CWRHDR  ;set remaining data
+"RTN","CWMAIL2",114,0)
+ S LP=0 F  S LP=$O(^TMP($J,"CWNETH",LP)) Q:LP<.001  D
+"RTN","CWMAIL2",115,0)
+ . S ^XMB(3.9,CWXMZ,2,LP,0)=$S(CWFLG:"   "_^TMP($J,"CWNETH",LP),1:"To: "_^TMP($J,"CWNETH",LP))
+"RTN","CWMAIL2",116,0)
+ K ^TMP($J,"CWNETH")  ;KILL TEMP GLOBAL BUFFER
+"RTN","CWMAIL2",117,0)
+ Q
+"RTN","CWMAIL3")
+0^6^B5057438
+"RTN","CWMAIL3",1,0)
+CWMAIL3 ;INDPLS/PLS- DELPHI VISTA MAIL SERVER, CON'T ;21-Jun-2005 06:34;CLC
+"RTN","CWMAIL3",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAIL3",3,0)
+ ;Modified to fix Cache problem related to double close
+"RTN","CWMAIL3",4,0)
+ Q   ;ROUTINE CAN'T BE CALLED DIRECTLY
+"RTN","CWMAIL3",5,0)
+ ;
+"RTN","CWMAIL3",6,0)
+GRPINFO(CWDAT,CWPARAM) ;Mail Group Information
+"RTN","CWMAIL3",7,0)
+ ;CWPARAM = Mail Group IEN
+"RTN","CWMAIL3",8,0)
+ N CWFILE,IO,IOP,POP,DIC,DA,X,Y,CWFLG,CWNXT,IOSL,CWDEFDIR,CWDATFIL
+"RTN","CWMAIL3",9,0)
+ S CWFILE="CWMAILGRP"_$J_".TXT"
+"RTN","CWMAIL3",10,0)
+ S CWDEFDIR=$$PWD^%ZISH
+"RTN","CWMAIL3",11,0)
+ D OPEN^%ZISH("CWDATFIL",CWDEFDIR,CWFILE,"W")
+"RTN","CWMAIL3",12,0)
+ G:POP GRPINFOE
+"RTN","CWMAIL3",13,0)
+ U IO S IOSL=99999
+"RTN","CWMAIL3",14,0)
+ D DISPLAY^XMHIG(+CWPARAM)
+"RTN","CWMAIL3",15,0)
+ D CLOSE^%ZISH("CWDATFIL")
+"RTN","CWMAIL3",16,0)
+ I $$FTG^%ZISH(CWDEFDIR,CWFILE,$NA(CWDAT(2)),1) D
+"RTN","CWMAIL3",17,0)
+ .S CWFILE(CWFILE)=""
+"RTN","CWMAIL3",18,0)
+ .S X=$$DEL^%ZISH(CWDEFDIR,$NA(CWFILE))
+"RTN","CWMAIL3",19,0)
+ .I $O(CWDAT(0))>0 D
+"RTN","CWMAIL3",20,0)
+ ..S CWFLG=0,CWNXT=1
+"RTN","CWMAIL3",21,0)
+ ..F  S CWNXT=$O(CWDAT(CWNXT)) Q:CWNXT<1!(CWFLG)  D
+"RTN","CWMAIL3",22,0)
+ ...I '$L(CWDAT(CWNXT)),'CWFLG K CWDAT(CWNXT)
+"RTN","CWMAIL3",23,0)
+ ...E  I $A(CWDAT(CWNXT))=12 K CWDAT(CWNXT)
+"RTN","CWMAIL3",24,0)
+ ...E  S CWDAT(CWNXT)=$$CTRL^XMXUTIL1(CWDAT(CWNXT)),CWFLG=1  ;remove control characters
+"RTN","CWMAIL3",25,0)
+ .S CWDAT(-9900)=$O(CWDAT(9999999),-1)+1
+"RTN","CWMAIL3",26,0)
+ E  S CWDAT(-9900)=2
+"RTN","CWMAIL3",27,0)
+GRPINFOE ;D CLOSE^%ZISH("CWDATFIL")
+"RTN","CWMAIL3",28,0)
+ Q $O(CWDAT(1))
+"RTN","CWMAIL3",29,0)
+USRINFO(CWDAT,CWPARAM) ;Mail User Information
+"RTN","CWMAIL3",30,0)
+ ;CWPARAM = Mail User IEN
+"RTN","CWMAIL3",31,0)
+ N CWFILE,%ZIS,IOP,POP,IO,Y,X,CWDEFDIR,CWDATFIL,IOSL
+"RTN","CWMAIL3",32,0)
+ N CWFLG,CWNXT
+"RTN","CWMAIL3",33,0)
+ S CWFILE="CWMAILUSR"_$J_".TXT"
+"RTN","CWMAIL3",34,0)
+ S CWDEFDIR=$$PWD^%ZISH
+"RTN","CWMAIL3",35,0)
+ D OPEN^%ZISH("CWDATFIL",CWDEFDIR,CWFILE,"W")
+"RTN","CWMAIL3",36,0)
+ G:POP USRINFOE
+"RTN","CWMAIL3",37,0)
+ U IO S IOSL=99999
+"RTN","CWMAIL3",38,0)
+ D DISPUSER^XMHIU(+CWPARAM)
+"RTN","CWMAIL3",39,0)
+ D CLOSE^%ZISH("CWDATFIL")
+"RTN","CWMAIL3",40,0)
+FLG I $$FTG^%ZISH(CWDEFDIR,CWFILE,$NA(CWDAT(2)),1) D
+"RTN","CWMAIL3",41,0)
+ .S CWFILE(CWFILE)=""
+"RTN","CWMAIL3",42,0)
+ .S X=$$DEL^%ZISH(CWDEFDIR,$NA(CWFILE))
+"RTN","CWMAIL3",43,0)
+ .I $O(CWDAT(0))>0 D
+"RTN","CWMAIL3",44,0)
+ ..S CWFLG=0,CWNXT=1
+"RTN","CWMAIL3",45,0)
+ ..F  S CWNXT=$O(CWDAT(CWNXT)) Q:CWNXT<1!(CWFLG)  D
+"RTN","CWMAIL3",46,0)
+ ...I '$L(CWDAT(CWNXT)),'CWFLG K CWDAT(CWNXT)
+"RTN","CWMAIL3",47,0)
+ ...E  I $A(CWDAT(CWNXT))=12 K CWDAT(CWNXT)
+"RTN","CWMAIL3",48,0)
+ ...E  S CWDAT(CWNXT)=$$CTRL^XMXUTIL1(CWDAT(CWNXT)),CWFLG=1   ;remove control characters
+"RTN","CWMAIL3",49,0)
+ .S CWDAT(-9900)=$O(CWDAT(9999999),-1)+1
+"RTN","CWMAIL3",50,0)
+ E  S CWDAT(-9900)=2
+"RTN","CWMAIL3",51,0)
+USRINFOE ;D CLOSE^%ZISH("CWDATFIL")
+"RTN","CWMAIL3",52,0)
+ Q $O(CWDAT(1))
+"RTN","CWMAIL4")
+0^7^B1346202
+"RTN","CWMAIL4",1,0)
+CWMAIL4 ;INDPLS/PLS- DELPHI VISTA MAIL SERVER, CON'T ;21-Jun-2005 06:34;CLC
+"RTN","CWMAIL4",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAIL4",3,0)
+ Q   ;ROUTINE CAN'T BE CALLED DIRECTLY
+"RTN","CWMAIL4",4,0)
+ ;
+"RTN","CWMAIL4",5,0)
+GETMSGL(DAT,CWDUZ,CWBSK,CWSRC) ;
+"RTN","CWMAIL4",6,0)
+ ;API NOT CURRENTLY USED
+"RTN","CWMAIL4",7,0)
+ ;INPUT
+"RTN","CWMAIL4",8,0)
+ ;  DAT : RETURN ARRAY
+"RTN","CWMAIL4",9,0)
+ ;CWDUZ : USER
+"RTN","CWMAIL4",10,0)
+ ;CWBSK : BASKET IEN OR NAME
+"RTN","CWMAIL4",11,0)
+ ;CWSRC : LOOKUP TYPE 0(IEN); 1("C" X-REF) ; DEFAULT TO ZERO
+"RTN","CWMAIL4",12,0)
+ Q:'CWDUZ 0
+"RTN","CWMAIL4",13,0)
+ I +CWBSK'=CWBSK D
+"RTN","CWMAIL4",14,0)
+ . S CWBSK=+$O(^XMB(3.7,CWDUZ,2,"B",CWBSK,0))
+"RTN","CWMAIL4",15,0)
+ S CWSRC=+$G(CWSRC,0)
+"RTN","CWMAIL4",16,0)
+ N CWMSG,CWSEQ
+"RTN","CWMAIL4",17,0)
+ S (CWSEQ,CWMSG)=0
+"RTN","CWMAIL4",18,0)
+ I 'CWSRC D
+"RTN","CWMAIL4",19,0)
+ . F  S CWMSG=$O(^XMB(3.7,CWDUZ,2,CWBSK,1,CWMSG)) Q:CWMSG<1  S DAT(CWMSG)=""
+"RTN","CWMAIL4",20,0)
+ELSE E  D
+"RTN","CWMAIL4",21,0)
+ . F  S CWSEQ=$O(^XMB(3.7,CWDUZ,2,CWBSK,1,"C",CWSEQ)) Q:CWSEQ<1  D
+"RTN","CWMAIL4",22,0)
+ . . F  S CWMSG=$O(^XMB(3.7,CWDUZ,2,CWBSK,1,"C",CWSEQ,CWMSG)) Q:CWMSG<1  D
+"RTN","CWMAIL4",23,0)
+ . . . S DAT(CWMSG)=""
+"RTN","CWMAIL4",24,0)
+ Q $O(DAT(0))>0
+"RTN","CWMAIL4",25,0)
+ ;
+"RTN","CWMAIL4",26,0)
+FMDTE(CWDT,CWPRM) ;API TO RETURN A FORMATTED DATE
+"RTN","CWMAIL4",27,0)
+ ;replaces '@' with " " between date and time
+"RTN","CWMAIL4",28,0)
+ Q $TR($$FMTE^XLFDT(CWDT,CWPRM),"@"," ")
+"RTN","CWMAILA")
+0^8^B23710063
+"RTN","CWMAILA",1,0)
+CWMAILA ;INDPLS/PLS- DELPHI VISTA MAIL SERVER CONT'D ;21-Jun-2005 06:34;CLC
+"RTN","CWMAILA",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAILA",3,0)
+ ;MODIFIED FOR XM*7.1*50
+"RTN","CWMAILA",4,0)
+ Q   ;ROUTINE CAN'T BE CALLED DIRECTLY
+"RTN","CWMAILA",5,0)
+%READ(CWDATA,CWINPUT) ;
+"RTN","CWMAILA",6,0)
+ ;CWINPUT FORMAT - DELIMITER ';'
+"RTN","CWMAILA",7,0)
+ ;       1st  - IEN of message
+"RTN","CWMAILA",8,0)
+ ;       4th  - New message (value >0 indicates new messages only)
+"RTN","CWMAILA",9,0)
+ K CWDATA
+"RTN","CWMAILA",10,0)
+ N CWMSGN,CWNMFLG
+"RTN","CWMAILA",11,0)
+ S CWMSGN=$P(CWINPUT,";")
+"RTN","CWMAILA",12,0)
+ S CWNMFLG=+$P(CWINPUT,";",4)
+"RTN","CWMAILA",13,0)
+ D:CWMSGN PROCMS^CWMAIL0(.CWDATA,CWMSGN,CWNMFLG)
+"RTN","CWMAILA",14,0)
+ Q
+"RTN","CWMAILA",15,0)
+%LIST(CWDATA,CWINPUT) ;
+"RTN","CWMAILA",16,0)
+ ;CWINPUT - MAIL TYPE OR MAILBOX NUMBER - DELIMITER ';'
+"RTN","CWMAILA",17,0)
+ ;     2nd - IEN of MailBasket or non-numeric for new mail
+"RTN","CWMAILA",18,0)
+ ;CWARY format:  piece   value
+"RTN","CWMAILA",19,0)
+ ;                 1     message basket
+"RTN","CWMAILA",20,0)
+ ;                 2     message ien
+"RTN","CWMAILA",21,0)
+ ;                 3     message subject
+"RTN","CWMAILA",22,0)
+ ;                 4     message date sent
+"RTN","CWMAILA",23,0)
+ ;                 5     not used
+"RTN","CWMAILA",24,0)
+ ;                 6     message type
+"RTN","CWMAILA",25,0)
+ ;                 7     confirmation flag
+"RTN","CWMAILA",26,0)
+ ;                 8     closed flag
+"RTN","CWMAILA",27,0)
+ ;                 9     info flag
+"RTN","CWMAILA",28,0)
+ ;                10     confidential flag
+"RTN","CWMAILA",29,0)
+ ;                11     sender ien
+"RTN","CWMAILA",30,0)
+ ;                12     broadcast flag
+"RTN","CWMAILA",31,0)
+ ;                13     sender name
+"RTN","CWMAILA",32,0)
+ ;                14     total # of recipients
+"RTN","CWMAILA",33,0)
+ ;                15     total # of replies
+"RTN","CWMAILA",34,0)
+ ;                16     priority flag
+"RTN","CWMAILA",35,0)
+ ;                17     last response read
+"RTN","CWMAILA",36,0)
+ ;                18     message basket sequence number
+"RTN","CWMAILA",37,0)
+ ;                19     new message flag
+"RTN","CWMAILA",38,0)
+ ;                20     answer message flag
+"RTN","CWMAILA",39,0)
+ ;
+"RTN","CWMAILA",40,0)
+ S CWDATA(1)="0^AN ERROR HAS OCCURRED"
+"RTN","CWMAILA",41,0)
+ N CWVAL,CWMSG,CWMSGSUB,CWMSGDT,CWDCNT,CWMAIB,CWMSGBX,CWMSGLP
+"RTN","CWMAILA",42,0)
+ N CWARY
+"RTN","CWMAILA",43,0)
+ S CWVAL=$P(CWINPUT,";",2)
+"RTN","CWMAILA",44,0)
+ S CWMSG=0,CWDCNT=2,CWMSGLP=0
+"RTN","CWMAILA",45,0)
+ S CWMAIB=CWVAL
+"RTN","CWMAILA",46,0)
+ ;CALL API TO RETRIEVE MESSAGES
+"RTN","CWMAILA",47,0)
+ I CWVAL=+CWVAL D
+"RTN","CWMAILA",48,0)
+ . D LISTMSGS^XMXAPIB(XMDUZ,+CWMAIB,"BSKT;SUBJ;DATE;SEQN;NEW","",3500)  ; data put in ^TMP("XMLIST",$J
+"RTN","CWMAILA",49,0)
+ . Q:'+$P($G(^TMP("XMLIST",$J,0)),U,1)  ;NO DATA FOUND
+"RTN","CWMAILA",50,0)
+ . D BLDLST^CWMAILF(.CWDATA,$NA(^TMP("XMLIST",$J)),.CWDCNT)
+"RTN","CWMAILA",51,0)
+ E  D  ;PROCESS NEW MESSAGE REQUEST
+"RTN","CWMAILA",52,0)
+ . D LISTMSGS^XMXAPIB(XMDUZ,"*","BSKT;SUBJ;DATE;NEW","N",3500)   ;SEQN;NEW","N")
+"RTN","CWMAILA",53,0)
+ . Q:'+$P($G(^TMP("XMLIST",$J,0)),U,1)  ;NO DATA FOUND
+"RTN","CWMAILA",54,0)
+ . D BLDLST^CWMAILF(.CWDATA,$NA(^TMP("XMLIST",$J)),.CWDCNT)
+"RTN","CWMAILA",55,0)
+ I $O(CWDATA(1)) S CWDATA(1)="1^^DATA HAS BEEN FOUND"
+"RTN","CWMAILA",56,0)
+ E  S CWDATA(1)=$S(+CWVAL:"1^^No Messages Found in Specified Mail Box",1:"1^^"_"You have no NEW Messages")
+"RTN","CWMAILA",57,0)
+ S $P(CWDATA(1),U,2)=CWDCNT-2
+"RTN","CWMAILA",58,0)
+ Q
+"RTN","CWMAILA",59,0)
+ ;
+"RTN","CWMAILA",60,0)
+%DELETE(CWDATA,CWINPUT) ;
+"RTN","CWMAILA",61,0)
+ ;CWINPUT - DELIMITER ';'
+"RTN","CWMAILA",62,0)
+ ;   1st  - IEN of message
+"RTN","CWMAILA",63,0)
+ ;   2nd  - IEN of mail basket
+"RTN","CWMAILA",64,0)
+ N XMZ,XMDUZ,XMK,XMKZA,XMMSG
+"RTN","CWMAILA",65,0)
+ S XMZ=$P(CWINPUT,";")
+"RTN","CWMAILA",66,0)
+ S XMDUZ=DUZ
+"RTN","CWMAILA",67,0)
+ S XMK=$P(CWINPUT,";",2)
+"RTN","CWMAILA",68,0)
+ S XMKZA(XMZ)=""
+"RTN","CWMAILA",69,0)
+ D DELMSG^XMXAPI(XMDUZ,"",.XMKZA,.XMMSG)
+"RTN","CWMAILA",70,0)
+ I +$G(XMMSG) D
+"RTN","CWMAILA",71,0)
+ . S CWDATA(1)="1^0^Message Deleted"
+"RTN","CWMAILA",72,0)
+ E  S CWDATA(1)="0^0^Unable to delete message"
+"RTN","CWMAILA",73,0)
+ Q
+"RTN","CWMAILA",74,0)
+%SAVE(CWDATA,CWINPUT) ;
+"RTN","CWMAILA",75,0)
+ ;CWINPUT - DELIMITER ';'
+"RTN","CWMAILA",76,0)
+ ;   1st  - IEN of message
+"RTN","CWMAILA",77,0)
+ ;   2nd  - IEN of mail basket
+"RTN","CWMAILA",78,0)
+ ;   3rd  - IEN of new mail basket
+"RTN","CWMAILA",79,0)
+ N XMZ,XMK,XMKM,XMMSG,XMKZA
+"RTN","CWMAILA",80,0)
+ S XMZ=$P(CWINPUT,";"),XMK=$P(CWINPUT,";",2)
+"RTN","CWMAILA",81,0)
+ S XMKZA(XMZ)=""
+"RTN","CWMAILA",82,0)
+ S XMKM=$P(CWINPUT,";",3)
+"RTN","CWMAILA",83,0)
+ D MOVEMSG^XMXAPI(XMDUZ,"",.XMKZA,XMKM,.XMMSG)
+"RTN","CWMAILA",84,0)
+ S CWDATA(1)=+$G(XMMSG)  ;Return Status
+"RTN","CWMAILA",85,0)
+ Q
+"RTN","CWMAILA",86,0)
+%MAKNEW(CWDATA,CWINPUT) ;
+"RTN","CWMAILA",87,0)
+ ;CWINPUT - DELIMITER ';'
+"RTN","CWMAILA",88,0)
+ ;   1st  - IEN of message
+"RTN","CWMAILA",89,0)
+ ;   2nd  - IEN of mail basket
+"RTN","CWMAILA",90,0)
+ N XMZ,XMK,XMKZA,XMMSG
+"RTN","CWMAILA",91,0)
+ S CWDATA(1)=0
+"RTN","CWMAILA",92,0)
+ S XMZ=$P(CWINPUT,";")
+"RTN","CWMAILA",93,0)
+ S XMK=+$P(CWINPUT,";",2)
+"RTN","CWMAILA",94,0)
+ D MAKENEW^XMXUTIL(XMDUZ,XMK,XMZ,1)
+"RTN","CWMAILA",95,0)
+ I XMK<.6 D  ;MUST MOVE MESSAGE FROM WASTE BASKET TO IN BASKET
+"RTN","CWMAILA",96,0)
+ . S XMKZA(XMZ)=""
+"RTN","CWMAILA",97,0)
+ . D MOVEMSG^XMXAPI(XMDUZ,"",.XMKZA,1,.XMMSG)
+"RTN","CWMAILA",98,0)
+ S CWDATA(1)="1^1"   ;FORCE TO SUCCESS
+"RTN","CWMAILA",99,0)
+ Q
+"RTN","CWMAILA",100,0)
+%NEWBSK(CWDATA,CWINPUT) ;CREATE A NEW MAIL BASKET
+"RTN","CWMAILA",101,0)
+ ;CWINPUT - DELIMITER ';'
+"RTN","CWMAILA",102,0)
+ ;   1st Piece  - New basket name
+"RTN","CWMAILA",103,0)
+ N CWBASKET,CWBSKN,CWMSG
+"RTN","CWMAILA",104,0)
+ S CWBASKET=$$UP^XLFSTR($P(CWINPUT,";"))  ;FORCE TO UPPER CASE
+"RTN","CWMAILA",105,0)
+ D CRE8BSKT^XMXAPIB(XMDUZ,CWBASKET,.CWBSKN)
+"RTN","CWMAILA",106,0)
+ I +$G(CWBSKN)>0 D
+"RTN","CWMAILA",107,0)
+ . D QBSKT^XMXAPIB(XMDUZ,+CWBSKN,.CWMSG)
+"RTN","CWMAILA",108,0)
+ . S CWDATA(1)="1"_U_CWBSKN_U_$P($G(CWMSG),U,2)
+"RTN","CWMAILA",109,0)
+ E  S CWDATA(1)=0_U_"Error-unable to create basket."
+"RTN","CWMAILA",110,0)
+ Q
+"RTN","CWMAILA",111,0)
+%RESEQ(CWDATA,CWINPUT) ;RESEQUENCE A VISTA MAIL BASKET
+"RTN","CWMAILA",112,0)
+ ;CWINPUT - DELIMITER ';'
+"RTN","CWMAILA",113,0)
+ ;   2nd  - IEN of mail basket
+"RTN","CWMAILA",114,0)
+ N CWBASKET,CWDATT
+"RTN","CWMAILA",115,0)
+ S CWBASKET=$P(CWINPUT,";",2)
+"RTN","CWMAILA",116,0)
+ G:'CWBASKET RESEQE
+"RTN","CWMAILA",117,0)
+ D RSEQBSKT^XMXAPIB(XMDUZ,CWBASKET,.CWDATT)
+"RTN","CWMAILA",118,0)
+ I $L(CWDATT) S CWDATA(1)="1^1"
+"RTN","CWMAILA",119,0)
+ E  S CWDATA(1)="0^0^Error-unable to resequence messages."
+"RTN","CWMAILA",120,0)
+RESEQE Q
+"RTN","CWMAILA",121,0)
+ ;
+"RTN","CWMAILA",122,0)
+%MSGSRC(CWDATA,CWINPUT,CWTEXT) ;MESSAGE SEARCH
+"RTN","CWMAILA",123,0)
+ ;INPUT - CWINPUT AND CWTEXT ARRAY HOLD CRITERIA
+"RTN","CWMAILA",124,0)
+ ;OUTPUT - REFER TO %LIST
+"RTN","CWMAILA",125,0)
+ S CWDATA(1)="0^AN ERROR HAS OCCURRED"
+"RTN","CWMAILA",126,0)
+ N CWVAL,CWMSG,CWMSGSUB,CWMSGDT,CWDCNT,CWMAIB,CWMSGBX,CWMSGLP
+"RTN","CWMAILA",127,0)
+ N CWARY,CWFLAGS
+"RTN","CWMAILA",128,0)
+ S CWFLAGS=$P(CWINPUT,";")  ;Processing Flags
+"RTN","CWMAILA",129,0)
+ S CWMAIB=$P(CWINPUT,";",2)  ;MailBasket
+"RTN","CWMAILA",130,0)
+ S CWMSG=0,CWDCNT=2,CWMSGLP=0
+"RTN","CWMAILA",131,0)
+ S CWMAIB=$S($L(CWMAIB):CWMAIB,1:"*")
+"RTN","CWMAILA",132,0)
+ ;Convert External dates to FM Dates
+"RTN","CWMAILA",133,0)
+ I $G(CWTEXT("FDATE")) D
+"RTN","CWMAILA",134,0)
+ . S CWTEXT("FDATE")=$$CONVERT^XMXUTIL1(CWTEXT("FDATE"))
+"RTN","CWMAILA",135,0)
+ I $G(CWTEXT("TDATE")) D
+"RTN","CWMAILA",136,0)
+ . S CWTEXT("TDATE")=$$CONVERT^XMXUTIL1(CWTEXT("TDATE"))
+"RTN","CWMAILA",137,0)
+ ;CALL API TO RETRIEVE MESSAGES
+"RTN","CWMAILA",138,0)
+ D LISTMSGS^XMXAPIB(XMDUZ,CWMAIB,"BSKT;SUBJ;DATE;NEW",CWFLAGS,,,.CWTEXT)  ; data put in ^TMP("XMLIST",$J
+"RTN","CWMAILA",139,0)
+ I +$P($G(^TMP("XMLIST",$J,0)),U,1) D   ;
+"RTN","CWMAILA",140,0)
+ . D BLDLST^CWMAILF(.CWDATA,$NA(^TMP("XMLIST",$J)),.CWDCNT)
+"RTN","CWMAILA",141,0)
+ I $O(CWDATA(1)) S CWDATA(1)="1^^DATA HAS BEEN FOUND"
+"RTN","CWMAILA",142,0)
+ E  S CWDATA(1)="1^^No Messages Found In Search"
+"RTN","CWMAILA",143,0)
+ S $P(CWDATA(1),U,2)=CWDCNT-2
+"RTN","CWMAILA",144,0)
+MSGSRCE Q
+"RTN","CWMAILB")
+0^9^B22359091
+"RTN","CWMAILB",1,0)
+CWMAILB ;INDPLS/PLS- DELPHI VISTA MAIL SERVER CON'T ;21-Jun-2005 06:34;CLC
+"RTN","CWMAILB",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAILB",3,0)
+ ; modified 10/8/1999 to fix problem with reply text tab conversion
+"RTN","CWMAILB",4,0)
+%FORWARD(CWDATA,CWINPUT,CWTEXT) ;
+"RTN","CWMAILB",5,0)
+ ;Input:  1st Piece of CWINPUT holds IEN of Message
+"RTN","CWMAILB",6,0)
+ ;        CWTEXT holds recipient list
+"RTN","CWMAILB",7,0)
+ ;
+"RTN","CWMAILB",8,0)
+ N XMZ,XMY,CWLP,CWSDATA,CWSEDATA,CWTMP,CWFILE,CWIEN,CWNAM,XMINSTR,CWMSG
+"RTN","CWMAILB",9,0)
+ N XMKZA
+"RTN","CWMAILB",10,0)
+ S XMZ=$P(CWINPUT,";")
+"RTN","CWMAILB",11,0)
+ S CWDATA(1)="0^^AN ERROR HAS OCCURRED"
+"RTN","CWMAILB",12,0)
+ G:'$G(XMZ) FOREND
+"RTN","CWMAILB",13,0)
+ S CWSDATA=$G(CWTEXT(-9902),"[START DATA]"),CWSEDATA=$G(CWTEXT(-9903),"[END DATA]")
+"RTN","CWMAILB",14,0)
+ S CWLP=-1 D FNDLP(.CWLP,CWSDATA)
+"RTN","CWMAILB",15,0)
+ G:$G(CWLP)="" FOREND
+"RTN","CWMAILB",16,0)
+ F  S CWLP=$O(CWTEXT(CWLP)) Q:CWLP=""  Q:CWTEXT(CWLP)=CWSEDATA  D
+"RTN","CWMAILB",17,0)
+ .S CWTMP=$G(CWTEXT(CWLP)) Q:CWTMP=""
+"RTN","CWMAILB",18,0)
+ .S CWFILE=+$P(CWTMP,"^"),CWIEN=+$P(CWTMP,"^",2),CWNAM=$P(CWTMP,"^",3)
+"RTN","CWMAILB",19,0)
+ .I CWFILE=200 S XMY(CWIEN)=""
+"RTN","CWMAILB",20,0)
+ .E  I CWFILE=3.8 S XMY("G."_CWNAM)=""
+"RTN","CWMAILB",21,0)
+ .E  S XMY(CWNAM)=""
+"RTN","CWMAILB",22,0)
+ I $D(XMY) D
+"RTN","CWMAILB",23,0)
+ . S XMKZA(XMZ)=""
+"RTN","CWMAILB",24,0)
+ . D FWDMSG^XMXAPI(XMDUZ,"",.XMKZA,.XMY,.XMINSTR,.CWMSG)
+"RTN","CWMAILB",25,0)
+ ;RETURNS <number of messages> forwarded.
+"RTN","CWMAILB",26,0)
+ S CWDATA(1)=+CWMSG_U_U_XMZ   ;FORCE TO SUCCESS
+"RTN","CWMAILB",27,0)
+FOREND Q
+"RTN","CWMAILB",28,0)
+ ;
+"RTN","CWMAILB",29,0)
+%TERMIN(CWDATA,CWINPUT) ;TERMINATE A MESSAGE THREAD
+"RTN","CWMAILB",30,0)
+ ;Input:  1st piece = IEN of Message
+"RTN","CWMAILB",31,0)
+ ;        2nd piece = IEN of Mail Basket
+"RTN","CWMAILB",32,0)
+ ;
+"RTN","CWMAILB",33,0)
+ N XMRC,XMZ,XMK,Y,CWMSGNM,CWMSGR
+"RTN","CWMAILB",34,0)
+ S CWDATA(1)="0^^AN ERROR HAS OCCURRED"
+"RTN","CWMAILB",35,0)
+ S XMZ=$P($G(CWINPUT),";"),XMK=$P($G(CWINPUT),";",2)
+"RTN","CWMAILB",36,0)
+ S CWMSGNM(XMZ)=""
+"RTN","CWMAILB",37,0)
+ D TERMMSG^XMXAPI(XMDUZ,"",.CWMSGNM,.CWMSGR)
+"RTN","CWMAILB",38,0)
+ ;RETURNS <number of messages> terminated.
+"RTN","CWMAILB",39,0)
+ S CWDATA(1)=+CWMSGR_U_U   ;return 1 for success or 0
+"RTN","CWMAILB",40,0)
+ Q
+"RTN","CWMAILB",41,0)
+FNDLP(CWLP,X) ;FIND A CHARACTER STRING ENTRY
+"RTN","CWMAILB",42,0)
+ F  S CWLP=$O(CWTEXT(CWLP)) Q:CWLP=""  Q:CWTEXT(CWLP)=X
+"RTN","CWMAILB",43,0)
+ Q
+"RTN","CWMAILB",44,0)
+ ;
+"RTN","CWMAILB",45,0)
+INCNT(CWCNT) ;INCREMENT COUNTER
+"RTN","CWMAILB",46,0)
+ Q CWCNT+1
+"RTN","CWMAILB",47,0)
+ ;
+"RTN","CWMAILB",48,0)
+%CREATE(DATA,INPUT,TEXT) ;CREATE A NEW MESSAGE
+"RTN","CWMAILB",49,0)
+ ;BUILD RETURN CODES FOR ERROR MESSAGING
+"RTN","CWMAILB",50,0)
+ D %CREATE^CWMAIL2
+"RTN","CWMAILB",51,0)
+ Q
+"RTN","CWMAILB",52,0)
+ ;
+"RTN","CWMAILB",53,0)
+%REPLY(CWDATA,CWINPUT,CWTEXT) ; This API uses global array for text
+"RTN","CWMAILB",54,0)
+ ;INPUT -  Piece  1   : Message Number
+"RTN","CWMAILB",55,0)
+ ;         Piece  2-4 : Not Used
+"RTN","CWMAILB",56,0)
+ ;         Piece  5   : Network Reply Flag (0 = no; 1 = yes)
+"RTN","CWMAILB",57,0)
+ ;
+"RTN","CWMAILB",58,0)
+ N CWMSGN,CWRESULT,CWSDATA,CWSEDATA,CWTMP,CWNWCHK,CWDATT
+"RTN","CWMAILB",59,0)
+ N CWMSGT,XMZR,CWLP,XMINSTR
+"RTN","CWMAILB",60,0)
+ S CWMSGN=$P(CWINPUT,";")
+"RTN","CWMAILB",61,0)
+ S CWNWCHK=$P(CWINPUT,";",5)
+"RTN","CWMAILB",62,0)
+ S CWDATA(1)="0^UNDEFINED ERROR"
+"RTN","CWMAILB",63,0)
+ S CWTEXT=$NA(^TMP($J,"CWMAILLOAD"))
+"RTN","CWMAILB",64,0)
+ G:'$G(CWMSGN) REPEND
+"RTN","CWMAILB",65,0)
+ S CWSDATA=$G(@CWTEXT@(-9900),"[START DATA]"),CWSEDATA=$G(@CWTEXT@(-9901),"[END DATA]")
+"RTN","CWMAILB",66,0)
+ S CWLP=-1 D GFNDLP(.CWLP,CWSDATA)
+"RTN","CWMAILB",67,0)
+ G:$G(CWLP)="" REPEND
+"RTN","CWMAILB",68,0)
+ F  S CWLP=$O(@CWTEXT@(CWLP)) Q:CWLP=""  Q:@CWTEXT@(CWLP)=CWSEDATA  D
+"RTN","CWMAILB",69,0)
+ .S ^TMP($J,"CWMAILOUT",CWLP)=$G(@CWTEXT@(CWLP))
+"RTN","CWMAILB",70,0)
+ G:'$D(^TMP($J,"CWMAILOUT")) REPEND
+"RTN","CWMAILB",71,0)
+ S CWMSGT=$NA(^TMP($J,"CWMAILOUT"))
+"RTN","CWMAILB",72,0)
+ D CNVTAB^CWMAIL2(CWMSGT)  ;convert tabs to spaces
+"RTN","CWMAILB",73,0)
+ S XMINSTR("NET REPLY")=$S(+$G(CWNWCHK):1,1:0)
+"RTN","CWMAILB",74,0)
+ D REPLYMSG^XMXAPI(XMDUZ,"",CWMSGN,CWMSGT,.XMINSTR,.XMZR)
+"RTN","CWMAILB",75,0)
+ I +$G(XMZR)>0 S CWDATA(1)=$S(CWNWCHK:2,1:1)_"^NO ERRORS"_U_CWMSGN   ;SUCCESS
+"RTN","CWMAILB",76,0)
+ E  S CWDATA(1)="0^"_$G(CWDATA)_U_CWMSGN   ;RETURN ERROR MESSAGE
+"RTN","CWMAILB",77,0)
+REPEND K ^TMP($J,"CWMAILLOAD"),^TMP($J,"CWMAILOUT")
+"RTN","CWMAILB",78,0)
+ Q
+"RTN","CWMAILB",79,0)
+GFNDLP(CWLP,X) ;FIND A CHARACTER STRING ENTRY IN GLOBAL
+"RTN","CWMAILB",80,0)
+ F  S CWLP=$O(@CWTEXT@(CWLP)) Q:CWLP=""  Q:@CWTEXT@(CWLP)=X
+"RTN","CWMAILB",81,0)
+ Q
+"RTN","CWMAILB",82,0)
+ ;
+"RTN","CWMAILB",83,0)
+%ANSWER(CWDATA,CWINPUT,CWTEXT) ; This API uses global array for text to answer a message
+"RTN","CWMAILB",84,0)
+ ;INPUT -  CWINPUT : Piece  1   : Message Number
+"RTN","CWMAILB",85,0)
+ ;                   Piece  2   : Not Used
+"RTN","CWMAILB",86,0)
+ ;                   Piece  3   : Message Attributes
+"RTN","CWMAILB",87,0)
+ ;                   Pieces 4-5 : Not Used
+"RTN","CWMAILB",88,0)
+ ;         CWTEXT :  Holds list of additional recipients
+"RTN","CWMAILB",89,0)
+ ;
+"RTN","CWMAILB",90,0)
+ N CWSDATA,CWSEDATA,CWLP,CWTXTARY,DA,DIE,DR,Y,XMTEXT
+"RTN","CWMAILB",91,0)
+ N CWMSGABS,CWTMP,CWFILE,CWIEN,CWNAM
+"RTN","CWMAILB",92,0)
+ N XMBODY,CWMSGN,XMY,XMZ,XMINSTR
+"RTN","CWMAILB",93,0)
+ S CWMSGN=$P(CWINPUT,";")  ;MESSAGE NUMBER
+"RTN","CWMAILB",94,0)
+ I $G(CWMSGN)<1 S CWDATA(1)="0^98- No message number given" G ANSEND
+"RTN","CWMAILB",95,0)
+ S CWDATA(1)="0^99- UNDEFINED ERROR"
+"RTN","CWMAILB",96,0)
+ ;TEXT ARRAY CONTAINS RECIPIENT LIST AND MESSAGE TEXT LOADED FROM BMSGD call
+"RTN","CWMAILB",97,0)
+ ;BUILD XMY ARRAY
+"RTN","CWMAILB",98,0)
+ S CWTEXT=$NA(^TMP($J,"CWMAILLOAD"))
+"RTN","CWMAILB",99,0)
+ S CWSDATA=$G(@CWTEXT@(-9902),"[START XMY]"),CWSEDATA=$G(@CWTEXT@(-9903),"[END XMY]")
+"RTN","CWMAILB",100,0)
+ S CWLP=-1 D GFNDLP^CWMAILB(.CWLP,CWSDATA)
+"RTN","CWMAILB",101,0)
+ ;RETRIEVE RECIPIENTS
+"RTN","CWMAILB",102,0)
+ I $G(CWLP)'="" D
+"RTN","CWMAILB",103,0)
+ . F  S CWLP=$O(@CWTEXT@(CWLP)) Q:CWLP=""  Q:@CWTEXT@(CWLP)=CWSEDATA  D
+"RTN","CWMAILB",104,0)
+ . . S CWTMP=$G(@CWTEXT@(CWLP)) Q:CWTMP=""
+"RTN","CWMAILB",105,0)
+ . . S CWFILE=+$P(CWTMP,"^"),CWIEN=+$P(CWTMP,"^",2),CWNAM=$P(CWTMP,"^",3)
+"RTN","CWMAILB",106,0)
+ . . I CWFILE=200 S XMY(CWIEN)=""
+"RTN","CWMAILB",107,0)
+ . . E  I CWFILE=3.8 S XMY("G."_CWNAM)=""
+"RTN","CWMAILB",108,0)
+ . . E  S XMY(CWNAM)=""  ;treat address as internet address
+"RTN","CWMAILB",109,0)
+ ;BUILD MESSAGE @TEXT@ ARRAY
+"RTN","CWMAILB",110,0)
+ S CWSDATA=$G(@CWTEXT@(-9900),"[START DATA]"),CWSEDATA=$G(@CWTEXT@(-9901),"[END DATA]")
+"RTN","CWMAILB",111,0)
+ S CWLP=-1 D GFNDLP^CWMAILB(.CWLP,CWSDATA)
+"RTN","CWMAILB",112,0)
+ I $G(CWLP)="" S CWDATA(1)="0^3- NO MESSAGE TEXT" G ANSEND
+"RTN","CWMAILB",113,0)
+ F  S CWLP=$O(@CWTEXT@(CWLP)) Q:CWLP=""  Q:@CWTEXT@(CWLP)=CWSEDATA  D
+"RTN","CWMAILB",114,0)
+ .S ^TMP($J,"CWMAILOUT",CWLP)=$G(@CWTEXT@(CWLP))
+"RTN","CWMAILB",115,0)
+ ;I '$D(^TMP($J,"CWMAILOUT")) S CWDATA(1)="0^3- NO MESSAGE TEXT" G ANSEND   ;NO MESSAGE @CWTEXT@
+"RTN","CWMAILB",116,0)
+ ;I '$L($P($G(CWINPUT),";")) S CWDATA(1)="0^4- MESSAGE SUBJECT NOT GIVEN" G ANSEND
+"RTN","CWMAILB",117,0)
+ ;E  S XMSUBJ=$P($G(CWINPUT),";")
+"RTN","CWMAILB",118,0)
+ ;PROCESS MESSAGE
+"RTN","CWMAILB",119,0)
+ S XMBODY=$NA(^TMP($J,"CWMAILOUT"))
+"RTN","CWMAILB",120,0)
+ S XMINSTR("FLAGS")=$P(CWINPUT,";",3)  ;GET MESSAGE ATTRIBUTES
+"RTN","CWMAILB",121,0)
+ D ANSRMSG^XMXAPI(XMDUZ,"",CWMSGN,"",XMBODY,.XMY,.XMINSTR,.XMZ)
+"RTN","CWMAILB",122,0)
+ I $G(XMZ)<1 S CWDATA(1)="0^5- MESSAGE ANSWER FAILED" G ANSEND
+"RTN","CWMAILB",123,0)
+ I +$G(XMZ)>0 S CWDATA(1)="1^^"_$G(XMZ)
+"RTN","CWMAILB",124,0)
+ANSEND K ^TMP($J,"CWMAILOUT"),^TMP($J,"CWMAILLOAD")
+"RTN","CWMAILB",125,0)
+ Q
+"RTN","CWMAILC")
+0^10^B12646738
+"RTN","CWMAILC",1,0)
+CWMAILC ;INDPLS/PLS- DELPHI VISTA MAIL SERVER CONT'D ;21-Jun-2005 06:34;CLC
+"RTN","CWMAILC",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAILC",3,0)
+ ;MODIFIED FOR XM*7.1*50
+"RTN","CWMAILC",4,0)
+ Q   ;ROUTINE CAN'T BE CALLED DIRECTLY
+"RTN","CWMAILC",5,0)
+ ;
+"RTN","CWMAILC",6,0)
+%LATER(CWDATA,CWINPUT) ;LATER A MESSAGE
+"RTN","CWMAILC",7,0)
+ ;CWINPUT - HOLDS MESSAGE NUMBER AND LATER DATE/TIME - DELIMITER ';'
+"RTN","CWMAILC",8,0)
+ ;    1st - IEN of message
+"RTN","CWMAILC",9,0)
+ ;    2nd - Later date
+"RTN","CWMAILC",10,0)
+ N XMZ,XMDUZ,XMA
+"RTN","CWMAILC",11,0)
+ S CWDATA(1)="0^^AN ERROR HAS OCCURRED"
+"RTN","CWMAILC",12,0)
+ S XMZ=$P(CWINPUT,";")
+"RTN","CWMAILC",13,0)
+ S XMDUZ=DUZ
+"RTN","CWMAILC",14,0)
+ S XMA=$P(CWINPUT,";",2)
+"RTN","CWMAILC",15,0)
+ G:'XMZ!('$G(XMA)) LATERE
+"RTN","CWMAILC",16,0)
+ I $$LATER^CWMAIL1(XMZ,XMA) D
+"RTN","CWMAILC",17,0)
+ .S CWDATA(1)="1^1^Message has been latered"
+"RTN","CWMAILC",18,0)
+ E  S CWDATA(1)="0^0^Unable to Later Message Number: "_XMZ
+"RTN","CWMAILC",19,0)
+LATERE Q
+"RTN","CWMAILC",20,0)
+ ;
+"RTN","CWMAILC",21,0)
+%MBOX(CWDATA,CWINPUT) ;RETRIEVE MAILBOXES
+"RTN","CWMAILC",22,0)
+ ;CWINPUT NOT USED
+"RTN","CWMAILC",23,0)
+ ;VARIABLES :    CWNMSG = NEW MESSAGES
+"RTN","CWMAILC",24,0)
+ ;               CWTMSG = TOTAL MESSAGE COUNT
+"RTN","CWMAILC",25,0)
+ K ^TMP($J,"CWMBSKT")
+"RTN","CWMAILC",26,0)
+ D LISTBSKT^XMXAPIB(XMDUZ,,,,,"^TMP($J,""CWMBSKT"")")
+"RTN","CWMAILC",27,0)
+ N CWLP,CWLP1,CWCNT,CWNMSG,CWTMSG,CWFPES,CWHSN,CWBNAME,CWBIEN
+"RTN","CWMAILC",28,0)
+ S CWDATA(1)="0^^AN ERROR HAS OCCURRED",CWCNT=2
+"RTN","CWMAILC",29,0)
+ S CWLP=0 F  S CWLP=$O(^TMP($J,"CWMBSKT","XMLIST",CWLP)) Q:CWLP=""  D
+"RTN","CWMAILC",30,0)
+ . S CWBIEN=+$G(^TMP($J,"CWMBSKT","XMLIST",CWLP))
+"RTN","CWMAILC",31,0)
+ . I CWBIEN D
+"RTN","CWMAILC",32,0)
+ . . S CWDATA(CWCNT)=$G(^TMP($J,"CWMBSKT","XMLIST",CWLP))
+"RTN","CWMAILC",33,0)
+ . . S CWCNT=CWCNT+1
+"RTN","CWMAILC",34,0)
+ I $O(CWDATA(1)) S CWDATA(1)="1^^DATA HAS BEEN FOUND"
+"RTN","CWMAILC",35,0)
+ E  S CWDATA(1)="1^^No Mail Boxes could be found"
+"RTN","CWMAILC",36,0)
+ S $P(CWDATA(1),U,2)=CWCNT-2
+"RTN","CWMAILC",37,0)
+MBOXE K ^TMP($J,"CWMBSKT")
+"RTN","CWMAILC",38,0)
+ Q
+"RTN","CWMAILC",39,0)
+%PMBOX(CWDATA,CWINPUT) ;PURGE ENTIRE MAIL BOX
+"RTN","CWMAILC",40,0)
+ ;CWINPUT = MAIL BOX IEN
+"RTN","CWMAILC",41,0)
+ N CWLP,XMZ,XMK,CWX,CWY,XMKZA,XMMSG,CWCNT
+"RTN","CWMAILC",42,0)
+ S XMK=$P(CWINPUT,";",2)
+"RTN","CWMAILC",43,0)
+ G PMBOXE:'XMK
+"RTN","CWMAILC",44,0)
+ S CWDATA(1)="0^^AN ERROR HAS OCCURRED",CWCNT=2
+"RTN","CWMAILC",45,0)
+ ;delete basket regardless of content
+"RTN","CWMAILC",46,0)
+ D DELBSKT^XMXAPIB(XMDUZ,XMK,"D")
+"RTN","CWMAILC",47,0)
+ S CWDATA(1)="1^1"
+"RTN","CWMAILC",48,0)
+ ;E  S CWDATA(1)="0^0"
+"RTN","CWMAILC",49,0)
+PMBOXE Q
+"RTN","CWMAILC",50,0)
+%RNMBOX(CWDATA,CWINPUT) ;RENAME EXISTING MAILBOX
+"RTN","CWMAILC",51,0)
+ ;CWINPUT - DELIMITER ';'
+"RTN","CWMAILC",52,0)
+ ;   1st  - IEN of mailbox
+"RTN","CWMAILC",53,0)
+ ;   2nd  - New name of mailbox
+"RTN","CWMAILC",54,0)
+ D NAMEBSKT^XMXAPIB(XMDUZ,$P(CWINPUT,";"),$P(CWINPUT,";",2))
+"RTN","CWMAILC",55,0)
+ S CWDATA(1)="1^1^MAILBOX NAME WAS CHANGED"   ;FORCE TO SUCCESS
+"RTN","CWMAILC",56,0)
+RNMBOXE Q
+"RTN","CWMAILC",57,0)
+%MSGRCP(CWDATA,CWINPUT) ; RETURNS A LIST OF MESSAGE RECIPIENTS
+"RTN","CWMAILC",58,0)
+ ;CWINPUT = IEN of message
+"RTN","CWMAILC",59,0)
+ N CWDAT,CWI,XMZ
+"RTN","CWMAILC",60,0)
+ K CWDATA
+"RTN","CWMAILC",61,0)
+ S XMZ=+$P($G(CWINPUT),";",2)
+"RTN","CWMAILC",62,0)
+ D RECPT^CWMAIL1(.CWDATA,XMZ)
+"RTN","CWMAILC",63,0)
+MSGRCPE Q
+"RTN","CWMAILC",64,0)
+%NETINFO(CWDATA,CWINPUT) ; RETURNS NETWORK TRANSMISSION INFO
+"RTN","CWMAILC",65,0)
+ ;INPUT - IEN of message
+"RTN","CWMAILC",66,0)
+ N CWDAT,CWI,XMZ
+"RTN","CWMAILC",67,0)
+ K CWDATA
+"RTN","CWMAILC",68,0)
+ S XMZ=+$P($G(CWINPUT),";",2)
+"RTN","CWMAILC",69,0)
+ D NETINFO^CWMAIL1(.CWDATA,XMZ)
+"RTN","CWMAILC",70,0)
+NETINFOE Q
+"RTN","CWMAILC",71,0)
+ ;
+"RTN","CWMAILC",72,0)
+%ADRSTO(CWDATA,CWINPUT) ;RETURNS ARRAY OF ADDRESSED TO
+"RTN","CWMAILC",73,0)
+ ;CWINPUT - IEN of message
+"RTN","CWMAILC",74,0)
+ N CWDAT,CWI,XMZ
+"RTN","CWMAILC",75,0)
+ K CWDATA
+"RTN","CWMAILC",76,0)
+ S XMZ=+$P($G(CWINPUT),";",2)
+"RTN","CWMAILC",77,0)
+ D ADRSTO^CWMAIL1(.CWDATA,XMZ)
+"RTN","CWMAILC",78,0)
+ADRSTOE Q
+"RTN","CWMAILC",79,0)
+%GRPINF(CWDATA,CWINPUT) ;MAIL GROUP INFO
+"RTN","CWMAILC",80,0)
+ ;CWINPUT - IEN of mail group
+"RTN","CWMAILC",81,0)
+ N CWDAT,CWI,XMZ
+"RTN","CWMAILC",82,0)
+ K CWDATA
+"RTN","CWMAILC",83,0)
+ S CWI=2
+"RTN","CWMAILC",84,0)
+ S CWIEN=+$P($G(CWINPUT),";",2)
+"RTN","CWMAILC",85,0)
+ I $$GRPINFO^CWMAIL3(.CWDAT,CWIEN) D
+"RTN","CWMAILC",86,0)
+ .S CWI=+$G(CWDAT(-9900)) K CWDAT(-9900)
+"RTN","CWMAILC",87,0)
+ .M CWDATA=CWDAT
+"RTN","CWMAILC",88,0)
+ .S CWDATA(1)="1^^DATA HAS BEEN FOUND"
+"RTN","CWMAILC",89,0)
+ E  S CWDATA(1)="1^^There was no Mail Group information found."
+"RTN","CWMAILC",90,0)
+ S $P(CWDATA(1),U,2)=CWI-2
+"RTN","CWMAILC",91,0)
+GRPINFE Q
+"RTN","CWMAILC",92,0)
+%USRINF(CWDATA,CWINPUT) ;MAIL USER INFO
+"RTN","CWMAILC",93,0)
+ ;CWINPUT - IEN of mail user
+"RTN","CWMAILC",94,0)
+ N CWDAT,CWI,CWIEN
+"RTN","CWMAILC",95,0)
+ K CWDATA
+"RTN","CWMAILC",96,0)
+ S CWI=2
+"RTN","CWMAILC",97,0)
+ S CWIEN=+$P($G(CWINPUT),";",2)
+"RTN","CWMAILC",98,0)
+ ;G:'CWIEN USRINFE
+"RTN","CWMAILC",99,0)
+ I $$USRINFO^CWMAIL3(.CWDAT,CWIEN) D
+"RTN","CWMAILC",100,0)
+ .S CWI=+$G(CWDAT(-9900)) K CWDAT(-9900)
+"RTN","CWMAILC",101,0)
+ .M CWDATA=CWDAT
+"RTN","CWMAILC",102,0)
+ .S CWDATA(1)="1^^DATA HAS BEEN FOUND"
+"RTN","CWMAILC",103,0)
+ E  S CWDATA(1)="1^^There was no Mail User information found."
+"RTN","CWMAILC",104,0)
+ S $P(CWDATA(1),U,2)=CWI-2
+"RTN","CWMAILC",105,0)
+USRINFE Q
+"RTN","CWMAILC",106,0)
+MBOXD(CWDAT,CWUSR,CWIEN) ;RETURN DATA FOR MAILBOX
+"RTN","CWMAILC",107,0)
+ ;API NOT CURRENTLY USED
+"RTN","CWMAILC",108,0)
+ ;INPUT CWDAT = RETURN ARRAY
+"RTN","CWMAILC",109,0)
+ ;      CWIEN = MAILBASKET IEN TO 3.7 FOR USER
+"RTN","CWMAILC",110,0)
+ ;OUTPUT CWDAT("NAME")
+"RTN","CWMAILC",111,0)
+ ;       CWDAT("TMSG")
+"RTN","CWMAILC",112,0)
+ ;       CWDAT("NMSG")
+"RTN","CWMAILC",113,0)
+ ;       CWDAT("IEN")
+"RTN","CWMAILC",114,0)
+ N CWDATT
+"RTN","CWMAILC",115,0)
+ D QBSKT^XMXAPIB(CWUSR,CWIEN,.CWDATT)
+"RTN","CWMAILC",116,0)
+ S CWDAT("IEN")=$P(CWDATT,U)
+"RTN","CWMAILC",117,0)
+ S CWDAT("NAME")=$P(CWDATT,U,2)
+"RTN","CWMAILC",118,0)
+ S CWDAT("TMSG")=+$P(CWDATT,U,3)
+"RTN","CWMAILC",119,0)
+ S CWDAT("NMSG")=+$P(CWDATT,U,4)
+"RTN","CWMAILC",120,0)
+ Q
+"RTN","CWMAILD")
+0^11^B22909291
+"RTN","CWMAILD",1,0)
+CWMAILD ;INDPLS/PLS- DELPHI VISTA MAIL SERVER CONT'D ;22-Jul-2005 07:10;CLC
+"RTN","CWMAILD",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAILD",3,0)
+ Q   ;ROUTINE CAN'T BE CALLED DIRECTLY
+"RTN","CWMAILD",4,0)
+ ;
+"RTN","CWMAILD",5,0)
+%BMSGD(CWDATA,CWINPUT,CWTEXT) ;BUILD MESSAGE DATA INTO GLOBAL
+"RTN","CWMAILD",6,0)
+ ;USE CREATE OR REPLY TO SEND ACTUAL MESSAGE OR REPLY
+"RTN","CWMAILD",7,0)
+ M ^TMP($J,"CWMAILLOAD")=CWTEXT
+"RTN","CWMAILD",8,0)
+ S CWDATA(1)="1^1^DATA SET"
+"RTN","CWMAILD",9,0)
+BMSGDE Q
+"RTN","CWMAILD",10,0)
+ ;
+"RTN","CWMAILD",11,0)
+%PERPREF(CWDATA,CWPARAM) ;retrieve personal preferences
+"RTN","CWMAILD",12,0)
+ ;CWPARAM is not used
+"RTN","CWMAILD",13,0)
+ N CWNAME,CWCNT
+"RTN","CWMAILD",14,0)
+ S CWCNT=2
+"RTN","CWMAILD",15,0)
+ S CWDATA(1)="0^^AN ERROR HAS OCCURRED"
+"RTN","CWMAILD",16,0)
+ I $$GETPKPM^CWMAILE(.CWDATA) D
+"RTN","CWMAILD",17,0)
+ .S CWCNT=$G(CWDATA(-9900))
+"RTN","CWMAILD",18,0)
+ .K CWDATA(-9900)
+"RTN","CWMAILD",19,0)
+ .S CWDATA(1)="1^1^Preferences have been retrieved"
+"RTN","CWMAILD",20,0)
+ E  S CWDATA(1)="0^0^Unable to retrieve preferences"
+"RTN","CWMAILD",21,0)
+ S $P(CWDATA(1),U,2)=CWCNT-2
+"RTN","CWMAILD",22,0)
+PERPREFE Q
+"RTN","CWMAILD",23,0)
+ ;
+"RTN","CWMAILD",24,0)
+%USRLOG(CWDATA,DUZ) ;SET-UP USER PARTITION
+"RTN","CWMAILD",25,0)
+ ;
+"RTN","CWMAILD",26,0)
+ I +DUZ>0 D
+"RTN","CWMAILD",27,0)
+ . N XMDISPI,XMDUN,XMDUZ,CWNAME,CWNKNM,CWNMAIL,CWPMAIL
+"RTN","CWMAILD",28,0)
+ . S CWNKNM=$P($G(^VA(200,DUZ,.1)),U,4)
+"RTN","CWMAILD",29,0)
+ . D INIT^XMVVITAE
+"RTN","CWMAILD",30,0)
+ . S CWNMAIL=+$P($G(^XMB(3.7,DUZ,0)),U,6)
+"RTN","CWMAILD",31,0)
+ . S CWDATA(1)="1^"
+"RTN","CWMAILD",32,0)
+ . S $P(CWDATA(1),U,2)=XMV("DUZ NAME")  ; SET USER NAME
+"RTN","CWMAILD",33,0)
+ . S $P(CWDATA(1),U,3)=CWNKNM  ;SET USER NICKNAME
+"RTN","CWMAILD",34,0)
+ . S $P(CWDATA(1),U,4)=XMV("NEW MSGS")  ;SET # OF NEW MSGS
+"RTN","CWMAILD",35,0)
+ . S $P(CWDATA(1),U,5)=$G(XMV("WARNING",1))="Priority Mail"  ;SET PRIORITY MAIL FLAG
+"RTN","CWMAILD",36,0)
+ . S $P(CWDATA(1),U,6)=$P($G(XMV("NETNAME")),"@",2)  ;get domain name for mail server
+"RTN","CWMAILD",37,0)
+ . S $P(CWDATA(1),U,7)=$S($P($G(^VA(200,DUZ,200)),U,10)>0:$P($G(^VA(200,DUZ,200)),U,10),1:300)  ;Timed read used for GuiMail timeout. -clc
+"RTN","CWMAILD",38,0)
+ ;$G(^XMB("NETNAME"))  ;get domain name for mail server
+"RTN","CWMAILD",39,0)
+ E  S CWDATA(1)="0^USER NOT FOUND"
+"RTN","CWMAILD",40,0)
+USRLOGE Q
+"RTN","CWMAILD",41,0)
+%CHKMAIL(CWDATA,DUZ) ;CHECK FOR NEW MAIL
+"RTN","CWMAILD",42,0)
+ ;
+"RTN","CWMAILD",43,0)
+ N CWPMAIL,CWNMAIL,CWDAT
+"RTN","CWMAILD",44,0)
+ I +DUZ>0 D
+"RTN","CWMAILD",45,0)
+ . S CWDAT=$$NEWS^XMXUTIL(DUZ)  ;FORMAT #NEWMSGS^PRIORITY^#NMSGIN^DT LAST MSG^
+"RTN","CWMAILD",46,0)
+ . S CWDATA(1)="1^"_U_U_+CWDAT_U_+$P(CWDAT,U,2)
+"RTN","CWMAILD",47,0)
+ E  S CWDATA(1)="0^USER NOT FOUND"
+"RTN","CWMAILD",48,0)
+CHKMAILE Q
+"RTN","CWMAILD",49,0)
+ ;
+"RTN","CWMAILD",50,0)
+%PRTMSG(CWDATA,CWINPUT) ;PRINT A MESSAGE
+"RTN","CWMAILD",51,0)
+ ; CWINPUT  - 1st piece:  XMZ message number
+"RTN","CWMAILD",52,0)
+ ;          2nd piece:  XMK message basket number
+"RTN","CWMAILD",53,0)
+ ;          3rd piece:  Print from response number 0=all
+"RTN","CWMAILD",54,0)
+ ;          4th piece:  null = no recpts 0=summary; 1=detail
+"RTN","CWMAILD",55,0)
+ ;          5th piece:  printer name
+"RTN","CWMAILD",56,0)
+ ;          6th piece:  1=header, 0=headerless
+"RTN","CWMAILD",57,0)
+ N XMZ,XMK,XMKN
+"RTN","CWMAILD",58,0)
+ N XMINSTR,CWDAT1,CWDAT2,CWRESP,CWRECP,CWPRTN,XMMSG,XMTASK
+"RTN","CWMAILD",59,0)
+ S XMZ=+$P(CWINPUT,";")
+"RTN","CWMAILD",60,0)
+ S CWRESP=$P(CWINPUT,";",3)
+"RTN","CWMAILD",61,0)
+ S CWRECP=$P(CWINPUT,";",4),CWRECP=$S($L(CWRECP):+CWRECP,1:-1)
+"RTN","CWMAILD",62,0)
+ S CWPRTN=$P(CWINPUT,";",5)
+"RTN","CWMAILD",63,0)
+ ;D INMSG1^XMXUTIL2(XMDUZ,XMZ,,.CWDAT1,.CWDAT2)  ;GET # OF RESPONSES - NOT CURRENTLY NEEDED
+"RTN","CWMAILD",64,0)
+ S XMINSTR("HDR")=$S('$L($P(CWINPUT,";",6)):1,1:+$P(CWINPUT,";",6))  ;DEFAULT TO PRINTING HEADER
+"RTN","CWMAILD",65,0)
+ S XMINSTR("RESPS")=$S(+CWRESP:+CWRESP_"-",1:"*")  ;DEFINE RANGE TO PRINT +$G((CWDAT("RESPS"))) HOLDS TOTAL # OF RESPONSES
+"RTN","CWMAILD",66,0)
+ I CWRECP>-1 D
+"RTN","CWMAILD",67,0)
+ . S XMINSTR("RECIPS")=$S(+CWRECP:2,1:1)  ;CONVERT CWMA TO XM NOMENCLATURE
+"RTN","CWMAILD",68,0)
+ E  S XMINSTR("RECIPS")=0   ;Don't print recipient list
+"RTN","CWMAILD",69,0)
+ D:$L($G(CWPRTN)) PRTMSG^XMXAPI(XMDUZ,,XMZ,CWPRTN,.XMINSTR,,.XMTASK)
+"RTN","CWMAILD",70,0)
+ I +$G(XMTASK) S CWDATA(1)="1^1^"_$G(XMTASK)
+"RTN","CWMAILD",71,0)
+ E  S CWDATA(1)="1^0^Message could not be printed"
+"RTN","CWMAILD",72,0)
+PRTMSGE Q
+"RTN","CWMAILD",73,0)
+ ;
+"RTN","CWMAILD",74,0)
+%SUPREF(CWDATA,CWINPUT,CWTEXT) ;Set user preferences
+"RTN","CWMAILD",75,0)
+ ;
+"RTN","CWMAILD",76,0)
+ N CWSDATA,CWSEDATA,CWLP
+"RTN","CWMAILD",77,0)
+ N CWPRM,CWVAL,CWLP1,CWERR
+"RTN","CWMAILD",78,0)
+ S CWDATA(1)="0^^AN ERROR HAS OCCURRED"
+"RTN","CWMAILD",79,0)
+ S CWSDATA=$G(CWTEXT(-9902),"[START DATA]"),CWSEDATA=$G(CWTEXT(-9903),"[END DATA]")
+"RTN","CWMAILD",80,0)
+ S CWLP=-1 D FNDLP^CWMAILB(.CWLP,CWSDATA)
+"RTN","CWMAILD",81,0)
+ G:$G(CWLP)="" SUPREND
+"RTN","CWMAILD",82,0)
+ F  S CWLP=$O(CWTEXT(CWLP)) Q:CWLP=""  Q:CWTEXT(CWLP)=CWSEDATA  D
+"RTN","CWMAILD",83,0)
+ . I CWTEXT(CWLP)'?1"[".E1"]" D
+"RTN","CWMAILD",84,0)
+ . . S CWPRM=$$GETPRM^CWMAILE($P(CWTEXT(CWLP),"="))   ;get parameter
+"RTN","CWMAILD",85,0)
+ . . I $L(CWPRM) D
+"RTN","CWMAILD",86,0)
+ . . . S CWVAL=$P(CWTEXT(CWLP),"=",2)                 ;get value
+"RTN","CWMAILD",87,0)
+ . . . S CWERR=$$SETPARM(XMDUZ,CWPRM,CWVAL)                 ;set value into parameter
+"RTN","CWMAILD",88,0)
+ S CWDATA(1)="1^1^Preferences have been stored"
+"RTN","CWMAILD",89,0)
+SUPREND Q
+"RTN","CWMAILD",90,0)
+ ;
+"RTN","CWMAILD",91,0)
+SETPARM(CWDUZ,CWPARM,CWVALUE) ;Set value into parameter instance
+"RTN","CWMAILD",92,0)
+ ;Input:  CWPARM  - holds the return value of $$GETPRM^CWMAILE
+"RTN","CWMAILD",93,0)
+ ;        CWVALUE - value to stuff (single value or comma delimited string)
+"RTN","CWMAILD",94,0)
+ ;        CWDUZ - user
+"RTN","CWMAILD",95,0)
+ Q:'CWDUZ 1 ;must have a valid user
+"RTN","CWMAILD",96,0)
+ K CWERR
+"RTN","CWMAILD",97,0)
+ I 'CWPARM D                     ;single instance
+"RTN","CWMAILD",98,0)
+ . D EN^XPAR("USR.`"_CWDUZ,$P(CWPARM,"|",2),1,CWVALUE,.CWERR)
+"RTN","CWMAILD",99,0)
+ E  D                            ;multiple instances
+"RTN","CWMAILD",100,0)
+ . N CWLP,CWX,CWXA
+"RTN","CWMAILD",101,0)
+ . S CWX=CWVALUE,CWLP=0
+"RTN","CWMAILD",102,0)
+ . F  Q:$L(CWX,";")<(CWLP+1)  D
+"RTN","CWMAILD",103,0)
+ . . S CWLP=CWLP+1
+"RTN","CWMAILD",104,0)
+ . . S CWXA=$P(CWX,";",CWLP)  ;CWXA holds the column,width pair
+"RTN","CWMAILD",105,0)
+ . . D EN^XPAR("USR.`"_CWDUZ,$P(CWPARM,"|",2),CWLP,CWXA,.CWERR)  ;stuff value
+"RTN","CWMAILD",106,0)
+ Q CWERR
+"RTN","CWMAILD",107,0)
+ ;
+"RTN","CWMAILD",108,0)
+%GETSVER(CWDATA,CWPARAM) ;GET SERVER VERSION
+"RTN","CWMAILD",109,0)
+ S CWDATA(1)="1^1^"_+$$VERSION^XPDUTL("CWMA")
+"RTN","CWMAILD",110,0)
+ Q
+"RTN","CWMAILD",111,0)
+%OPENATT(CWDATA,CWPARAM) ;OPEN ATTACHMENTS
+"RTN","CWMAILD",112,0)
+ N X
+"RTN","CWMAILD",113,0)
+ S X=$$GET^XPAR("ALL","CWMA ALLOW ATTACHMENTS OPEN")
+"RTN","CWMAILD",114,0)
+ S CWDATA(1)="1^1^"_$S(X=0:X,1:1)
+"RTN","CWMAILD",115,0)
+ Q
+"RTN","CWMAILD",116,0)
+%TIMEROF(CWDATA,CWPARAM) ;DISABLE TIMER
+"RTN","CWMAILD",117,0)
+ N X
+"RTN","CWMAILD",118,0)
+ S X=$$GET^XPAR("ALL","CWMA DISABLE GUIMAIL TIMEOUT")
+"RTN","CWMAILD",119,0)
+ S CWDATA(1)="1^1^"_$S(X=0:X,1:1)
+"RTN","CWMAILD",120,0)
+ Q
+"RTN","CWMAILD",121,0)
+TIMERVAL(CWDATA,CWPARAM) ;TIMEOUT VALUE
+"RTN","CWMAILD",122,0)
+ N X
+"RTN","CWMAILD",123,0)
+ S X=$$GET^XPAR("ALL","CWMA GUIMAIL TIMEOUT VALUE")
+"RTN","CWMAILD",124,0)
+ S CWDATA(1)="1^1^"_$S(X>0:X,1:0)
+"RTN","CWMAILD",125,0)
+ Q
+"RTN","CWMAILE")
+0^12^B13183521
+"RTN","CWMAILE",1,0)
+CWMAILE ;INDPLS/PLS- DELPHI VISTA MAIL SERVER CONT'D ;21-Jun-2005 06:34;CLC
+"RTN","CWMAILE",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAILE",3,0)
+ Q   ;ROUTINE CAN'T BE CALLED DIRECTLY
+"RTN","CWMAILE",4,0)
+ ;
+"RTN","CWMAILE",5,0)
+GETPKPM(CWDAT) ;get package parameters and return in CWDAT
+"RTN","CWMAILE",6,0)
+ ;called by CWMAILD
+"RTN","CWMAILE",7,0)
+ ;This API uses the PRECEDENCE field of each parameter
+"RTN","CWMAILE",8,0)
+ N CWCNT,CWLP
+"RTN","CWMAILE",9,0)
+ S CWCNT=2
+"RTN","CWMAILE",10,0)
+ S CWDAT(CWCNT)="[Sound]",CWCNT=CWCNT+1
+"RTN","CWMAILE",11,0)
+ S CWDAT(CWCNT)="Sound="_+$$GET^XPAR("ALL","CWMA SOUND ENABLED"),CWCNT=CWCNT+1
+"RTN","CWMAILE",12,0)
+ S CWDAT(CWCNT)="Message Open="_$$GET^XPAR("ALL","CWMA SOUND MESSAGE OPEN"),CWCNT=CWCNT+1
+"RTN","CWMAILE",13,0)
+ S CWDAT(CWCNT)="Message Close="_$$GET^XPAR("ALL","CWMA SOUND MESSAGE CLOSE"),CWCNT=CWCNT+1
+"RTN","CWMAILE",14,0)
+ S CWDAT(CWCNT)="New Mail="_$$GET^XPAR("ALL","CWMA SOUND NEW MAIL"),CWCNT=CWCNT+1
+"RTN","CWMAILE",15,0)
+ S CWDAT(CWCNT)="Priority Mail="_$$GET^XPAR("ALL","CWMA SOUND PRIORITY MAIL"),CWCNT=CWCNT+1
+"RTN","CWMAILE",16,0)
+ S CWDAT(CWCNT)="[StartUp]",CWCNT=CWCNT+1
+"RTN","CWMAILE",17,0)
+ S CWDAT(CWCNT)="StartUpNewMail="_$$GET^XPAR("ALL","CWMA STARTUP NEW MAIL",1,"E"),CWCNT=CWCNT+1
+"RTN","CWMAILE",18,0)
+ S CWDAT(CWCNT)="StartUpOpenMailBox="_$$GET^XPAR("ALL","CWMA STARTUP OPEN MAIL BOX",1,"E"),CWCNT=CWCNT+1
+"RTN","CWMAILE",19,0)
+ S CWDAT(CWCNT)="StartUpOpenMailBoxName="_$$GET^XPAR("ALL","CWMA STARTUP MAIL BOX NAME"),CWCNT=CWCNT+1
+"RTN","CWMAILE",20,0)
+ S CWDAT(CWCNT)="[General]",CWCNT=CWCNT+1
+"RTN","CWMAILE",21,0)
+ S CWDAT(CWCNT)="CreateMessageAttributes="_$$GET^XPAR("ALL","CWMA GENERAL CMA STYLE"),CWCNT=CWCNT+1
+"RTN","CWMAILE",22,0)
+ S CWDAT(CWCNT)="MessagePropertiesDefaultTab="_$$GET^XPAR("ALL","CWMA GENERAL MPD TAB"),CWCNT=CWCNT+1
+"RTN","CWMAILE",23,0)
+ S CWDAT(CWCNT)="NewMailPollingFrequency="_$$GET^XPAR("ALL","CWMA GENERAL NMP FREQ"),CWCNT=CWCNT+1
+"RTN","CWMAILE",24,0)
+ S CWDAT(CWCNT)="MessageDisplayCount="_$$GET^XPAR("ALL","CWMA GENERAL MD COUNT"),CWCNT=CWCNT+1
+"RTN","CWMAILE",25,0)
+ S CWDAT(CWCNT)="DefaultVistaPrinter="_$$GET^XPAR("ALL","CWMA GENERAL VISTA PRT"),CWCNT=CWCNT+1
+"RTN","CWMAILE",26,0)
+ S CWDAT(CWCNT)="DefaultPrintMode="_+$$GET^XPAR("ALL","CWMA GENERAL PRINTMODE"),CWCNT=CWCNT+1
+"RTN","CWMAILE",27,0)
+ S CWDAT(CWCNT)="MessageDisplayColumns="_$$GETCOL,CWCNT=CWCNT+1  ;get column information
+"RTN","CWMAILE",28,0)
+ S CWDAT(CWCNT)="AllowAttachments="_$$GET^XPAR("ALL","CWMA ALLOW ATTACHMENTS",1,"E"),CWCNT=CWCNT+1
+"RTN","CWMAILE",29,0)
+ S CWDAT(-9900)=CWCNT
+"RTN","CWMAILE",30,0)
+ Q $O(CWDAT(1))
+"RTN","CWMAILE",31,0)
+ ;
+"RTN","CWMAILE",32,0)
+GETCOL() ;retrieve column information for message display
+"RTN","CWMAILE",33,0)
+ N CWLP,CWDAA,CWTMP
+"RTN","CWMAILE",34,0)
+ S CWTMP=""
+"RTN","CWMAILE",35,0)
+ D GETLST^XPAR(.CWDAA,"ALL","CWMA GENERAL MD COL")
+"RTN","CWMAILE",36,0)
+ S CWLP=0 F  S CWLP=$O(CWDAA(CWLP)) Q:CWLP<1  D
+"RTN","CWMAILE",37,0)
+ . S CWTMP=CWTMP_$P(CWDAA(CWLP),U,2)_";"
+"RTN","CWMAILE",38,0)
+ Q CWTMP
+"RTN","CWMAILE",39,0)
+ ;
+"RTN","CWMAILE",40,0)
+GETPRM(CWVAR) ;lookup parameter for a given variable
+"RTN","CWMAILE",41,0)
+ ;returns set procedure|parameter
+"RTN","CWMAILE",42,0)
+ ; set procedure: 0=single instance, 1=multiple instances
+"RTN","CWMAILE",43,0)
+ Q:CWVAR="Sound" "0|CWMA SOUND ENABLED"
+"RTN","CWMAILE",44,0)
+ Q:CWVAR="Message Open" "0|CWMA SOUND MESSAGE OPEN"
+"RTN","CWMAILE",45,0)
+ Q:CWVAR="Message Close" "0|CWMA SOUND MESSAGE CLOSE"
+"RTN","CWMAILE",46,0)
+ Q:CWVAR="Priority Mail" "0|CWMA SOUND PRIORITY MAIL"
+"RTN","CWMAILE",47,0)
+ Q:CWVAR="New Mail" "0|CWMA SOUND NEW MAIL"
+"RTN","CWMAILE",48,0)
+ Q:CWVAR="StartUpNewMail" "0|CWMA STARTUP NEW MAIL"
+"RTN","CWMAILE",49,0)
+ Q:CWVAR="StartUpOpenMailBox" "0|CWMA STARTUP OPEN MAIL BOX"
+"RTN","CWMAILE",50,0)
+ Q:CWVAR="StartUpOpenMailBoxName" "0|CWMA STARTUP MAIL BOX NAME"
+"RTN","CWMAILE",51,0)
+ Q:CWVAR="CreateMessageAttributes" "0|CWMA GENERAL CMA STYLE"
+"RTN","CWMAILE",52,0)
+ Q:CWVAR="MessagePropertiesDefaultTab" "0|CWMA GENERAL MPD TAB"
+"RTN","CWMAILE",53,0)
+ Q:CWVAR="NewMailPollingFrequency" "0|CWMA GENERAL NMP FREQ"
+"RTN","CWMAILE",54,0)
+ Q:CWVAR="MessageDisplayCount" "0|CWMA GENERAL MD COUNT"
+"RTN","CWMAILE",55,0)
+ Q:CWVAR="DefaultVistaPrinter" "0|CWMA GENERAL VISTA PRT"
+"RTN","CWMAILE",56,0)
+ Q:CWVAR="DefaultPrintMode" "0|CWMA GENERAL PRINTMODE"
+"RTN","CWMAILE",57,0)
+ Q:CWVAR="MessageDisplayColumns" "1|CWMA GENERAL MD COL"
+"RTN","CWMAILE",58,0)
+ Q ""
+"RTN","CWMAILE",59,0)
+ ;
+"RTN","CWMAILF")
+0^13^B6688838
+"RTN","CWMAILF",1,0)
+CWMAILF ;INDPLS/PLS- DELPHI VISTA MAIL SERVER CONT'D ;21-Jun-2005 06:34;CLC
+"RTN","CWMAILF",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAILF",3,0)
+ ;MODIFIED FOR XM*7.1*50
+"RTN","CWMAILF",4,0)
+ Q   ;ROUTINE CAN'T BE CALLED DIRECTLY
+"RTN","CWMAILF",5,0)
+BLDLST(CWDATA,CWDATSRC,CWDCNT) ;  build list of messages - called by CWMAILA
+"RTN","CWMAILF",6,0)
+ ;Input: CWDATA - pass by reference
+"RTN","CWMAILF",7,0)
+ ;       CWDATSRC - $NA containing data
+"RTN","CWMAILF",8,0)
+ ;       CWDCNT - node counter
+"RTN","CWMAILF",9,0)
+ ;Return: CWDATA array
+"RTN","CWMAILF",10,0)
+ ;CWARY format:  piece   value
+"RTN","CWMAILF",11,0)
+ ;                 1     message basket
+"RTN","CWMAILF",12,0)
+ ;                 2     message ien
+"RTN","CWMAILF",13,0)
+ ;                 3     message subject
+"RTN","CWMAILF",14,0)
+ ;                 4     message date sent
+"RTN","CWMAILF",15,0)
+ ;                 5     not used
+"RTN","CWMAILF",16,0)
+ ;                 6     message type
+"RTN","CWMAILF",17,0)
+ ;                 7     confirmation flag
+"RTN","CWMAILF",18,0)
+ ;                 8     closed flag
+"RTN","CWMAILF",19,0)
+ ;                 9     info flag
+"RTN","CWMAILF",20,0)
+ ;                10     confidential flag
+"RTN","CWMAILF",21,0)
+ ;                11     sender ien
+"RTN","CWMAILF",22,0)
+ ;                12     broadcast flag
+"RTN","CWMAILF",23,0)
+ ;                13     sender name
+"RTN","CWMAILF",24,0)
+ ;                14     total # of recipients
+"RTN","CWMAILF",25,0)
+ ;                15     total # of replies
+"RTN","CWMAILF",26,0)
+ ;                16     priority flag
+"RTN","CWMAILF",27,0)
+ ;                17     last response read
+"RTN","CWMAILF",28,0)
+ ;                18     message basket sequence number
+"RTN","CWMAILF",29,0)
+ ;                19     new message flag
+"RTN","CWMAILF",30,0)
+ ;                20     answer message flag
+"RTN","CWMAILF",31,0)
+ ;
+"RTN","CWMAILF",32,0)
+ S CWDATA(1)="0^AN ERROR HAS OCCURRED"
+"RTN","CWMAILF",33,0)
+ N CWVAL,CWMSG,CWMSGSUB,CWMSGDT,CWMAIB,CWMSGBX,CWMSGLP
+"RTN","CWMAILF",34,0)
+ N CWARY
+"RTN","CWMAILF",35,0)
+ S CWMSG=0,CWDCNT=2,CWMSGLP=0
+"RTN","CWMAILF",36,0)
+ ;CALL API TO RETRIEVE MESSAGES
+"RTN","CWMAILF",37,0)
+ F  S CWMSGLP=$O(@CWDATSRC@(CWMSGLP)) Q:CWMSGLP<1  D
+"RTN","CWMAILF",38,0)
+ . S CWARY(1)=+$G(@CWDATSRC@(CWMSGLP,"BSKT"))
+"RTN","CWMAILF",39,0)
+ . S CWARY(2)=+$G(@CWDATSRC@(CWMSGLP))
+"RTN","CWMAILF",40,0)
+ . S CWARY(3)=$G(@CWDATSRC@(CWMSGLP,"SUBJ"))
+"RTN","CWMAILF",41,0)
+ . S CWARY(4)=$P($G(@CWDATSRC@(CWMSGLP,"DATE")),U)
+"RTN","CWMAILF",42,0)
+ . I CWARY(4)?1.N1".".N S CWARY(4)=$$FMDTE^CWMAIL4(CWARY(4),"5MZ")
+"RTN","CWMAILF",43,0)
+ . E  S CWARY(4)=$$FMDTE^CWMAIL4($$CONVERT^XMXUTIL1(CWARY(4),1),"5MZ")
+"RTN","CWMAILF",44,0)
+ . S CWARY(18)=$G(@CWDATSRC@(CWMSGLP,"SEQN"))
+"RTN","CWMAILF",45,0)
+ . S CWARY(19)=+$G(@CWDATSRC@(CWMSGLP,"NEW"))
+"RTN","CWMAILF",46,0)
+ . S CWDATA(CWDCNT)=$$ADDMP^CWMAIL0(CWARY(2),.CWARY)
+"RTN","CWMAILF",47,0)
+ . S CWDCNT=CWDCNT+1
+"RTN","CWMAILF",48,0)
+ Q
+"RTN","CWMAILF",49,0)
+ ;
+"RTN","CWMAILF",50,0)
+%MSGISRC(CWDATA,CWINPUT) ;SEARCH FOR A PARTICULAR MESSAGE NUMBER
+"RTN","CWMAILF",51,0)
+ ;CWINPUT - IEN of Message
+"RTN","CWMAILF",52,0)
+ N CWI,CWMIEN,CWDATT,CWDCNT
+"RTN","CWMAILF",53,0)
+ K CWDATA
+"RTN","CWMAILF",54,0)
+ S CWDCNT=2
+"RTN","CWMAILF",55,0)
+ S CWMIEN=+$P($G(CWINPUT),";")
+"RTN","CWMAILF",56,0)
+ I $$ACCESS^XMXSEC(XMDUZ,CWMIEN) D
+"RTN","CWMAILF",57,0)
+ . D MSGINIT(CWMIEN,.CWDATT)
+"RTN","CWMAILF",58,0)
+ . D BLDLST(.CWDATA,$NA(CWDATT),.CWDCNT)
+"RTN","CWMAILF",59,0)
+ . ;S CWDATA(1)="1^^DATA HAS BEEN FOUND"
+"RTN","CWMAILF",60,0)
+ ;E  S CWDATA(1)="1^^Message not found or you don't have access to it."
+"RTN","CWMAILF",61,0)
+ I $O(CWDATA(1)) S CWDATA(1)="1^^DATA HAS BEEN FOUND"
+"RTN","CWMAILF",62,0)
+ E  S CWDATA(1)="1^^Message not found or you lack access to it."
+"RTN","CWMAILF",63,0)
+ S $P(CWDATA(1),U,2)=CWDCNT-2
+"RTN","CWMAILF",64,0)
+MSGISRCE Q
+"RTN","CWMAILF",65,0)
+ ;
+"RTN","CWMAILF",66,0)
+MSGINIT(CWMIEN,CWDATT) ;Individual Message Pre-processor
+"RTN","CWMAILF",67,0)
+ N CWIM,CWINSTR,CWIU
+"RTN","CWMAILF",68,0)
+ D INMSG^XMXUTIL2(XMDUZ,"",CWMIEN,,,.CWIM,.CWINSTR,.CWIU)
+"RTN","CWMAILF",69,0)
+ S CWDATT(1)=CWMIEN
+"RTN","CWMAILF",70,0)
+ S CWDATT(1,"DATE")=$G(CWIM("DATE"))
+"RTN","CWMAILF",71,0)
+ S CWDATT(1,"SUBJ")=$G(CWIM("SUBJ"))
+"RTN","CWMAILF",72,0)
+ S CWDATT(1,"SEQN")=""
+"RTN","CWMAILF",73,0)
+ S CWDATT(1,"BSKT")=$$BSKT^XMXUTIL2(XMDUZ,CWMIEN,1)
+"RTN","CWMAILF",74,0)
+ S CWDATT(1,"NEW")=$G(CWIU("NEW"))>0
+"RTN","CWMAILF",75,0)
+ Q
+"RTN","CWMAINI")
+0^14^B9313045
+"RTN","CWMAINI",1,0)
+CWMAINI ;INDPLS/PLS - KIDS INITS FOR GUIMail INSTALL ;20-Jul-2005 14:46;CLC;
+"RTN","CWMAINI",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAINI",3,0)
+ ; Environment Check
+"RTN","CWMAINI",4,0)
+EC D VCHK("RPC BROKER",1.1)  ;RPC Broker
+"RTN","CWMAINI",5,0)
+ D PCHK("DI*21.0*34")  ;Fileman/Delphi Components
+"RTN","CWMAINI",6,0)
+ D PCHK("XM*7.1*50")  ;MailMan Patch
+"RTN","CWMAINI",7,0)
+ D PCHK("XM*7.1*73")  ;MailMan Patch to $$CONVERT^XMXUTIL1
+"RTN","CWMAINI",8,0)
+ D PCHK("XU*8.0*71")  ;Kernel date formatting patch
+"RTN","CWMAINI",9,0)
+ D PCHK("XT*7.3*26")  ;Kernel Tool-Kit Generic Parameters
+"RTN","CWMAINI",10,0)
+ S:$G(XPDENV) XPDDIQ("XPZ1")=0  ;force Disable Options/Protocols prompt to NO
+"RTN","CWMAINI",11,0)
+ Q
+"RTN","CWMAINI",12,0)
+VCHK(CWP,CWV) ;CHECK VERSION OF PASSED PACKAGE
+"RTN","CWMAINI",13,0)
+ D:$$VERSION^XPDUTL(CWP)<CWV MES("Requires at least version "_CWV_" of the "_CWP_".")
+"RTN","CWMAINI",14,0)
+ Q
+"RTN","CWMAINI",15,0)
+PCHK(CWPATCH) ;CHECK PATCH INSTALLATION
+"RTN","CWMAINI",16,0)
+ D:'$$PATCH^XPDUTL(CWPATCH) MES("Requires that patch "_CWPATCH_" be installed.")
+"RTN","CWMAINI",17,0)
+ Q
+"RTN","CWMAINI",18,0)
+MES(X) D BMES^XPDUTL(X)
+"RTN","CWMAINI",19,0)
+ S XPDQUIT=1
+"RTN","CWMAINI",20,0)
+ Q
+"RTN","CWMAINI",21,0)
+ ;Post Installation
+"RTN","CWMAINI",22,0)
+EN ;entry point for post installation functions
+"RTN","CWMAINI",23,0)
+ ;
+"RTN","CWMAINI",24,0)
+ D ^CWMAPP  ;populate package parameters
+"RTN","CWMAINI",25,0)
+ D EN^CWMACPPI  ;convert CWMAIL1 to Generic Parameter Utility
+"RTN","CWMAINI",26,0)
+ D UPCURVER(2.3)     ;make sure current version is updated
+"RTN","CWMAINI",27,0)
+ ;D PDEL890  ;prompt for deletion of File 890 CW GUI VISTA MAIL USER
+"RTN","CWMAINI",28,0)
+ D MMSG  ;send mail message indicating package installation
+"RTN","CWMAINI",29,0)
+ Q
+"RTN","CWMAINI",30,0)
+MMSG ;send mail message to Indianapolis indicating CW GUIMail installation
+"RTN","CWMAINI",31,0)
+ ;
+"RTN","CWMAINI",32,0)
+ N CWSUBJ,CWRECP,CWBODY
+"RTN","CWMAINI",33,0)
+ S CWBODY=$NA(^TMP($J,"CWBODY"))
+"RTN","CWMAINI",34,0)
+ S CWSUBJ="GUIMail Installation at "_$G(^XMB("NETNAME"))
+"RTN","CWMAINI",35,0)
+ S ^TMP($J,"CWBODY",1)="GUIMail has just been installed at: "_$G(^XMB("NETNAME"))_"."
+"RTN","CWMAINI",36,0)
+ S ^TMP($J,"CWBODY",2)="Version #: 2.3"    ;_$$VERSION^XPDUTL("CWMA")  ;set version number
+"RTN","CWMAINI",37,0)
+ S ^TMP($J,"CWBODY",3)="Installer: "_$P($G(^VA(200,+$G(DUZ),0)),U)
+"RTN","CWMAINI",38,0)
+ S CWRECP("G.GUIMAIL@INDIANAPOLIS.VA.GOV")=""
+"RTN","CWMAINI",39,0)
+ D SENDMSG^XMXAPI(DUZ,CWSUBJ,CWBODY,.CWRECP)
+"RTN","CWMAINI",40,0)
+ K ^TMP($J,"CWBODY")
+"RTN","CWMAINI",41,0)
+ Q
+"RTN","CWMAINI",42,0)
+ ;
+"RTN","CWMAINI",43,0)
+PDEL890 ;I $$READY("Do you wish to remove the file at this time","NO") D
+"RTN","CWMAINI",44,0)
+ ;. N DIU
+"RTN","CWMAINI",45,0)
+ ;. S DIU="^CWMAIL1(",DIU(0)="DST" D EN^DIU2
+"RTN","CWMAINI",46,0)
+ ;E  D
+"RTN","CWMAINI",47,0)
+ ;. W !,"OK. You may delete later by executing D PDEL890^CWMAINI."
+"RTN","CWMAINI",48,0)
+ D BMES^XPDUTL("Removing CW GUI VISTA MAIL USER (890) File ...")
+"RTN","CWMAINI",49,0)
+ N DIU
+"RTN","CWMAINI",50,0)
+ S DIU="^CWMAIL1(",DIU(0)="DST" D EN^DIU2
+"RTN","CWMAINI",51,0)
+ Q
+"RTN","CWMAINI",52,0)
+UPCURVER(VER) ;
+"RTN","CWMAINI",53,0)
+ N IEN,CWFDA
+"RTN","CWMAINI",54,0)
+ S IEN=$$FIND1^DIC(9.4,"","B","CW GUIMail","B","","OUT")
+"RTN","CWMAINI",55,0)
+ I IEN D
+"RTN","CWMAINI",56,0)
+ .Q:$G(^DIC(9.4,IEN,"VERSION"))=VER
+"RTN","CWMAINI",57,0)
+ .S CWFDA(9.4,IEN_",",13)=VER
+"RTN","CWMAINI",58,0)
+ .D FILE^DIE("","CWFDA")
+"RTN","CWMAINI",59,0)
+ Q
+"RTN","CWMAINI",60,0)
+READY(CWPRMPT,CWDEF) ; Prompts user for input
+"RTN","CWMAINI",61,0)
+ ;Input - CWPRMPT - will set DIR("A" to this value
+"RTN","CWMAINI",62,0)
+ ;         CWDEF - will set DIR("B" to this value
+"RTN","CWMAINI",63,0)
+ ;Output - returns a 1(yes) or 0(no)
+"RTN","CWMAINI",64,0)
+ N DIR,X,Y
+"RTN","CWMAINI",65,0)
+ W !!,"                   * * * *  WARNING  * * * *"
+"RTN","CWMAINI",66,0)
+ W !!,"       You are about to remove file 890. This file held"
+"RTN","CWMAINI",67,0)
+ W !!,"    personal preferences for GUIMail v2.0. All of the settings"
+"RTN","CWMAINI",68,0)
+ W !!,"       should have been moved to the Generic Parameter File"
+"RTN","CWMAINI",69,0)
+ W !!,"                     during installation.",!!
+"RTN","CWMAINI",70,0)
+ S DIR("B")=$G(CWDEF,"NO")
+"RTN","CWMAINI",71,0)
+ S DIR(0)="Y"
+"RTN","CWMAINI",72,0)
+ D ^DIR Q:Y 1  ; answered YES
+"RTN","CWMAINI",73,0)
+ Q 0  ; answered NO
+"RTN","CWMAPP")
+0^15^B806108
+"RTN","CWMAPP",1,0)
+CWMAPP ; Export Package Level Parameters ;21-Jun-2005 06:34;CLC
+"RTN","CWMAPP",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAPP",3,0)
+ ;;
+"RTN","CWMAPP",4,0)
+MAIN ; main (initial) parameter transport routine
+"RTN","CWMAPP",5,0)
+ K ^TMP($J,"XPARRSTR")
+"RTN","CWMAPP",6,0)
+ N ENT,IDX,ROOT,REF,VAL,I
+"RTN","CWMAPP",7,0)
+ S ROOT=$NAME(^TMP($J,"XPARRSTR")),ROOT=$E(ROOT,1,$L(ROOT)-1)_","
+"RTN","CWMAPP",8,0)
+ D ^CWMAPP01
+"RTN","CWMAPP",9,0)
+XX2 S IDX=0,ENT="PKG."_"CW GUIMail"
+"RTN","CWMAPP",10,0)
+ F  S IDX=$O(^TMP($J,"XPARRSTR",IDX)) Q:'IDX  D
+"RTN","CWMAPP",11,0)
+ . N PAR,INST,VAL,ERR
+"RTN","CWMAPP",12,0)
+ . S PAR=$P(^TMP($J,"XPARRSTR",IDX,"KEY"),U),INST=$P(^("KEY"),U,2)
+"RTN","CWMAPP",13,0)
+ . M VAL=^TMP($J,"XPARRSTR",IDX,"VAL")
+"RTN","CWMAPP",14,0)
+ . D EN^XPAR(ENT,PAR,INST,.VAL,.ERR)
+"RTN","CWMAPP",15,0)
+ K ^TMP($J,"XPARRSTR")
+"RTN","CWMAPP",16,0)
+ Q
+"RTN","CWMAPP01")
+0^16^B2776736
+"RTN","CWMAPP01",1,0)
+CWMAPP01 ; ;21-Jun-2005 06:34;CLC
+"RTN","CWMAPP01",2,0)
+ ;;2.3;CWMAIL;;Jul 19, 2005
+"RTN","CWMAPP01",3,0)
+ ;;
+"RTN","CWMAPP01",4,0)
+LOAD ; load data into ^TMP (expects ROOT to be defined)
+"RTN","CWMAPP01",5,0)
+ S I=1 F  S REF=$T(DATA+I) Q:REF=""  S VAL=$T(DATA+I+1) D
+"RTN","CWMAPP01",6,0)
+ . S I=I+2,REF=$P(REF,";",3,999),VAL=$P(VAL,";",3,999)
+"RTN","CWMAPP01",7,0)
+ . S @(ROOT_REF)=VAL
+"RTN","CWMAPP01",8,0)
+ Q
+"RTN","CWMAPP01",9,0)
+DATA ; parameter data
+"RTN","CWMAPP01",10,0)
+ ;;2,"KEY")
+"RTN","CWMAPP01",11,0)
+ ;;CWMA STARTUP NEW MAIL^1
+"RTN","CWMAPP01",12,0)
+ ;;2,"VAL")
+"RTN","CWMAPP01",13,0)
+ ;;True
+"RTN","CWMAPP01",14,0)
+ ;;4,"KEY")
+"RTN","CWMAPP01",15,0)
+ ;;CWMA GENERAL MD COL^1
+"RTN","CWMAPP01",16,0)
+ ;;4,"VAL")
+"RTN","CWMAPP01",17,0)
+ ;;0,5
+"RTN","CWMAPP01",18,0)
+ ;;5,"KEY")
+"RTN","CWMAPP01",19,0)
+ ;;CWMA GENERAL MD COL^2
+"RTN","CWMAPP01",20,0)
+ ;;5,"VAL")
+"RTN","CWMAPP01",21,0)
+ ;;1,25
+"RTN","CWMAPP01",22,0)
+ ;;6,"KEY")
+"RTN","CWMAPP01",23,0)
+ ;;CWMA GENERAL MD COL^3
+"RTN","CWMAPP01",24,0)
+ ;;6,"VAL")
+"RTN","CWMAPP01",25,0)
+ ;;2,60
+"RTN","CWMAPP01",26,0)
+ ;;7,"KEY")
+"RTN","CWMAPP01",27,0)
+ ;;CWMA GENERAL MD COL^4
+"RTN","CWMAPP01",28,0)
+ ;;7,"VAL")
+"RTN","CWMAPP01",29,0)
+ ;;3,250
+"RTN","CWMAPP01",30,0)
+ ;;8,"KEY")
+"RTN","CWMAPP01",31,0)
+ ;;CWMA GENERAL MD COL^5
+"RTN","CWMAPP01",32,0)
+ ;;8,"VAL")
+"RTN","CWMAPP01",33,0)
+ ;;4,200
+"RTN","CWMAPP01",34,0)
+ ;;9,"KEY")
+"RTN","CWMAPP01",35,0)
+ ;;CWMA GENERAL MD COL^6
+"RTN","CWMAPP01",36,0)
+ ;;9,"VAL")
+"RTN","CWMAPP01",37,0)
+ ;;5,47
+"RTN","CWMAPP01",38,0)
+ ;;18,"KEY")
+"RTN","CWMAPP01",39,0)
+ ;;CWMA SOUND ENABLED^1
+"RTN","CWMAPP01",40,0)
+ ;;18,"VAL")
+"RTN","CWMAPP01",41,0)
+ ;;False
+"RTN","CWMAPP01",42,0)
+ ;;40,"KEY")
+"RTN","CWMAPP01",43,0)
+ ;;CWMA GENERAL MD COL^7
+"RTN","CWMAPP01",44,0)
+ ;;40,"VAL")
+"RTN","CWMAPP01",45,0)
+ ;;6,38
+"RTN","CWMAPP01",46,0)
+ ;;42,"KEY")
+"RTN","CWMAPP01",47,0)
+ ;;CWMA GENERAL CMA STYLE^1
+"RTN","CWMAPP01",48,0)
+ ;;42,"VAL")
+"RTN","CWMAPP01",49,0)
+ ;;Use Menu
+"RTN","CWMAPP01",50,0)
+ ;;43,"KEY")
+"RTN","CWMAPP01",51,0)
+ ;;CWMA GENERAL MPD TAB^1
+"RTN","CWMAPP01",52,0)
+ ;;43,"VAL")
+"RTN","CWMAPP01",53,0)
+ ;;Recipients
+"RTN","CWMAPP01",54,0)
+ ;;44,"KEY")
+"RTN","CWMAPP01",55,0)
+ ;;CWMA GENERAL NMP FREQ^1
+"RTN","CWMAPP01",56,0)
+ ;;44,"VAL")
+"RTN","CWMAPP01",57,0)
+ ;;5
+"RTN","CWMAPP01",58,0)
+ ;;45,"KEY")
+"RTN","CWMAPP01",59,0)
+ ;;CWMA GENERAL MD COUNT^1
+"RTN","CWMAPP01",60,0)
+ ;;45,"VAL")
+"RTN","CWMAPP01",61,0)
+ ;;8
+"RTN","CWMAPP01",62,0)
+ ;;46,"KEY")
+"RTN","CWMAPP01",63,0)
+ ;;CWMA GENERAL PRINTMODE^1
+"RTN","CWMAPP01",64,0)
+ ;;46,"VAL")
+"RTN","CWMAPP01",65,0)
+ ;;Vista
+"RTN","CWMAPP01",66,0)
+ ;;66,"KEY")
+"RTN","CWMAPP01",67,0)
+ ;;CWMA ALLOW ATTACHMENTS^1
+"RTN","CWMAPP01",68,0)
+ ;;66,"VAL")
+"RTN","CWMAPP01",69,0)
+ ;;True
+"VER")
+8.0^22.0
+**END**
+**END**
