0% found this document useful (0 votes)
21 views28 pages

New Developer Configuration

abcdefghi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views28 pages

New Developer Configuration

abcdefghi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 28

BuyEfficient Setup Instructions

Table of Contents
Preamble............................................................................................................................................................................... 2
Development Machine Configuration...................................................................................................................................2
Configure Windows Environment and VS2017..................................................................................................................2
Configure Node.js and npm...............................................................................................................................................3
Install Visual Studio Extensions.........................................................................................................................................4
Get the Source Code.........................................................................................................................................................4
Configure BuyEfficient Classic...........................................................................................................................................5
Add a user and give Everyone group access..................................................................................................................5
Configure Microsoft IIS 8...................................................................................................................................................7
General Site Setup.........................................................................................................................................................8
Create App Pools...........................................................................................................................................................9
Add the Website..........................................................................................................................................................10
Add the Classic Site to the main Site...........................................................................................................................11
Add Virtual Directories to Main Site............................................................................................................................14
Install Oracle Data Access Components (ODAC) Downloads 12c....................................................................................14
Download and Install ODAC 12c 64-bit version and 32-bit version.............................................................................14
Create/Modify some setup files and paths.................................................................................................................15
Set up ODBC driver......................................................................................................................................................16
Set Up the Project and Run the Site................................................................................................................................17
Setup IIS......................................................................................................................................................................20
Log in to the Site..........................................................................................................................................................20
Available Test Credentials...........................................................................................................................................20
Web.Config Configurable Settings...................................................................................................................................21
Web Services.......................................................................................................................................................................22
Concord Fax.....................................................................................................................................................................22
Adding a Web Reference to Your Project....................................................................................................................22
Accessing the Developer Tools....................................................................................................................................24
Troubleshooting.................................................................................................................................................................. 24
Allow oracle driver tracing with Web.config...................................................................................................................24
Runtime Error - Oracle.DataAccess.Client.Oracle.Exception...........................................................................................25
Other Website Errors......................................................................................................................................................25
Http 500 error.............................................................................................................................................................25
IIS Reset.......................................................................................................................................................................25
The W3SVC service has stopped. You cannot start IIS until you have restarted this service.......................................25
Localhost running very slowly.....................................................................................................................................25
Trusting IIS Express SSL certificate...................................................................................................................................25
Debugging Visual Basic Legacy Code...............................................................................................................................26
Change Log.......................................................................................................................................................................... 27

Preamble

This is the setup document for new developers coming onto the BuyEfficient project. If you follow these directions, you
should be able to configure a locally hosted website that connects directly to BuyEfficient servers and database instances.

Development Machine Configuration

Configure Windows Environment and VS2017


1. Make sure that Visual Studio 2017 is installed with the following components:
a. ASP.NET and Web Development
b. Node.js Development
c. NOTE: If you are unsure about which components are installed, download and run the Visual Studio
2017 installer and click on “Modify” under Visual Studio 2017:

d. Installed components should have a blue checkbox with a white check next to it:
2. Install Microsoft ASP.NET Framework 4.6.1 from Microsoft’s website and run through the installer instructions.
This step is also required for any production IIS servers.

Configure Node.js and npm


1. Download and install the latest version of node.js
a. https://nodejs.org/en/
b. When installing node.js, make sure you install “npm package manager”, and make sure that “Add
to PATH” is selected

2. Setup visual studio to use globally installed node.js and npm


a. Open Visual Studio 2017
b. Click on “Tools” -> “Options”
c. Select “Projects and Solutions” -> “Web package management” -> “External Web Tools”
d. Move the entry for “PATH” to be the second on the list:
e. This step ensures that Visual Studio uses the newly downloaded Node.js and npm, instead of the
versions that come pre-installed with Visual Studio. Many newer packages require the newer
versions of npm and Node.js and will not be installed unless you’ve gone through this step.

Install Visual Studio Extensions


