Created On:  02 July 2012

Problem:

While building a customer IMS/CBl/ASM Mainframe Express application into Enterprise Developer for Visual Studio, the following error is displayed and the build fails:

********************************************
MM370ANM  Micro Focus Assembler Option Debugger                                                                                                                                                                                                               
                           Copyright (C) 2012 Micro Focus. All rights rsrvd. Vrn 3.1.00                                                                                                                                                                                                  
                           MM370ANM  Assemble: Y9940970                                                                                                                                                                                                                                  
                            000000                                 SAMTUMSG CSECT                 
                            000000                                 SAMTUMSG AMODE    31           
                             000000                                 SAMTUMSG RMODE    ANY          
                            000000 F0F0F0F1                                 DC       CL4'0001'    
                            000004 C6C5D3C1D2E3                             DC       CL79'FELAKTIG
                            000053 F0F0F0F2                                 DC       CL4'0002'    
                            000057 D2D6D5E3D6D5                             DC       CL79'KONTONUMM
                           0000A6 F0F0F0F3                                 DC       CL4'0003'    
                            0000AA D2D6D5E3D6D5                             DC       CL79'KONTONUMM
                           0000F9 5C5C5C5C                      1          DC       CL4'****'    
                            0000FD                               1          END                   
                           Source name has no matching CSECT name, Y9940970                               
                           Created---------ASM\\Y9940970.IDF                                               
                           total elapsed seconds     =           0                                        
                            ********************************************************************************
                           MM370ASM      0 errors found - end of processing                               
                            ********************************************************************************
                           MF370LNK  Micro Focus Assembler      Linkage Editor                            
                           Copyright (C) 2012 Micro Focus. All rights rsrvd. Vrn 3.1.00
                           Link Info. : Options = REPLACE OMF(390) ANIMATE LIST RENT REUS CALL NONCAN    
                           ASMLK0108S : Linking = Y9940970  member not found, Terminated...              
Done building project "Handelsbanken.cblproj" -- FAILED.
Build FAILED.
********************************************

The following compile directives are used:
ANIM NOOPT RENT NOLIST LINK REUS CALL AMODE(31) RMODE(31) NOMPC NOATT SYSPARM()

The .IDF file is generated automatically into the source folder, Assembler .OBJ  file is generated in asm project directory and the *.390 modules are generated and placed in the project root directory.

Resolution:

There is a mf370ctl.cfg file that ships in the installation bin folder.  It contains environment variables that control file locations. This file can be copied to the Visual Studio project folder.  The copy in the project folder overrides the copy in the Enterprise Developer bin folder. 
The SYSLIN environment variable controls the output location of OBJ files and the SYSLMOD environment variable controls the output location for the .390 files.  You can set these environment variables in the mf370ctl.cfg file or if you prefer, you can simply set these as environment variables. 

Note that when we added assembler support to Visual Studio we added the assembler IDE properties as they were in Mainframe Express.  There was no provision in the Manframe Express IDE to set the output location for the obj files or executable .390 files.  The difference was that in Mainframe Express the .OBJ and .390 file went in the LOADLIB folder with the other executables, but by default in Visual Studio the files are going into the same folder as the assembler source.

Incident #2579396