Hilbert Transform for FPGA

Hello,
I am currently struggling trying to recreate the Hilbert transform onto the FPGA keeping all the numbers to a maximum of 32bit and the processing time to a small enough tick count that I can run two signals of 100KHz through it.
I have a working system in LabVIEW windows but am really having issues when trying to only use integer numbers.
I am trying to calculate the Hilbert transform of real-valued function
Xr (t)® Xˆ (t),
the analytical signal:
X (t) X (t) i Xˆ (t)and the instantaneous phase and frequency. Unfortunately this is proving more of a challange than I was hoping so was wandering if anyone had any ideas. I have attached all of the equations I am trying to reproduce, just dont think my maths is currently up to standards. Thankyou.
Pete
Attachments:
calculations.JPG ‏39 KB

Hi, Attached is the code,
The problem I am having is that this needs to be implemented not only on FPGA  but on a point by point basis so that I can implement the instantaneous phase and frequency on my latest signal value and calculate my desired output , a pulse of one or zero based on the most recent value I have recieved. I have tried doing a FFT input, multiply by -j and FFT-1, instead of the hilbert, though I am having problems merging the buffers that the two are using so that it functions as a point by point system on the FPGA.
Thank you.
Peter
Attachments:
Hilbert.vi ‏208 KB

Similar Messages

  • Envelope detection using hilbert transform labview

    I'm performing signal envelope detector using Hilbert transform however having problems. I have searched and tried some ways on forum but it still not been. I have refer the following article for my project 
    I'm looking forward you see and correct errors happen.
    Thanks so much.
    Attachments:
    Signal Envelope Detector.vi ‏127 KB
    sData.zip ‏903 KB
    Shulkin_-_HF_Acceleration_in_Enveloping_in_Labview_2.pdf ‏434 KB

    Thanks for your answer.
    Make your idea is quite similar to the way I have done. After thoroughly study I have a better understanding of the Hilbert transform and taking the signal envelope.
    This is a project completed repair. However, the envelope does not seem to be beautiful.
    Hope everyone has comments for issues in order to I can handle more perfect for your project.
    Again thanks for comments.
    Attachments:
    Signal Envelope Detector.vi ‏127 KB
    sEMG_1.zip ‏903 KB

  • How to find the phase difference between two signals using Hilbert transform

    hi, 
        I am new to LabView.... I am trying to find phase difference between two signals. I sucessfuly found out the phase difference between two predefined waves using single tone measurement. .... But I really want to know how can I measure phase difference between two signals( not predefined... ie we don't know the initial conditions) using hilbert transform or any transformation techniques (without using zero cross detection).. I tried by using hilbert transform based on algorithm... bt I am getting error.... plz help me
    Attachments:
    phase_differece.vi ‏66 KB

    you could try something similar to this, for each table pair that you want to compare:
    SELECT 'TABLE_A has these columns that are not in TABLE_B', DIFF.*
      FROM (
            SELECT  COLUMN_NAME, DATA_TYPE, DATA_LENGTH
              FROM all_tab_columns
             WHERE table_name = 'TABLE_A'
             MINUS
            SELECT COLUMN_NAME, DATA_TYPE, DATA_LENGTH
              FROM all_tab_columns
             WHERE table_name = 'TABLE_B'
          ) DIFF
    UNION
    SELECT 'TABLE_B has these columns that are not in TABLE_A', DIFF.*
      FROM (
            SELECT COLUMN_NAME, DATA_TYPE, DATA_LENGTH
              FROM all_tab_columns
             WHERE table_name = 'TABLE_B'
             MINUS
            SELECT COLUMN_NAME, DATA_TYPE, DATA_LENGTH
              FROM all_tab_columns
             WHERE table_name = 'TABLE_A'
          ) DIFF;that's assuming, column_name, data_type and data_length are all you want to compare on.

  • Hilbert Transform and Error

    Hi,
    I found this VI on the NI discussion forums whilst trying to determine the phase angle between a voltage and current signal and it has proved a great help.
    However, I don't quite understand how the VI works (mainly what the Hilbert function and the error clusters actually do and what effect they have on the VI). Could anyone explain to be how these functions work? I have attached a picture of the VI to clarify my question.
    Thanks very much.
    Andrew
    Attachments:
    hilbert2.jpg ‏32 KB

    Hi Andrew,
    what the Hilbert transform do: see wikipedia.org or here
    error clusters: this function (Error clusters from error code) adds a new error cluster in case the Hilbert transform gives one i.e. the error code is unequal to zero...
    You should use error clusters in all your functions as they easily provide means for dataflow programming!
    Message Edited by GerdW on 09-11-2007 11:44 AM
    Best regards,
    GerdW
    CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
    Kudos are welcome

  • Error while activating transformation for a infocube.

    hi experts,
    This is Lalitha.I am new to BI7.
    I am trying to load data from flatfile into infocube.I have loaded master data successfully.while creating datasource for transactional data i am getting warning  :External length specification will be ignored.
    Even then I was able to load data into PSA.Now i am trying to create transformation for the infocube, but I am getting a error :Conversion type missing
    and Field /BIC/IO_PRC9 must be assigned to an InfoObject
    I have mentioned the infoObjects for datasource in the fields tab.
    Any suggestions will be appreciated.
    Thanks in advance.
    regards,
    Lalitha

    Hi,
    Some times we have to assign manually as system does not create automatically 1:1 rule in some cases which i don't know.
    Click on = at transformation and you will get the window, Under assign objects you can assign required fields to target field. this will clear your second error.
    For first error -
    If conversion type is missed for Price object. - Did you create the Price KF with Fixed currency or 0currency. if it is 0currency, in source system you should have one extra field with the units for Price field. As per iam concerned, If it is fixed currency it should activate - delete that particular transformation and recreate it.
    Thats what i used to do. i got the result.
    Have a fun
    Cheers,
    Shrinu

  • Error while creating transformation for DSO in SAP BI

    While creating a transformation for DSO in SAP BI, I got an error "Data source xxx (FS_xxx) does not exist in version A". I would like to know what this error is all about and how to resolve this issue.
    Thanks.
    Bhusan

    Hi Bhusan,
    You have to activate your datasoure to make it as an ACTIVE version.
    SO in RSA1>Modelling>Datasouces--> find your datasource name and activate it first.
    Then create your transformation and continue with other steps.
    Hop it helps
    Regards,
    Arun.M.D

  • HELP PLS -exception in deploy transformation for "0ANALYSIS_PATTERN"

    Hi All,
    I have a serious problem here. Please help me here...thanks
    We have recently upgraded our BI 7.0 system from BI ABAP - 10 to
    Support Package Stack - 16, which includes BI ABAP - 18 and BI JAVA -
    16. After the upgrade we are facing problems running any query on the
    portal. We get the same consistent error throughout. The portal error
    message is enclosed. I tried installing 0Analysis_Pattern many times
    but it didn't work.
    Secondly when that didn't work I tried running RSPOR_SETUP, in step 2 I
    get the error message, Different ABAP and JAVA support package.
    SAP came back with a reply saying to do BI JAVA config using template installer. We did that, all looks fine. We also ran the Netweaver Diagnostic tool and all looks fine there as well except the ADS is not configured( I doubt this error is anything to do with ADS as we are not using abode export)
    We went through all these notes, 917950, 937697 and 983156 for the configuration.
    But again when we run the RSPOR_SETUP we get the same error message: Different ABAP and JAVA support package
    Also I ran queries using RSRT ....when I execute using the ABAP Web works fine but opens in port 8000, but when I execute using JAVA web it throws the same error message again as below using port 50000. Also I get the same error message when I open 0ANALYSIS_PATTERN using WAD and try to execute it.
    Has anyone faced this problem before?
    Error message below
    500 Internal Server Error
      BEx Web Application
    To avoid this exception see the steps below. To help SAP better investigate this issue, you will need to provide the diagnostic information from these steps.
    1. Most likely, the issue you are experiencing has already been corrected. Please make sure that the most recent patch level is deployed on your system according to notes 1033246 and 1011241. Starting with Support Package Stack 16 patch level 30, BI Java is delivered according to the synchronized delivery process described in the note 1033246.
    2. Please ensure that NetWeaver Business Intelligence Diagnostics & Support Desktop Tool  does not report any issues on your server according to note 937697. You can start it by clicking here (administrator permissions are required).
    3. When opening any customer message on this issue, please attach:
    Support Desktop Tool support info ZIP  file according to note 937697,
    Required information for reproduction  according to note 948490.
    Error Summary
    Exception occured while processing the current request; this exception cannot be handled by the application or framework
    If the information on this page does not help you locate and correct the cause of the problem, contact your system administrator
    To facilitate analysis of the problem, keep a copy of this error page Hint: Most Web browsers allow you to select all content, and copy and paste it into an empty document (such as in an email or simple text file)
    Root Cause
    The initial exception that caused the request to fail was:
    General exception in deploy transformation for object "0ANALYSIS_PATTERN"
    com.sap.ip.bi.base.exception.BIBaseRuntimeException: General exception in deploy transformation for object "0ANALYSIS_PATTERN"
    at com.sap.ip.bi.deploytime.BISP2Jsp.convert(BISP2Jsp.java:555)
    at com.sap.ip.bi.webapplications.runtime.jsp.portal.service.template.PortalTemplateAccessService.getTemplateContent(PortalTemplateAccessService.java:90)
    at com.sap.ip.bi.webapplications.runtime.preprocessor.Preprocessor.parseTemplate(Preprocessor.java:163)
    at com.sap.ip.bi.webapplications.runtime.xml.XmlTemplateAssembler.doInit(XmlTemplateAssembler.java:79)
    at com.sap.ip.bi.webapplications.runtime.template.TemplateAssembler.init(TemplateAssembler.java:128)
    Log ID 0017A4AB12A7006B00000395000016180004605B78DEE173
    Details: Full Exception Chain
    System Environment
    Server
    BI Java Release: 7 - Patch level: 0000000016 - Description: BI Web Applications Java - Additional info:  - Production mode: true
    BI ABAP Release: 700 - Patch level: 0018 - Description: SAP NetWeaver BI 7.0 (GBDCLNT100) - Additional info:  - Production mode: true
    Java Virtual Machine Java HotSpot(TM) 64-Bit Server VM - Sun Microsystems Inc. - 1.4.2_15-b02
    Operating System Windows 2003 - ia64 - 5.2
    Context
    ACCESSIBLE false
    CACHE true
    CONTENT_PADDING true
    COUNTRY 
    DEBUG false
    DEBUG_LEVEL 0
    DEBUG_MESSAGES false
    DEBUG_TEXTS false
    DEFAULT_FONT 
    DISPLAY_STACK_TRACE_IN_ERROR_PAGES true
    LANGUAGE en
    Master System Alias GBDCLNT100
    NAVIGATION_NODE_ACTIVE_IVIEW pcd:portal_content/com.sap.pct/platform_add_ons/com.sap.ip.bi/iViews/com.sap.ip.bi.bex
    PROFILING false
    Query String (Initial Browser Request) QUERY=TEST30
    RTL false
    Request URL
    SAP_BW_IVIEW_ID pcd:portal_content/com.sap.pct/platform_add_ons/com.sap.ip.bi/iViews/com.sap.ip.bi.bex
    SERVER_URL_PREFIX
    THEME_NAME sap_tradeshow
    TRACE false
    TRAY_TYPE PLAIN
    Time Tue Jan 13 11:24:52 GMT 2009
    USE_HTTPS_FOR_ADS false
    USE_SAP_EXPORT_LIB false
    User SERCOWNKN (USER.R3_DATASOURCE.SERCOWNKN)
    VALIDATION_DATA false
    Deployed SCAs
    SCA Version SP Patch Compiled Deployed
    ADSSAP 7.00 16 0 2008-06-10 11:48:09 BST 2008-12-29 12:21:02 GMT
    BASETABLES 7.00 16 0 2008-06-10 12:02:26 BST 2008-12-29 12:02:50 GMT
    BI-BASE-S 7.00 17 23 2008-12-24 10:27:08 GMT 2009-01-07 11:53:24 GMT
    BI-IBC 7.00 16 0 2008-06-10 17:29:06 BST 2008-12-29 12:45:13 GMT
    BI-REPPLAN 7.00 16 0 2008-06-10 18:46:18 BST 2008-12-29 12:59:08 GMT
    BI-WDALV 7.00 16 0 2008-06-10 18:46:28 BST 2008-12-29 12:57:58 GMT
    BIWEBAPP 7.00 17 23 2008-12-24 10:27:42 GMT 2009-01-07 11:52:59 GMT
    BI_MMR 7.00 16 0 2008-06-10 12:03:07 BST 2008-12-29 12:21:38 GMT
    BI_UDI 7.00 16 0 2008-06-10 12:03:25 BST 2008-12-29 12:30:20 GMT
    CAF 7.00 16 0 2008-06-10 19:14:45 BST 2008-12-29 12:34:53 GMT
    CAF-KM 7.00 16 0 2008-06-10 18:52:06 BST 2008-12-29 13:12:43 GMT
    CAF-UM 7.00 16 0 2008-06-10 19:14:53 BST 2008-12-29 12:22:26 GMT
    CORE-TOOLS 7.00 16 0 2008-06-10 12:06:18 BST 2008-12-29 12:03:19 GMT
    EP-PSERV 7.00 16 0 2008-06-10 17:37:42 BST 2008-12-29 13:00:07 GMT
    EP-WDC 7.00 16 0 2008-06-10 15:20:00 BST 2008-12-29 13:01:10 GMT
    EPBC 7.00 16 0 2008-06-10 17:36:02 BST 2008-12-29 12:23:03 GMT
    EPBC2 7.00 16 0 2008-06-10 17:36:14 BST 2008-12-29 13:01:15 GMT
    EP_BUILDT 7.00 10 0 2006-10-24 18:44:00 BST 2007-10-03 17:16:57 BST
    JLOGVIEW 7.00 16 0 2008-06-10 11:07:00 BST 2008-12-29 12:03:55 GMT
    JSPM 7.00 16 0 2008-06-10 11:07:00 BST 2008-12-19 11:42:33 GMT
    KM-KW_JIKS 7.00 16 0 2008-06-10 12:09:28 BST 2008-12-29 12:23:19 GMT
    KMC-BC 7.00 16 0 2008-06-10 17:38:03 BST 2008-12-29 13:02:33 GMT
    KMC-CM 7.00 16 0 2008-06-10 17:38:59 BST 2008-12-29 13:03:37 GMT
    KMC-COLL 7.00 16 0 2008-06-10 17:39:23 BST 2008-12-29 13:04:00 GMT
    LM-PORTAL 7.00 16 0 2008-06-10 18:55:57 BST 2008-12-29 13:04:05 GMT
    LM-TOOLS 7.00 16 0 2008-06-10 19:19:13 BST 2008-12-29 12:40:40 GMT
    NET-PDK 7.00 16 0 2008-06-10 17:39:31 BST 2008-12-29 12:53:38 GMT
    RTC 7.00 16 0 2008-06-10 17:39:47 BST 2008-12-29 12:53:44 GMT
    RTC-STREAM 7.00 16 0 2008-06-10 17:39:48 BST 2008-12-29 12:44:16 GMT
    SAP-EU 7.00 16 0 2008-06-10 18:57:14 BST 2008-12-29 13:11:27 GMT
    SAP-JEE 7.00 16 0 2008-06-10 12:14:29 BST 2008-12-29 12:04:52 GMT
    SAP-JEECOR 7.00 16 0 2008-06-10 12:16:00 BST 2008-12-29 12:08:11 GMT
    SAP_BUILDT 7.00 10 0 2006-10-21 20:06:00 BST 2007-10-03 17:17:12 BST
    SAP_JTECHF 7.00 16 0 2008-06-10 12:17:05 BST 2008-12-29 12:09:31 GMT
    SAP_JTECHS 7.00 16 0 2008-06-10 12:24:43 BST 2008-12-29 12:29:00 GMT
    UMEADMIN 7.00 16 0 2008-06-10 19:27:45 BST 2008-12-29 12:41:03 GMT
    UWLJWF 7.00 16 0 2008-06-10 17:40:28 BST 2008-12-29 13:04:23 GMT
    VCBASE 7.00 16 0 2008-06-10 17:40:33 BST 2008-12-29 13:13:00 GMT
    VCFLEX 7.00 16 0 2008-06-10 17:41:04 BST 2008-12-29 12:55:50 GMT
    VCFRAMEWORK 7.00 16 0 2008-06-10 17:41:13 BST 2008-12-29 12:56:00 GMT
    VCKITBI 7.00 16 0 2008-06-10 17:34:47 BST 2008-12-29 12:44:17 GMT
    VCKITGP 7.00 16 0 2008-06-10 17:41:13 BST 2008-12-29 12:44:20 GMT
    VCKITXX 7.00 16 0 2008-06-10 17:41:13 BST 2008-12-29 12:44:21 GMT
    WDEXTENSIONS 7.00 16 0 2008-06-10 18:58:51 BST 2008-12-29 13:13:18 GMT
    Full Exception Chain
    Log ID 0017A4AB12A7006B00000395000016180004605B78DEE173
    com.sap.ip.bi.base.exception.BIBaseRuntimeException: Error during conversion of the Web template "0ANALYSIS_PATTERN from the master system     at com.sap.ip.bi.webapplications.runtime.jsp.portal.service.template.PortalTemplateAccessService.getTemplateContent(PortalTemplateAccessService.java:95)     at com.sap.ip.bi.webapplications.runtime.preprocessor.Preprocessor.parseTemplate(Preprocessor.java:163)     at com.sap.ip.bi.webapplications.runtime.xml.XmlTemplateAssembler.doInit(XmlTemplateAssembler.java:79)     at com.sap.ip.bi.webapplications.runtime.template.TemplateAssembler.init(TemplateAssembler.java:128)     at com.sap.ip.bi.webapplications.runtime.base.Template.doInit(Template.java:113)     at com.sap.ip.bi.webapplications.runtime.base.PageObject.doInit(PageObject.java:286)     at com.sap.ip.bi.webapplications.runtime.base.PageObject.init(PageObject.java:261)     at com.sap.ip.bi.webapplications.runtime.base.ItemRenderer.init(ItemRenderer.java:39)     at com.sap.ip.bi.webapplications.runtime.impl.Page.initPageObject(Page.java:4995)     at com.sap.ip.bi.webapplications.runtime.impl.Page.createPageObject(Page.java:5342)     at com.sap.ip.bi.webapplications.runtime.impl.Page.setTemplate(Page.java:6537)     at com.sap.ip.bi.webapplications.runtime.impl.Page.doSetTemplateCommand(Page.java:6249)     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)     at java.lang.reflect.Method.invoke(Method.java:324)     at com.sap.ip.bi.util.MethodInvoker.callMethod(MethodInvoker.java:101)     at com.sap.ip.bi.webapplications.runtime.command.CommandProcessorHelper.processCommand(CommandProcessorHelper.java:415)     at com.sap.ip.bi.webapplications.runtime.command.CommandProcessorHelper.processCommand(CommandProcessorHelper.java:330)     at com.sap.ip.bi.webapplications.runtime.base.CommunicationProcessor.processCommand(CommunicationProcessor.java:175)     at com.sap.ip.bi.webapplications.runtime.impl.Page.processCommandSuper(Page.java:1821)     at com.sap.ip.bi.webapplications.runtime.impl.Page.processCommandInternal(Page.java:1787)     at com.sap.ip.bi.webapplications.runtime.impl.Page.processCommandSequence(Page.java:2497)     at com.sap.ip.bi.webapplications.runtime.impl.Page.doProcessRequest(Page.java:4018)     at com.sap.ip.bi.webapplications.runtime.impl.Page._processRequest(Page.java:3021)     at com.sap.ip.bi.webapplications.runtime.impl.Page.processRequest(Page.java:2864)     at com.sap.ip.bi.webapplications.runtime.controller.impl.Controller.doProcessRequest(Controller.java:994)     at com.sap.ip.bi.webapplications.runtime.controller.impl.Controller._processRequest(Controller.java:883)     at com.sap.ip.bi.webapplications.runtime.controller.impl.Controller.processRequest(Controller.java:860)     at com.sap.ip.bi.webapplications.runtime.jsp.portal.services.BIRuntimeService._handleRequest(BIRuntimeService.java:362)     at com.sap.ip.bi.webapplications.runtime.jsp.portal.services.BIRuntimeService.handleRequest(BIRuntimeService.java:279)     at com.sap.ip.bi.webapplications.runtime.jsp.portal.components.LauncherComponent.doContent(LauncherComponent.java:24)     at com.sapportals.portal.prt.component.AbstractPortalComponent.serviceDeprecated(AbstractPortalComponent.java:209)     at com.sapportals.portal.prt.component.AbstractPortalComponent.service(AbstractPortalComponent.java:114)     at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)     at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)     at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)     at com.sapportals.portal.prt.component.PortalComponentResponse.include(PortalComponentResponse.java:215)     at com.sapportals.portal.prt.pom.PortalNode.service(PortalNode.java:645)     at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)     at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)     at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)     at com.sapportals.portal.prt.core.PortalRequestManager.runRequestCycle(PortalRequestManager.java:753)     at com.sapportals.portal.prt.connection.ServletConnection.handleRequest(ServletConnection.java:240)     at com.sapportals.portal.prt.dispatcher.Dispatcher$doService.run(Dispatcher.java:524)     at java.security.AccessController.doPrivileged(Native Method)     at com.sapportals.portal.prt.dispatcher.Dispatcher.service(Dispatcher.java:407)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)     at com.sap.engine.services.servlets_jsp.server.servlet.InvokerServlet.service(InvokerServlet.java:156)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)     at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)     at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)     at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)     at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)     at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)     at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)     at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)     at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)     at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)     at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)     at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)     at java.security.AccessController.doPrivileged(Native Method)     at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)     at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)Caused by: com.sap.ip.bi.base.exception.BIBaseRuntimeException: General exception in deploy transformation for object "0ANALYSIS_PATTERN"     at com.sap.ip.bi.deploytime.BISP2Jsp.convert(BISP2Jsp.java:555)     at com.sap.ip.bi.webapplications.runtime.jsp.portal.service.template.PortalTemplateAccessService.getTemplateContent(PortalTemplateAccessService.java:90)     ... 63 more

    Hi,
    Please help.
    How did you manage to resolve this. I have similar issues.
    I have SAP_ALL and can run the reports without problems but users have error message
    general exception in deploy transformation for object "WEB_TEMPLATE"
    thanks

  • XSLT transformation for deep structure .....

    Hello,
            I am trying to do an XSLT transformation for a deep structure HAP_S_PDF_DOCUMENT (see it in SE11), I have managed to achieve this. but not with perfection. i still get some redundant data and data have been experiencing Data duplication. I was hoping if you people point out the what is wrong in the transfromation. The data repeats for every once under node DATA and then under node of the refered structure name. Besides it also create a blank row even if the record is 0. I am mostly facing problem with nodes T_ELEMENTS. T_COL_CELL and T_FIELD. These are the nested structures, Can anybody help / guide me to achieve these transforamtion?
    <xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:sap="http://www.sap.com/sapxsl" version="1.0">
    <xsl:strip-space elements="*"/>
    <xsl:template match="HAP_DOCUMENT">
    <xsl:element name="HAP_DOCUMENT" namespace="">
    <xsl:apply-templates select="MAIN_HEADER"/>
    <xsl:apply-templates select="T_ELEMENTS"/>
    <xsl:apply-templates select="T_STAT_CHG_BUTTONS"/>
    <xsl:apply-templates select="S_APPRAISAL_ID"/>
    <xsl:apply-templates select="S_HEADER"/>
    <xsl:apply-templates select="POSITIONS"/>
    <xsl:element name="STAT_CHG_BUTTON">
    <xsl:value-of select="../STAT_CHG_BUTTON"/>
    </xsl:element>
    <xsl:element name="OFFLINE_ID">
    <xsl:value-of select="OFFLINE_ID"/>
    </xsl:element>
    <xsl:element name="BSP_FLAG">
    <xsl:value-of select="BSP_FLAG"/>
    </xsl:element>
    <xsl:element name="ROLE">
    <xsl:value-of select="ROLE"/>
    </xsl:element>
    <xsl:element name="APPRAISAL_YEAR">
    <xsl:value-of select="APPRAISAL_YEAR"/>
    </xsl:element>
    </xsl:element>
    </xsl:template>
    <xsl:template match="MAIN_HEADER">
    <xsl:element name="MAIN_HEADER">
    <xsl:for-each select="ZBGAPR_FORM_HEADER">
    <xsl:element name="DATA">
    <xsl:copy-of select="child::node()"/>
    </xsl:element>
    </xsl:for-each>
    </xsl:element>
    </xsl:template>
    <xsl:template match="T_ELEMENTS">
    <xsl:element name="T_ELEMENTS">
    <xsl:for-each select="ZHAP_S_PDF_ELEMENTS">
    <xsl:element name="DATA">
    <xsl:apply-templates select="T_COL_CELL"/>
    <xsl:copy-of select="child::node()"/>
    </xsl:element>
    </xsl:for-each>
    </xsl:element>
    </xsl:template>
    <xsl:template match="T_COL_CELL">
    <xsl:element name="T_COL_CELL">
    <xsl:for-each select="ZHAP_S_PDF_COL_CELL">
    <xsl:element name="DATA">
    <xsl:apply-templates select="T_FIELD"/>
    <xsl:copy-of select="child::node()"/>
    </xsl:element>
    </xsl:for-each>
    </xsl:element>
    </xsl:template>
    <xsl:template match="T_FIELD">
    <xsl:element name="T_FIELD">
    <xsl:for-each select="ZHAP_S_PDF_FIELD">
    <xsl:element name="DATA">
    <xsl:apply-templates select="T_VAL_VALUES"/>
    <xsl:apply-templates select="T_VAL_RANGES"/>
    <xsl:copy-of select="child::node()"/>
    </xsl:element>
    </xsl:for-each>
    </xsl:element>
    </xsl:template>
    <xsl:template match="T_VAL_VALUES">
    <xsl:element name="T_VAL_VALUES">
    <xsl:for-each select="HAP_S_BODY_CELL_VAL_VALUES">
    <xsl:element name="DATA">
    <xsl:copy-of select="child::node()"/>
    </xsl:element>
    </xsl:for-each>
    </xsl:element>
    </xsl:template>
    <xsl:template match="T_VAL_RANGES">
    <xsl:element name="T_VAL_RANGES">
    <xsl:for-each select="HAP_S_BODY_CELL_VAL_RANGES">
    <xsl:element name="DATA">
    <xsl:copy-of select="child::node()"/>
    </xsl:element>
    </xsl:for-each>
    </xsl:element>
    </xsl:template>
    <xsl:template match="T_STAT_CHG_BUTTONS">
    <xsl:element name="T_STAT_CHG_BUTTONS">
    <xsl:for-each select="HAP_S_BODY_CELL_VAL_RANGES">
    <xsl:element name="DATA">
    <xsl:copy-of select="child::node()"/>
    </xsl:element>
    </xsl:for-each>
    </xsl:element>
    </xsl:template>
    <xsl:template match="S_APPRAISAL_ID">
    <xsl:element name="S_APPRAISAL_ID">
    <xsl:copy-of select="node()"/>
    </xsl:element>
    </xsl:template>
    <xsl:template match="S_HEADER">
    <xsl:element name="S_HEADER">
    <xsl:apply-templates select="S_TEXTS"/>
    <xsl:apply-templates select="T_APPRAISER"/>
    <xsl:apply-templates select="T_APPRAISEE"/>
    <xsl:apply-templates select="T_PART_APPRAISER"/>
    <xsl:apply-templates select="T_OTHERS"/>
    <xsl:apply-templates select="S_STATUS"/>
    <xsl:apply-templates select="S_DATES"/>
    <xsl:apply-templates select="S_DISPLAY"/>
    </xsl:element>
    </xsl:template>
    <xsl:template match="POSITIONS">
    <xsl:element name="POSITION">
    <xsl:for-each select="ZBGHR_APR_POSITION_DET">
    <xsl:element name="DATA">
    <xsl:copy-of select="child::node()"/>
    </xsl:element>
    </xsl:for-each>
    </xsl:element>
    </xsl:template>
    <xsl:template match="S_TEXTS">
    <xsl:element name="S_TEXTS">
    <xsl:copy-of select="node()"/>
    </xsl:element>
    </xsl:template>
    <xsl:template match="T_APPRAISER">
    <xsl:element name="T_APPRAISER">
    <xsl:for-each select="HAP_S_PDF_APPRAISER">
    <xsl:element name="DATA">
    <xsl:copy-of select="child::node()"/>
    </xsl:element>
    </xsl:for-each>
    </xsl:element>
    </xsl:template>
    <xsl:template match="T_APPRAISEE">
    <xsl:element name="T_APPRAISEE">
    <xsl:for-each select="HAP_S_PDF_APPRAISEE">
    <xsl:element name="DATA">
    <xsl:copy-of select="child::node()"/>
    </xsl:element>
    </xsl:for-each>
    </xsl:element>
    </xsl:template>
    <xsl:template match="T_OTHERS">
    <xsl:element name="T_OTHERS">
    <xsl:for-each select="HAP_S_PDF_OTHERS">
    <xsl:element name="DATA">
    <xsl:copy-of select="child::node()"/>
    </xsl:element>
    </xsl:for-each>
    </xsl:element>
    </xsl:template>
    <xsl:template match="T_PART_APPRAISER">
    <xsl:element name="T_PART_APPRAISER">
    <xsl:for-each select="HAP_S_PDF_PART_APPRAISERS">
    <xsl:element name="DATA">
    <xsl:copy-of select="child::node()"/>
    </xsl:element>
    </xsl:for-each>
    </xsl:element>
    </xsl:template>
    <xsl:template match="T_PART_APPRAISER">
    <xsl:element name="T_PART_APPRAISER">
    <xsl:for-each select="HAP_S_PDF_PART_APPRAISERS">
    <xsl:element name="DATA">
    <xsl:copy-of select="child::node()"/>
    </xsl:element>
    </xsl:for-each>
    </xsl:element>
    </xsl:template>
    <xsl:template match="S_STATUS">
    <xsl:element name="S_STATUS">
    <xsl:copy-of select="node()"/>
    </xsl:element>
    </xsl:template>
    <xsl:template match="S_DATES">
    <xsl:element name="S_DATES">
    <xsl:copy-of select="node()"/>
    </xsl:element>
    </xsl:template>
    <xsl:template match="S_DISPLAY">
    <xsl:element name="S_DISPLAY">
    <xsl:copy-of select="node()"/>
    </xsl:element>
    </xsl:template>
    <xsl:template match="STAT_CHG_BUTTON">
    </xsl:template>
      <xsl:template match="OFFLINE_ID">
    </xsl:template>
      <xsl:template match="BSP_FLAG">
    </xsl:template>
      <xsl:template match="ROLE">
    </xsl:template>
      <xsl:template match="APPRAISAL_YEAR">
    </xsl:template>
    </xsl:transform>
    Regards,
    Shishir.P

    "XSLT transformation for a deep structure"
    which way abap to xml or xml to abap?
    you may want to check this thread
    Re: Problem converting XML back to structure using XSLT

  • General exception in deploy transformation for object "ZWAD_PPQM_Q009.

    hi experts
    I am getting this error when i am tring to access  report
    General exception in deploy transformation for object "ZWAD_PPQM_Q009.
    thanks

    Hi,
    Please help.
    How did you manage to resolve this. I have similar issues.
    I have SAP_ALL and can run the reports without problems but users have error message
    general exception in deploy transformation for object "WEB_TEMPLATE"
    thanks

  • Can you use the Vocal Transformer for Live Show?

    Can you use the Vocal Transformer for Live Show? I have automations set up in my vocal track using the vocal transformer and would like my vocals to adjust accordingly while performing live. Is this possible to configure and if so, how do I set it up at the venue?

    Vocal Transformer opens in MainStage. All controls in VT are visible & editable in MS. Don't set it up at the venue. Set it up in one or more patches before you leave your house. You will need up to twelve sliders or knobs plus one or two buttons on your controller to get the most out of it.

  • Row to Column Transformation for Millions of records

    Hi Members,
    I need to transform data from two stage tables which has data in PIM structure (data stored as separate records ) to target table which has a flat structure (data stored in a single record). One of the stg tables has data volume of 45M and other has 5M records.The challenge I am seeing here is to transform such huge data into single table with considerable performance.What would be the ideal way to transform such huge data?Also can we have multiple programs running at the same time to achieve transformation for such huge data load quicker?
    Just to add my Oracle Version is 10g.
    Thanks
    Edited by: Sonic on Jul 12, 2010 1:33 AM

    Still no version number, still no code, and no explain plan report.
    Is there a better, faster way to do it?, I don't know ... how could I or anyone else as you've not told us what you are doing beyond the level of "my car won't start tell me why?"
    This should help you understand the issue from my keyboard.
    http://www.builderau.com.au/strategy/developmentprocess/soa/How-developers-should-ask-for-help/0,339028278,339299138,00.htm

  • How to design a stable IIR-Filter for FPGA?

    Hi, I´m new to Labview for FPGA and currently trying to design a lowpass-filter (for a digital mixer, more or less). It should work with a sample-frequency of 200kHz, a passband edge frequency of 3Hz and a stopband edge frequency of 8Hz. An FIR-filter would have a too large order to be implemented, an IIR one seems more practicable. For the design of the filter I'm using the digital filter design toolkit, refering to its manual and the casestudy with analyzing, modeling, simulating and generating a fixed-point filter. Now, I have problems to get a stable filter. While the manual states to adjust the coefficents by trial and error, the designed filter never matches the floating-point reference. Does anyone have experience in creating such filters? Or a hint, how to optimize the coefficient finding process?
    Thanks in advance!
    thilo

    LabVIEW FPGA 8.20 does include a Butterworth filter function (1st, 2nd and 4th order) in the FPGA palette. You can configure it directly using a dialog on your FPGA diagram. The cutoff may not be quite as sharp as you want but it could be an option for you to consider. Once you have configured the filter VI, you have the option of opening up the subVI with the code that is generated based on your filter parameters, which would allow you to further configure the code directly.
    I have attached the configuration dialog with the settings you specified.
    Message Edited by Christian L on 11-16-2006 09:27 AM
    Christian Loew, CLA
    Principal Systems Engineer, National Instruments
    Please tip your answer providers with kudos.
    Any attached Code is provided As Is. It has not been tested or validated as a product, for use in a deployed application or system,
    or for use in hazardous environments. You assume all risks for use of the Code and use of the Code is subject
    to the Sample Code License Terms which can be found at: http://ni.com/samplecodelicense
    Attachments:
    filterdialog.JPG ‏44 KB

  • Transformations for 2LIS_13_VDHDR,2LIS_12_VCHDR/ITM,2LIS_11_VAHDR/ITM

    Hello all,
    I implementing std sales & distribution module in BI 7.0.
    So i am getting transaformation only for 2LIS_13_VDITM.
    All other datasources 2LIS_13_VDHDR, 2LIS_12_VCHDR, 2LIS_12_VCITM, 2LIS_11_VAHDR,2LIS_11_VAITM are in 3.x.
    i am not getting any transformation in BI contents.
    So what can i do now?
    can i migrate all these in BI 7 ? if i migrate these to BI 7 , can i get its transaformation , mappings etc  after migration.
    if i do it manually transaforamtion etc one by one where can i get mappings details for these datasource.
    if i migrate these and when i create transformation for it , is automatically mapping will happen or i need to do it manually?
    Please help.
    Thanks,
    Sadanand

    Hi,
    We dont have the TFs for those dataosurce.
    Activate the Updaterules and migrate them to RFs.Even after migration from UR , you still need to do the coding of start routines,,etc.
    Regards,
    Anil Kumar Sharma .P

  • SLT based ABAP Transformation for MSSQL source

    Hi,
    In our current landscape we have MSSQL source replicating to HANA via SLT. However we are unable to add ABAP transformation(Rule Assignment and Table Settings) as LTRS does not recognize the source system table structure. Is it a known issue or we are missing something here?
    Are the transformations for non-SAP sources supported?
    Regards, Rahul

    Hi Tobias,
    After clicking 'Yes', as shown in the second screenshot, we do not get source table structure. If we want to add transformations to existing table fields,how should we proceed.
    Should we add all columns manually in this screen?
    Which is the expected SP for DMIS 2011, where you think this will be resolved?We are currently on DMIS2011 SP6.
    Regards,
    Rahul

  • Media Foundation transforms for BackgroundMediaPlayer

    So I want to apply some media foundation effect to the backgoundmediaplayer samples before they get rendered. While this seems an obvious mission with the media stream source class, I do not really have the time to implement media stream sources for all
    formats supported by windows phone just to get to the raw PCM inside them, and then do the things I want to do with them.
    The media foundation transforms does something similar to what I want to do. Is there any way I can use a transform for BackgroundMediaPlayer, intercept PCM samples delivered by built-in system codecs and modifiy them accordingly? Or do I need to relay on
    media stream sources?

    Hello,
    I'm sorry if I caused any confusion. Let me try to offer some clarification. The MediaStreamSource was designed specifically to address
    the need to ingest and parse 3rd party streaming protocols such as HLS. In this scenario you connect to, parse and pass the encoded video samples downstream and allow the hardware to decode the samples.
    While it is certainly possible to implement a stream source and codec in the same MediaStreamSource context you may not
    get the performance needed to present a good user experience. Again we just didn't intend the MediaStreamSource to be used in this way.
    While using C++ to implement the decoder may improve performance there is still a need to marshal the data between managed and unmanaged
    code. Once in managed code the GC may run and cause sample delivery to stop unexpectedly. As I'm sure you are aware actively managing the buffer size can help to reduce this effect at the expense of latency. This is an extremely advanced topic.
    That said, your business requirements may allow for dropouts to occur. This is up to you to decide. I just want to make sure that you are
    aware of the repercussions of choosing this architecture and that it is not a scenario that we intended or tested.
    So... Because of this I would never recommend this approach. I guess if it works great but be aware of the risk.
    Okay, let’s talk about the BackgroundMediaPlayer architecture a bit. Windows Phone 8 (WP8) was a three process architecture. Windows Phone 8.1 (WP8.1) is a two process architecture.
    I won’t go into how WP8 works. In WP8.1 you have a UI process and a background player process. The background player process is registered as a singleton instance OOPServer.
    This means that the background player will only be created if one does not already exist in the current app container.
    The background player process contains your background audio code. Just like Windows 8 this process is given a PLM exemption that allows it to continue to run in the background
    while your UI process can be suspended. Once the exemption is registered, management of the background player process is handed off to the media manger. The media manager coordinates closely with the PLM to ensure there is only one active background player
    process at a given time. This means only one app can be playing audio in the background at any time.
    Okay so if you have gotten this far you get some potentially good news and an apology. I humbly admit that I was incorrect. I spent most of the afternoon going over
    specs and the phone source code. I found that it should theoretically be possible to add additional components to the underlying background player MF topology.
    From what I have been able to decipher, you can register a custom MFT in the background player code and have it automatically join the topology when it is created. You can
    do this via the
    MediaExtensionManger. Sounds good right?  Keep in mind this is theoretical. I haven’t tried this and there may be some caveats, explained below.
    Here are what I can see as caveats: The MediaExtensionManger only allows you to register certain types of MFTs. In particular encoders, decoders and stream handlers. Also you
    can’t override any of the MF components that are handled by a known format. In other words you can’t override our MP4 decoder. So it’s not as easy as just saying “stick my MFT here”.
    After much thought it still might be possible to get a MFT to join the topology after the decoder. In the case of audio I’m thinking that we need to create an MFT that takes
    uncompressed audio in and outputs uncompressed audio. The question here is: “How does the topology manager evaluate components available to participate in the topology?”
    The topology we want looks like this: S->D->C->R where C is our custom MFT. The decoder (D) outputs PCM. The renderer (R) takes PCM as the input. Our C takes PCM as
    an input and output. When the topology loader builds the topology it connects the nodes from left to right. The question is: “Will our C be evaluated before the R?” If our C is evaluated before the R then we are money. However if the R is evaluated first or
    C will be left out of the topology. I honestly don’t know enough about the intricacies of the topology loader to say with any certainty if this will work (and what about format conversions?)
    Again we are trying to do things that the original developers never intended and didn’t test. If it works great! Please let me know. If it doesn’t I will certainly request
    this feature for the next version of the Phone.
    I hope this helps,
    James
    Windows SDK Technologies - Microsoft Developer Services - http://blogs.msdn.com/mediasdkstuff/

Maybe you are looking for