1. Open Visual Studio 2017
2. Click on “Tools” -> “Extensions and updates” and install “Webpack Task Runner”
a. Click on “Online” in the left pane and then search for “Webpack”
3. Download and install “Visual Studio 2017 Installer Projects”
a. https://marketplace.visualstudio.com/items?
itemName=VisualStudioProductTeam.MicrosoftVisualStudio2017InstallerProjects
b. While this step is not required for iBuyEfficient.com development, it is required for development of EDI
services and the Raven service.

Install DevArt DotConnect


1. Download the latest version of DotConnect from secure.devart.com (you will need credentials used to purchase
the DotConnect license in order to download)
2. This step must be done AFTER VS 2017 is installed

Get the Source Code


1. Get access to the TFS instance located at https://ibuyefficient.visualstudio.com
a. Associate your MS Office account with the VS Online solution
2. Navigate to https://ibuyefficient.visualstudio.com with these credentials and go to “Overview”.
3. On the top-right corner, under “Visual Studio”, click on “Open in Visual Studio” and choose/create the
appropriate project location and let it download and map to the TFS server.
4. The correct source code solution is BuyEfficient_v3
a. https://ibuyefficient.visualstudio.com/DefaultCollection/BuyEfficient_v3
Configure BuyEfficient Classic
1. Create a folder C:\BuyEfficient
2. Map the TFS project BuyEfficient_ClassicCode to this folder and perform a “Get” operation
3. You should now have the folders classic, dlls, and BuildProcessTemplates in C:\BuyEfficient.

Add a user and give Everyone group access


1. Add a user
a. Press windowsKey + X and click on “Computer Management”
b. Go to Local users and Groups and then Users
i. Right click in blank space and add a new user
ii. Name him buyefficient_service
iii. Check “Password never expires” and give him a password you will remember (it will be used
again in the next section)
iv. Go to the “Member Of” tab and click add | advanced | Find Now
v. Add IIS_IUSRS group and then click Ok
vi. Click “OK” to save the user

2. Add another user, sys075NASbk: This username and its credentials must be this exactly as it gives you access to
important virtual directories!
a. Give him the password Wu6egeBu
i. This must match exactly, otherwise you can’t be authenticated against the virtual directories
b. Make him a member of the group IIS_IUSRS
c. Check password never expires
3. Give the Everyone group Full control to C:\BuyEfficient folder
a. Go to C:\BuyEfficient | right click on the folder | click “Properties”
b. Under the security tab, give the Everyone group full control of the folder!

$results = Get-ChildItem C:\BuyEfficient\dlls

ForEach ($result in $results) { IF($result.Extension -eq '.dll') {regsvr32.exe $result.FullName} }

4. Manually register all .dll files in the C:\BuyEfficient\dlls folder


a. Open the command prompt as an administrator
b. Type in the following commands to manually register the .dll files. Before each .dll, you will need to
specific the file path that it is in. So for example, for the first one, I write:
i. regsvr32 C:\BuyEfficient\dlls\ArchiveIt.dll
regsvr32 C:\BuyEfficient\dlls\ArchiveIt.dll

regsvr32 C:\BuyEfficient\dlls\aspftp.dll

regsvr32 C:\BuyEfficient\dlls\AspUpload.dll

regsvr32 C:\BuyEfficient\dlls\BASE64.DLL

regsvr32 C:\BuyEfficient\dlls\BECP.dll

regsvr32 C:\BuyEfficient\dlls\eXchangeML.dll

regsvr32 C:\BuyEfficient\dlls\jmail.dll

regsvr32 C:\BuyEfficient\dlls\PPASP.dll

regsvr32 C:\BuyEfficient\dlls\PPCOM.dll

regsvr32 C:\BuyEfficient\dlls\PPConnect.dll

regsvr32 C:\BuyEfficient\dlls\PPContext.dll

regsvr32 C:\BuyEfficient\dlls\PPInterface.dll

regsvr32 C:\BuyEfficient\dlls\PPInternal.dll

regsvr32 C:\BuyEfficient\dlls\PPRO_Utilities.dll

regsvr32 C:\BuyEfficient\dlls\PPRUN.dll

regsvr32 C:\BuyEfficient\dlls\Pxml.dll

%windir%\Microsoft.NET\Framework\v4.0.30319\regasm "C:\BuyEfficient\dlls\FTPWrapper.dll" /tlb:FTPWrapper.tlb /codebase FTPWrapper

