11 Replies Latest reply on Apr 1, 2011 4:44 PM by beyerch2

    FDM Stand Alone

      Hi Guys,

      is it possible with FDM (9.3.1 or or 11.1.2) to install FDM without installing shared services?
      I don't want to connect to HFM or Essbase but just use FDM to transfer data between different other systems (using the pull adapter).

      Thanks in advance,

        • 1. Re: FDM Stand Alone

          Yes this is possible... for all versions lists.

          Thank you,
          • 2. Re: FDM Stand Alone
            Thanks Wayne,

            any suggestions/ documentation how to set it up interacting with MSAD?

            Kind regards,

            • 3. Re: FDM Stand Alone

              If you are using 9.3.1 then MSAD is available in the authentication provider.
              If you are using or higher you will require a custom VBScript placed inside of the loadbalancer.

              Thank you,
              • 4. Re: FDM Stand Alone
                Hi Wayne,

                our installation partner says this only works with the Enterprise adapter.
                We are using the PULL adapter in

                Haver you got a script example that i can use to show them they are wrong?

                Or do you agree that it is impossible to do for the PULL adapter?
                • 5. Re: FDM Stand Alone
                  Hello Mark,

                  Then your installation partner is not correct. The VBScripting options are there for everything else ... while the Enterprise adapter requires you to leverage them; it is not the only thing they are used for.

                  Thank you,
                  • 6. Re: FDM Stand Alone


                    but do you have an example or at least a few hints to give me a headstart...
                    Then i can set it up myself..

                    • 7. Re: FDM Stand Alone
                      Unfortunately I do not. The last time I wrote an MSAD/LDAP integration script it was painful and purged it from my head.
                      You can probably search for an example on the Internet.
                      • 8. Re: FDM Stand Alone
                        John A Booth
                        Hi Marc,

                        Are you only using the FDM product with no other Hyperion products? Curious what's driving the desire to avoid shared services -- if you are integrating with other products it's becoming more and more useful to have shared services especially if you wish to take advantage of Lifecycle Manager.


                        John A. Booth
                        • 9. Re: FDM Stand Alone
                          Hi John,

                          we are using FDM indeed without any other Hyperion products (we're loading data from 8 source systems into JDE).
                          But since we have so much mapping to do and already FDM licenses we decided to use FDM.

                          We would like to install FDM on 1 server and since Shared Services is consuming memory and resources we would like to prevent using it.
                          Also most of the interfaces run scheduled so we have only a few users.. Therefore using a fixed password (no AD) is also an option. But then i still need a script example to try this.

                          • 10. Re: FDM Stand Alone
                            While you can defintely authenticate against Active Directory in vbscript, it is a bit of a pain. (I actually have a couple excel models I use for budgeting where I authenticate users against AD before it preloads their historical data, etc)

                            I cheat a bit on this though as .NET has built in objects for communicating which make it far easier to validate against Active Directory.

                            In vbscript, I pass a username and password to a ASP .NET page which then uses the built in objects to validate the login attempt.


                            Function IsAuthenticatedUser(strUserName As String, strPassword As String) As Boolean
                            'Verify they passed a username
                            strUserName = Trim(strUserName)
                            If strUserName = "" Then
                            IsAuthenticatedUser = False
                            Exit Function
                            End If

                            On Error GoTo errorhandler:

                            'Attempt to validate user
                            Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")
                            URL = "http://<your webserver here>/directorysearch.aspx?u=" & strUserName & "&p=" & Trim(strPassword)
                            objHTTP.Open "GET", URL, False
                            objHTTP.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
                            objHTTP.send ("")

                            Dim SourceHTMLText As String
                            SourceHTMLText = objHTTP.responseText

                            'Check to see if we recieved our True or False response
                            If InStr(1, SourceHTMLText, "Auth=True") > 0 Then
                            IsAuthenticatedUser = True
                            IsAuthenticatedUser = False
                            End If
                            Exit Function

                            IsAuthenticatedUser = False

                            End Function



                            <%@ Page Language="vb" AutoEventWireup="false" Codebehind="DirectorySearch.aspx.vb" Inherits="HyperionPortal.DirectorySearch"%>
                            <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
                                      <asp:Literal id="lit1" runat="server"></asp:Literal>



                            Imports System.DirectoryServices
                            Public Class DirectorySearch
                            Inherits System.Web.UI.Page

                            #Region " Web Form Designer Generated Code "

                            'This call is required by the Web Form Designer.
                            <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

                            End Sub
                            Protected WithEvents lit1 As System.Web.UI.WebControls.Literal

                            'NOTE: The following placeholder declaration is required by the Web Form Designer.
                            'Do not delete or move it.
                            Private designerPlaceholderDeclaration As System.Object

                            Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
                            'CODEGEN: This method call is required by the Web Form Designer
                            'Do not modify it using the code editor.
                            End Sub

                            #End Region

                            Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
                            'Put user code to initialize the page here

                            'Attempt to validate passed parameters
                            If Trim(Request("u")) = "" Or Trim(Request("p")) = "" Then
                            lit1.Text = "Auth=False"
                            'Attempt to validate against Active Directory
                            lit1.Text = "Auth=" & IsUserAuthenticated("<YOUR AD PATH HERE>", "<YOUR DOMAIN HERE", Trim(Request("u")), Trim(Request("p")))
                            End If
                            End Sub

                            Function IsUserAuthenticated(ByVal strAdPath As String, ByVal strDomain As String, ByVal strUserName As String, ByVal strPassword As String) As Boolean

                            Dim deDirectoryEntry As New DirectoryEntry(strAdPath, strUserName & "@" & strDomain, strPassword)

                            Dim obj As Object = deDirectoryEntry.NativeObject
                            'Use Authenticated
                            IsUserAuthenticated = True
                            Catch ex As Exception
                            'Unable to authenticate, return false
                            IsUserAuthenticated = False
                            End Try

                            End Function

                            End Class
                            1 person found this helpful
                            • 11. Re: FDM Stand Alone
                              You could also try this for authenticating in the vbscript although I have no experience with it......