c. You need to this again for all WSCs in the \dlls\wsc folder but with 32-bit REGSVR32.exe. Navigate to
the SYSWOW64 folder before calling REGSVR32.EXE. Refer to the syntax below (enter in the complete
file path before the .wsc file)
d. $results = Get-ChildItem C:\BuyEfficient\dlls\wsc
e. ForEach ($result in $results) { IF($result.Extension -eq '.wsc') {&"c:\WINDOWS\SYSWOW64\
regsvr32.exe" $result.FullName} }
C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\button.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\errhandler.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\icon.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\pagination.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\ppimages50.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\ppui.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfbid.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfbuyer.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfbuyer_5040.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfbuyer_5124.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfbuyerpo.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfcommon.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfmarketing.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfpo.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfpo_5040.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfpo_5124.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfprint.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfprint_5040.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfprint_5124.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfreqs.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfrfq.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfshopcart.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfsupplier.wsc

C:\WINDOWS\SYSWOW64\REGSVR32.EXE C:\BuyEfficient\dlls\wsc\wfuser.wsc
Configure Microsoft IIS 8
1. Enable IIS8 as described here: http://www.howtogeek.com/112455/how-to-install-iis-8-on-windows-8/
a. Make sure you have ASP.NET 4.5 checked under “WWW Services”
b. Also make sure you ASP checked for the classic site to work!

2. Open Internet Information Services Manager (IIS Manager)

General Site Setup


1. Under “Connections” on the left side, click on the very top host (should be the name of your computer)
2. In the center grid, find “Compression” under IIS settings and make sure both dynamics and static compression
is turned on it is turned on.
3. Similarly, after this find HTTP Response Headers and remove the X-powered-by header (for security reasons)

Create App Pools


1. Create an AppPool called Site124AppPool

a. Under “Connections” on the left side, expand the option | right click on Application Pools | click Add
Application Pool
b. Enter the name Site124AppPool | Make sure .NET CLR version is v4.0.30319 | Click “OK”

c. After you have created it, right click on it in the Applications Pools section, go to Advanced Settings:
i. Change Enable 32-bit Applications to True | modify Shutdown Time Limit (seconds) to 600.
ii. Under “Process Model” edit the value of Identity| select custom account | add your
buyefficient_service user that you created earlier
2. Create another AppPool called 124ClassicAppPool.
a. Set .NET CLR Version to No Managed Code | Set Managed Pipeline Mode to Classic | Click “OK”
b. Go again to advanced settings
i. Set Enable 32-bit Applications to True | Ping Maximum Response Time to 900 | Ping Period
(seconds) to 600

Install Url Rewrite


1. Run the Web Platform installer
2. Navigate to Products and search for “URL Rewrite”
3. Install

Add the Website


1. Next, under connections, right click on “Sites” > Add Website
a. Under site name, enter “Site124”
b. For Application pool, select your newly created Site124AppPool
c. For Physical Path, navigate it to the BuyEfficient.Com.Web.MVC client folder
i. For example, mine is: C:\Source\BuyEfficient_v3\BuyEfficient\Clients\
Com.BuyEfficient.Web.MVC
d. For binding, use HTTPS and enter in the port 44300 and leave everything else as default
i. You can use a self-signed certificate to setup https here
ii. This step is required to be able to debug in https
iii. NOTE: Although the same steps are used to setup the IIS sites in DEV, SQA and Production, the
port numbers used in those environment are different
e. Click “OK”

Add the Classic Site to the main Site


1. Under Site124, right click and select “Add Virtual Directory”
a. Set Alias as ClassicWeb
b. Set Physical Path as C:\BuyEfficient\classic (this is wherever you extracted your Classic code into
c. Click “OK”
d. Right click on ClassicWeb and select Convert to Application
e. For application pool, select 124ClassicAppPool
f. Select “OK”
g. It should look something like the screenshot below when you are done:

Configure Additional Settings for Classic Site


4. Edit the 124ClassicAppPool Recycling Settings
a. Under Memory Based Maximums set Private Memory Usage (in KB) to 230400 to compensate for
memory leaking (230.4 MB)
5. Go to the very top level of your websites (in screenshots, mine is “CELEDON-DERIK”), select it, and at the
bottom of the middle grid click Configuration Manager

a. At the top in the section dropdown list, select system.applicationHost/webLimits and change
connectionTimeout to 00:20:00 (20 minutes)

Configure ASP Settings for the classic Web Site


1. Click on ClassicWeb and then in the center pane under IIS double-click ASP
a. This step is required to be able to login to the site when debugging
b. The ClassicWeb folder must exist in the IIS site you want to debug
c. If this folder is not setup, you will see the error message “Login failed (classic)” when trying to log in

2. Configure the settings listed/shown below:


a. Enable Parent Paths to True to enable you to use relative paths
b. Set Maximum Requesting Entity Body Limit to 5242880 (bytes = 5MB; allows larger attatchments)
c. Set Script Time-out to 00:20:00 (minutes)
d. Set Enable Client-Side Debugging to True
e. Set Send Errors to Browser to True

Configure Virtual Directories for Classic


3. Left-click on your ClassicWeb site and click Add Virtual Directories and add the following directories:

attach - maps to \\54.173.18.125\attach

pictures - maps to \\54.173.18.125\pictures

BE_QuickGuides_v2 - maps to \\54.173.18.125\BE_QuickGuides_v2

MyDashboard - maps to \\54.173.18.125\MyDashboard

4. For each virtual directory, make sure you “Connect As” the specific user you created earlier, sys075NASbk
and you use its correct password Wu6egeBu
5. Next, click on ClassicWeb and in the center grid under IIS click Authentication. Click Anonymous
Authentication, edit (in the right hand panel), and then use the specific user sys075NASbk

Add Virtual Directories to Main Site


Add Resources Directories for files
1. Right click on the Site124/Content/Resource folder and click “Add Virtual Directory.”
a. Under “Alias”, enter MyDashboard
b. Under Physical path, enter the UNC path \\54.173.18.125\MyDashboard
i. Alternatively, if you download the dashboard files onto your local machine, you can use the
actual physical path of those instead
c. Select “Connect As” and use the user sys075NASbk with password Wu6egeBu similar to what we
did above.
2. Do this again, but instead:
a. Alias = pictures
b. Physical path = \\54.173.18.125\pictures
c. The “Connect As” user is the same as above.
3. Right click on Site124 folder and click “Add Virtual Directory”
a. Under “Alias”, enter uploads
b. Under Physical path, enter the UNC path \\54.173.18.125\attach
c. Select “Connect As” and use the user sys075NASbk with password Wu6egeBu similar to what we
did above.

Install Oracle Data Access Components (ODAC) Downloads 12c

Download and Install ODAC 12c 64-bit version and 32-bit version
1. Go to http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html
a. Find ODAC121012_x64.zip and download
2. http://www.oracle.com/technetwork/topics/dotnet/utilsoft-086879.html
3. Find ODTwithODAC121012.zip and download
4. Apply the next few steps to both installations (with 1 exception specified in one of the steps)
5. Run setup.exe, and then click Next.

6. Select the Client option:

7.
8. Click Next.
Specify the Oracle Base as C:\oracle\12c_64:
FOR THE 32 bit VERSION, make sure it is specified as 12c_32 INSTEAD!

Click Next.

Deselect all optional Components:

Click Next, and then Install, and then Exit.

Create/Modify some setup files and paths


a) After you have successfully completed both installations, Create a Symbolic Link for each
Oracle Home using Command Prompt (cmd.exe). The commands are listed below. Make
sure you run cmd as administrator:
> cd C:\Windows\System32

> mklink /d 12c C:\oracle\12c_64\product\12.1.0\client_1

> cd C:\Windows\SysWOW64

> mklink /d 12c C:\oracle\12c_32\product\12.1.0\client_1

b) Edit Path environment variable to reflect new Symbolic Link:


In Control Panel > System and Security > System:
Click Advanced system settings > Environment Variables > Path > Edit
Replace ALL Oracle paths with just this one: C:\windows\system32\12c
Also reate a new local variable named TNS_ADMIN with the path (value) :
- C:\oracle\12c_32\product\12.1.0\client_1\Network\Admin

c) Navigate to C:\oracle\12c_32\product\12.1.0\client_1\Network\Admin\Sample\
- Copy tnsnames.ora to C:\oracle\ … \Admin
- Copy and paste the text from the below file into the copied tnsnames.ora file

Do the same for the files located in the 64-bit version (C:\oracle\12c_64\ ...)

Set up ODBC driver

i) Find the 32 bit ODBC Administrator (odbcad32.exe) in C:\Windows\SysWOW64\


ii) Go to the “System DSN” tab | Select “Add”
a. Find the “Oracle in OraClient 12Home1” option | click Finish
iii) For Data Source Name enter PurchasePro_Merant
iv) For TNS Service Name enter dev1 (this is the name of their Amazon web services RDS
instance)
v) For User Id enter PPROSYS (this is a predefined user account on AWS
vi) Click “Test Connection”
a. For the password, use beach
b. Make sure it can connect successfully

Set Up the Project and Run the Site


1. Open the project
a. Run VS2013 as administrator by using your shortcut link
b. Open the BuyEfficient.MVC.DEV solution file

2. Enable Nuget to download missing packages automatically


a. Right click on the SOLUTION and select “Manage NuGet Packages for Solution”
b. Click on Settings
c. Under Nuget Package Manager, select “Allow Nuget to download missing packages”
d. Right click again on the Solution and click “Enable Nuget Package Restore”
3. Get all npm packages
a. Right click on package.json under “Com.Web.BuyEfficient.MVC”, and click “Restore Packages”
b. Do the same for the Mobile project

c. This will restore all required packages in the node_modules folder

4. Hide node_modules
a. Your solution will not build successfully unless node_modules is hidden.
b. Navigate to your solutions in Windows Explorer
c. Click on “Clients” -> “Com.BuyEfficient.Web.MVC”
d. Right click the node_modules folder, click on “Properties”
e. Check “Hide” and click apply
f. When prompted, select “Apply changes to this folder only”

5. Reduce the maximum number of parallel project builds to reduce compilation errors
a. Go to Tools > Options
b. Under “Projects and Solutions” select “Build and Run”
i. Set the maximum number of parallel project builds to 1
6. Set Com.BuyEfficient.Web.MVC as the StartUp Project by right-clicking on it and selecting the option.

Setup IIS
1. In order to

Log in to the Site


1. Clean and Build the solution
2. Navigate to http://localhost:44300/
a. Login using the following credentials:
i. Username: buycat
ii. Password: awsdev1

Available Test Credentials


Your local machine and the DEV server point to the same DB instance, meaning that both can access the site using the
same credentials. The SQA TEST machine points to a different DB instance, and must use separate credentials. Outlined
below are several usernames that you can use for testing. Site 124 is “BuyEfficient” and Site 126 is “Shuster”.

localhost & DEV


For localhost & DEV instances, all passwords are set to awsdev1

Usernames for BuyEfficient (Site124) with any special notes about the account:

 buycat (admin)
 andreb (has all catalogs)
 castanos
 pprs/admin
o pprs/gm
 pprs/dof
 pprs/dos
 pprs/sales
 ddts/admin
o ddts/gm
 hcay/admin
Usernames for Shuster:

 dshuster
 bcain

SQA TEST
For SQA TEST, you may use all of the accounts above. The only difference is that the password is awssqa

PRODUCTION
There are a few test accounts set up in production. These must be requested at the time you wish to test the production
environment.

Web.Config Configurable Settings

The “Web.config” of this site has several configurable settings that change whether you are developing on localhost,
using a dev machine, or on a production server. They are outlined below:

Setting Name Type Setting Description

The name of the default landing/login page. Is either


ClassicLoginPage String
index124.asp for the normal site or index126.asp for Shuster.

True or False. Determines whether to show the joyride modal


ShowJoyride Boolean
dialogue as well as the link to it on the Dashboard.

True or False. Determines whether to show the tile with the


ShowIGT Boolean
"Start Tour" button on the Dashboard.

Recall notices in the Dashboard will show if their "Last last edit
RecallLifespan Int
time" was at or below this many days ago. For example

Shows that the dashboard notification about a user's


ShowPasswordExpiringDays Int
password expiring if the timer on it is at this value or less.

VmNewsroomPath String The path to the folder that contains the "newsroom" files.

The Path to the folder that contains the "commodity corner"


VmCommodityAnnouncementsPath String
(buyefficient) or "anouncements" (shuster) files.

The path to the folder that contains the "supplier highlights"


VmSupplierHighlightsPath String
files.
VmRecallsPath String The path that contains the "recalls" files.
The path that contains the "quick links" (also known as FAQs)
VmQuicklinksPath String
files

This is the text of the title in the tile for "commodity corner"
CommodityAnnouncementsTitle String or "announcements" files. This changes based on whether the
site is BuyEfficient or Shuster.
The directory for the "Resources" folder which contains the
ResourcesDirectory String virtual directories for the dashboard files and some product
pictures. As of now, it is Content/Resources.

True or False that hides/shows the tile with "How-to Videos".


ShowHowToVideos Boolean Also hides/shows the "how-to videos" section below the
resource center.

True or False that turns Google Analytics tracking "on" or


GoogleAnalytics Boolean
"off".

The token that corresponds to a GA site. BuyEfficient currently


GoogleAnalyticsToken String has three tokens (DEV, SQA, Production) for each
site(iBuyEfficient, Shuster), e.g. for dev it is UA-65835470-1.

The main web.config files for the Desktop and Mobile contain multiple transformation files for each site/environment
combination. For example, Web.DevBuyEfficient.config is used to generate the web.config file to be used for the
iBuyEfficientSite in DEV. These transformations are applied on build. Generated web.config files are dropped in the
“configs” folder.

The steps for building and placing these files in specific folders are set up in the .csproj file. In order to view or edit these
steps, navigate to the project folder using Windows Explorer, right click on the .csproj file and click edit.

Web Services
BuyEfficient has subscribed to certain web services to help accomplish its goals. Credential information, implementation,
and other details will be listed here.

Concord Fax
BuyEfficient utilizes this SOAP-based service in order to automatically transit Offline Purchase Orders automatically to
the offline supplier

Adding a Web Reference to Your Project


The service must be referenced in your project if for some reason it is not already. You can do this with the following
steps, obtained from this link here:

1. Right click on the project and click “Add Service Reference”


2. Click “Advanced”

3. Click “Add Web Reference”


4. In the URL input box, enter https://ws.concordfax.com/fax/v5/faxws.wsdl and click the arrow button next to it.

5. Under “Web Reference Name”, make sure you enter ConcordFaxService as the name. This is the name it is
referenced by in the code.

Accessing the Developer Tools


In order BuyEfficient must be contacted so that they can create a new profile for you as a developer with “Outgoing” fax
privileges. You can then access Concord Fax’s Developer Portal at https://developer.concordfax.com/. This portal has
lists of all the functions, documentation, and has plenty of examples for you to work with.

Troubleshooting
Allow oracle driver tracing with Web.config
<oracle.dataaccess.client>
<settings>
<!--<add name="DllPath" value="C:\oracle\bin"/>-->
<!--<add name="FetchSize" value="131072"/>
<add name="PromotableTransaction" value="promotable"/>
<add name="StatementCacheSize" value="10"/>-->
<add name="TraceFileName" value="C:\temp\odpnet2_webconf.trc"/>
<add name="TraceLevel" value="8"/>
<add name="TraceOption" value="1"/>
</settings>
</oracle.dataaccess.client>

1. Insert this code snippet into your Web.Config file


a. TraceFileName is the location and name of your .trc file (trace text file)
ii. Make sure you put this in a folder than doesn’t require administrator privileges to write to,
otherwise the trace will fail silently
b. TraceLevel is a value that determines how much detail the trace file will contain.
c. TraceOption
d. More details about these options can be found in Oracle’s documentation.

Runtime Error - Oracle.DataAccess.Client.Oracle.Exception


If you get the “Server error in ‘/’ Application (Unhandled Execution Error)” upon trying to load your site, you may have to
reset IIS Server.

1. To Reset IIS server, open up command prompt as an administrator


a. Type iisreset
b. After it is done with the operation, exit.
2. Afterwards, open up IIS Manager, go to your Site124 website, and under “Manage Website”, click Restart.

Other Website Errors


Http 500 error
This happens commonly when the folder your site in IIS Manager is pointed to cannot be accessed by it. To fix:

 open up IIS Manager | Select Site 124 | Click Basic Settings


 Select Test Settings… and you may see that the second test fails and says something along the lines of that the
Path is not accessible.
o If this is the case, navigate to Root folder of your site (BuyEfficient_v3) | right-click and select properties
o Go to Sharing | Share | Type the name Everyone | Select Add | click Share | click OK
 If you go back and test the settings in IIS Manager again, and the second test should be Authorized

IIS Reset
You might consider using iisreset if you are getting any kind of database connection errors after any major database
installations or configuration changes. It will not damage anything and may fix your problem.

The W3SVC service has stopped. You cannot start IIS until you have restarted this
service.
Open Command Prompt as administrator and type net start w3svc to start the service.

Localhost running very slowly


Since the domain “localhost” is resolved to 127.0.0.1 in DNS, usually flushing the DNS Revolver cache makes it run
slightly faster.

 Open cmd as an administrator


o Use the command ipconfig/all to flush the DNS revolver cache

Trusting IIS Express SSL certificate


In order to use SSL while debugging directly from Visual Studio, you will need to add the localhost certificate to the
trusted root CA.

1. Start debugging the SSL application in Internet Explorer


2. Install the certificate used to your personal folder
3. Open mmc.exe and add the “Certificates” snap-in
4. Expand Personal -> Certificates and Trusted Root Certification Authorities -> Certificates
5. Click on Personal -> Certificates
6. Drag the localhost certificate from the right pane and drop it on Trusted Root Certification Authorities ->
Certificates in the left pane
7. Close IE and open it again, go to the development site
8. This certificate should now be trusted

Debugging Visual Basic Legacy Code

1. View this question on stack overflow


a. In regards to step 1, make sure you enable server-side debugging on the classic app site’s ASP section
b. Clarification of Step 6:
i. After you click “Attach to Process”, before you attach it to w3wp.exe, right above the selection
area there is an Attach to: drop down. Open that, make sure you uncheck whatever is default,
and only check Script.
Change Log

Date Author Change


5/1/2015 Derek Initial Version pre change log
5/12/2015 Derek, Aaron Removed setup instructions involving
MSBuild

Removed all references to individuals


and made certain instructions more
generic

Added change log and Table of


contents
5/13/2015 Derek Added troubleshooting for website
Http 500 Error

Added headings to the Configure IIS


section; added part about making
sure ASP feature is on in IIS Manager
5/14/2015 Derek Added section about IIS classic site
configuration settings
5/15/2015 Derek Changed some of the classic
documentation to reflect the need to
put the dlls folder in a specific
location
5/21/2015 Derek Added section to IIS about enabling
compression on the server as well as
disabling certain header information
5/26/2015 Derek Added troubleshooting about
flushing the DNS revolver cache
5/27/2015 Derek Added https alternative configuration
to “Configure MS IIS 8”
6/1/2015 Derek Added section about configuring
virtual directories with sys075NASbk
user
6/5/2015 Derek Updated link for creating self-signed
cert issued to localhost by localhost
8/25/2015 Derek Added section “Add Virtual
Directories to Main Site” with “Add
‘MyDashboard’” sub heading
10/8/2015 Derek Edited section “Add Virtual
Directories to Main Site”. Added new
section “Web.config Config settings.”
10/29/2015 Derek Modified “Configure BuyEfficient
Classic” code location. Added list of
usernames for logging in/testing.
12/19/2015 Derek Added in list of configurable
web.config settings.
2/29/2016 Derek Added information about Concord
Fax Service.
2/14/2018 Kevat Updated refrences to VS 2017, added
steps for using node.js and npm
10/23/2018 Jon Added powershell script to register
dlls. Added install steps for URL
Rewrite

You might also like