Repeating Grid Map Problem!

My maps app has some serious issues. It often times does not load the correct map info and leaves a repeated grid of another map over and over again instead. Please help.

If restarting the iphone does not work, then you might want to think about restoring the iphone.
If you decide to restore the iphone, this article will help.
http://docs.info.apple.com/article.html?artnum=305744

Similar Messages

  • PI Mapping problem - Repeating target nodes

    Hello PI buddies!
    My PI mapping problem is as follows:
    I have a source IDoc which I wish to map to a JDBC Message Type.
    In the Idoc I have 2 repeating sections that I wish to combine to create a new node in the target for each combination of the 2 repeating sections.  The source and desired target message structures are pasted below.  In summary for every combination of "sales_org" and "relationship" I want to create an "Access" node.  In my example there are 2 "sales_org" and 5 "relationship".  I would therefore like to generate 10 "Access" nodes.
    I want to achieve this if possible using PI mapping and its standard functions.  Please help!
    SOURCE MESSAGE TYPE:
    <?xml version="1.0" encoding="UTF-8" ?>
    <Z_CRMXIF_PARTNER_SAVE_M01>
    <IDOC BEGIN="1">
      <EDI_DC40 SEGMENT="1">
       <TABNAM>EDI_DC40</TABNAM>
      </EDI_DC40>
      <E101CRMXIF_PARTNER_COMPLEX SEGMENT="1">
       <APPL_SNAME>CRMXIF_PARTNER_COMPLEX</APPL_SNAME>
       <E101CRMXIF_PARTNER_HEADER SEGMENT="1">
       </E101CRMXIF_PARTNER_HEADER>
       <E101BUS_EI_CENTRAL_DATA SEGMENT="1">
        <E101BUS_EI_ROLES SEGMENT="1">
         <APPL_SNAME>BUS_EI_ROLES</APPL_SNAME>
         <CURRENT_STATE>X</CURRENT_STATE>
         <E101BUS_EI_BUPA_ROLES SEGMENT="1">
          <APPL_SNAME>BUS_EI_BUPA_ROLES</APPL_SNAME>
          <DATA_KEY>ZBUP02</DATA_KEY>
         </E101BUS_EI_BUPA_ROLES>
         <E101BUS_EI_BUPA_ROLES SEGMENT="1">
          <APPL_SNAME>BUS_EI_BUPA_ROLES</APPL_SNAME>
          <DATA_KEY>ZCRM01</DATA_KEY>
         </E101BUS_EI_BUPA_ROLES>
         <E101BUS_EI_BUPA_ROLES SEGMENT="1">
          <APPL_SNAME>BUS_EI_BUPA_ROLES</APPL_SNAME>
          <DATA_KEY>ZCRM02</DATA_KEY>
         </E101BUS_EI_BUPA_ROLES>
         <E101BUS_EI_BUPA_ROLES SEGMENT="1">
          <APPL_SNAME>BUS_EI_BUPA_ROLES</APPL_SNAME>
          <DATA_KEY>ZCRM03</DATA_KEY>
         </E101BUS_EI_BUPA_ROLES>
         <E101BUS_EI_BUPA_ROLES SEGMENT="1">
          <APPL_SNAME>BUS_EI_BUPA_ROLES</APPL_SNAME>
          <DATA_KEY>ZCRM04</DATA_KEY>
         </E101BUS_EI_BUPA_ROLES>
        </E101BUS_EI_ROLES>
       </E101BUS_EI_CENTRAL_DATA>
       <E101CRMT_BUS_EI_DATA SEGMENT="1">
        <Z101RMT_BUS_EI_R3_SALESAREA SEGMENT="1">
         <APPL_SNAME>ZCRMT_BUS_EI_R3_SALESAREA</APPL_SNAME>
         <Z101ZCRMT_BUS_R3_SALES_AREA SEGMENT="1">
          <APPL_SNAME>ZCRMT_BUS_R3_SALES_AREA</APPL_SNAME>
          <ZZSALES_ORG>1000</ZZSALES_ORG>
          <ZZCHANNEL>01</ZZCHANNEL>
          <ZZDIVISION>00</ZZDIVISION>
         </Z101ZCRMT_BUS_R3_SALES_AREA>
         <Z101ZCRMT_BUS_R3_SALES_AREA SEGMENT="1">
          <APPL_SNAME>ZCRMT_BUS_R3_SALES_AREA</APPL_SNAME>
          <ZZSALES_ORG>2000</ZZSALES_ORG>
          <ZZCHANNEL>01</ZZCHANNEL>
          <ZZDIVISION>00</ZZDIVISION>
         </Z101ZCRMT_BUS_R3_SALES_AREA>
        </Z101RMT_BUS_EI_R3_SALESAREA>
       </E101CRMT_BUS_EI_DATA>
      </E101CRMXIF_PARTNER_COMPLEX>
    </IDOC>
    </Z_CRMXIF_PARTNER_SAVE_M01>
    DESIRED TARGET MESSAGE TYPE:
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:MT_CTX001_JDBC_In xmlns:ns0="http://mycompany.co.uk/pi/CTXIN001">
    <SQLStatement1>
      <dbTable Action="INSERT">
       <Table>customer_relationship</Table>
       <Access>
        <sales_org>1000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZBUP02</relationship>
       </Access>
       <Access>
        <sales_org>2000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZBUP02</relationship>
       </Access>
       <Access>
        <sales_org>1000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM01</relationship>
       </Access>
       <Access>
        <sales_org>2000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM01</relationship>
       </Access>
       <Access>
        <sales_org>1000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM02</relationship>
       </Access>
       <Access>
        <sales_org>2000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM02</relationship>
       </Access>
       <Access>
        <sales_org>1000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM03</relationship>
       </Access>
       <Access>
        <sales_org>2000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM03</relationship>
       </Access>
       <Access>
        <sales_org>1000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM04</relationship>
       </Access>
       <Access>
        <sales_org>2000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM04</relationship>
       </Access>
      </dbTable>
    </SQLStatement1>
    </ns0:MT_CTX001_JDBC_In>
    Edited by: Jim Kendall on Apr 22, 2010 12:48 PM
    Edited by: Jim Kendall on Apr 22, 2010 12:50 PM

    SOURCE MESSAGE TYPE:
    &lt;?xml version="1.0" encoding="UTF-8" ?&gt;
    &lt;Z_CRMXIF_PARTNER_SAVE_M01&gt;
    &lt;IDOC BEGIN="1"&gt;
      &lt;EDI_DC40 SEGMENT="1"&gt;
       &lt;TABNAM&gt;EDI_DC40&lt;/TABNAM&gt;
      &lt;/EDI_DC40&gt;
      &lt;E101CRMXIF_PARTNER_COMPLEX SEGMENT="1"&gt;
       &lt;APPL_SNAME&gt;CRMXIF_PARTNER_COMPLEX&lt;/APPL_SNAME&gt;
       &lt;E101CRMXIF_PARTNER_HEADER SEGMENT="1"&gt;
       &lt;/E101CRMXIF_PARTNER_HEADER&gt;
       &lt;E101BUS_EI_CENTRAL_DATA SEGMENT="1"&gt;
        &lt;E101BUS_EI_ROLES SEGMENT="1"&gt;
         &lt;APPL_SNAME&gt;BUS_EI_ROLES&lt;/APPL_SNAME&gt;
         &lt;CURRENT_STATE&gt;X&lt;/CURRENT_STATE&gt;
         &lt;E101BUS_EI_BUPA_ROLES SEGMENT="1"&gt;
          &lt;APPL_SNAME&gt;BUS_EI_BUPA_ROLES&lt;/APPL_SNAME&gt;
          &lt;DATA_KEY&gt;ZBUP02&lt;/DATA_KEY&gt;
         &lt;/E101BUS_EI_BUPA_ROLES&gt;
         &lt;E101BUS_EI_BUPA_ROLES SEGMENT="1"&gt;
          &lt;APPL_SNAME&gt;BUS_EI_BUPA_ROLES&lt;/APPL_SNAME&gt;
          &lt;DATA_KEY&gt;ZCRM01&lt;/DATA_KEY&gt;
         &lt;/E101BUS_EI_BUPA_ROLES&gt;
         &lt;E101BUS_EI_BUPA_ROLES SEGMENT="1"&gt;
          &lt;APPL_SNAME&gt;BUS_EI_BUPA_ROLES&lt;/APPL_SNAME&gt;
          &lt;DATA_KEY&gt;ZCRM02&lt;/DATA_KEY&gt;
         &lt;/E101BUS_EI_BUPA_ROLES&gt;
         &lt;E101BUS_EI_BUPA_ROLES SEGMENT="1"&gt;
          &lt;APPL_SNAME&gt;BUS_EI_BUPA_ROLES&lt;/APPL_SNAME&gt;
          &lt;DATA_KEY&gt;ZCRM03&lt;/DATA_KEY&gt;
         &lt;/E101BUS_EI_BUPA_ROLES&gt;
         &lt;E101BUS_EI_BUPA_ROLES SEGMENT="1"&gt;
          &lt;APPL_SNAME&gt;BUS_EI_BUPA_ROLES&lt;/APPL_SNAME&gt;
          &lt;DATA_KEY&gt;ZCRM04&lt;/DATA_KEY&gt;
         &lt;/E101BUS_EI_BUPA_ROLES&gt;
        &lt;/E101BUS_EI_ROLES&gt;
       &lt;/E101BUS_EI_CENTRAL_DATA&gt;
       &lt;E101CRMT_BUS_EI_DATA SEGMENT="1"&gt;
        &lt;Z101RMT_BUS_EI_R3_SALESAREA SEGMENT="1"&gt;
         &lt;APPL_SNAME&gt;ZCRMT_BUS_EI_R3_SALESAREA&lt;/APPL_SNAME&gt;
         &lt;Z101ZCRMT_BUS_R3_SALES_AREA SEGMENT="1"&gt;
          &lt;APPL_SNAME&gt;ZCRMT_BUS_R3_SALES_AREA&lt;/APPL_SNAME&gt;
          &lt;ZZSALES_ORG&gt;1000&lt;/ZZSALES_ORG&gt;
          &lt;ZZCHANNEL&gt;01&lt;/ZZCHANNEL&gt;
          &lt;ZZDIVISION&gt;00&lt;/ZZDIVISION&gt;
         &lt;/Z101ZCRMT_BUS_R3_SALES_AREA&gt;
         &lt;Z101ZCRMT_BUS_R3_SALES_AREA SEGMENT="1"&gt;
          &lt;APPL_SNAME&gt;ZCRMT_BUS_R3_SALES_AREA&lt;/APPL_SNAME&gt;
          &lt;ZZSALES_ORG&gt;2000&lt;/ZZSALES_ORG&gt;
          &lt;ZZCHANNEL&gt;01&lt;/ZZCHANNEL&gt;
          &lt;ZZDIVISION&gt;00&lt;/ZZDIVISION&gt;
         &lt;/Z101ZCRMT_BUS_R3_SALES_AREA&gt;
        &lt;/Z101RMT_BUS_EI_R3_SALESAREA&gt;
       &lt;/E101CRMT_BUS_EI_DATA&gt;
      &lt;/E101CRMXIF_PARTNER_COMPLEX&gt;
    &lt;/IDOC&gt;
    &lt;/Z_CRMXIF_PARTNER_SAVE_M01&gt;
    DESIRED TARGET MESSAGE TYPE:
    &lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;ns0:MT_CTX001_JDBC_In xmlns:ns0="http://mycompany.co.uk/pi/CTXIN001"&gt;
    &lt;SQLStatement1&gt;
      &lt;dbTable Action="INSERT"&gt;
       &lt;Table&gt;customer_relationship&lt;/Table&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;1000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZBUP02&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;2000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZBUP02&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;1000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM01&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;2000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM01&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;1000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM02&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;2000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM02&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;1000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM03&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;2000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM03&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;1000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM04&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;2000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM04&lt;/relationship&gt;
       &lt;/Access&gt;
      &lt;/dbTable&gt;
    &lt;/SQLStatement1&gt;
    &lt;/ns0:MT_CTX001_JDBC_In&gt;

  • Mapping problem with Wireless Keyboard and Japanese iPhone

    Hi everyone:
    This seems to be a slightly obscure question -- at least, I can't find a ready answer for it with the search terms I've tried, possibly because most people don't use this particular accessory with the iPhone.
    I have an iPhone 4 that I bought from and use on Softbank, the carrier in Japan, where I live.  While visiting the United States recently, I bought an Apple Wireless Keyboard from an Apple retailer.   I wanted to carry it with me for use with my iPhone, so I would reliably have a convenient way to access the Internet without being confined to the touchscreen keyboard.  (I live in a rural area where WiFi spots are uncommon, but my iPhone's access to Softbank's data network is fairly good and consistent.)
    However, to my frustration, I can't use the keyboard due to a mapping problem.  The Bluetooth connection is fine -- the iPhone can discover the keyboard.  However, the mapping is off: typing "Q" gets me "A," typing "Z" gets me "W", numbers and punctuation are off, etc.  The key point: This is NOT a problem with the International Keyboard settings (under the Settings -> General -> Keyboard -> International Keyboards menu).  I have the Keyboard setting set to QWERTY, which is the layout of the Apple keyboard; I have tried all the other possibilities, just in case.  None of them work.  Setting the Keyboard setting to QWERTY does not make the external QWERTY keyboard map correctly.
    The rather ironic addendum is this: While on a recent trip to Tokyo, I visited the Apple store in Shibuya and, after concluding the main business of my visit (discussing my MacBook's battery problems with an English-speaking staffer), I took out my iPhone and keyboard and asked him about my mapping problem.  He started with the Keyboard menu, tried the same things I had tried, realized they weren't working, and puzzled over the problem for a while.  Then he did this: He hit a key combination (I believe) that brought up a menu on the iPhone's screen.  "Ah, there's your problem," he said, and selected a new setting.  The problem was instantly fixed.
    To my chagrin, however, I neglected to write down what "Ken" had done to fix the problem.  Argh... I was looking at the iPhone upside-down; I'd already taken up more than half an hour; people were waiting, and I guess, being used to living in the countryside now, that I'm not used to Shibuya crowds any more.  Anyway, I didn't take careful notes or ask him to walk me through it, and now I cannot recall or repeat what he did.  And I still can't use my keyboard!
    Any ideas or advice, anyone?  How did "Ken" fix my problem, and how can I repeat it?  Much, much appreciated, in advance.

    THAT'S IT.  Sir, you have solved my problem.  Thank you!!
    And I feel a little silly; this will doubtless seem to an expert as if it should have been obvious all along.  But isn't that always the way in hindsight?
    Here's what happened: The key combination I was trying to remember was "Apple/command + space on the hardware keyboard," as you just said above.  The "menu" it brings up is, apparently, a list of keyboards.  I take it that this list is the same as the list of the "virtual" keyboards on the iPhone?  I have never had more than one external keyboard -- the Apple Wireless -- but I do have several keyboards active virtually, as the iPhone in Japan seems to come with both the "Nihongo Ten-key" and the "Nihongo Romaji" keyboards active, and I added several other languages as well.
    When I hit "Apple/command + space," this list comes up on the iPhone's touchscreen.  Highlighted and checked at the top is "English," just as if it had been selected all along.  But nonetheless, when I first turn on and pair my keyboard with the iPhone, I need to perform this key-combination action, as if to "reselect" English, and then the keyboard promptly starts working properly as QWERTY.  I can only assume that one of the others had been default-selected before -- presumably one of the Nihongo ones? -- and that this was causing the interference.
    Thank you again!  You have made me and my wireless keyboard very happy.

  • PI : Idoc to JDBC scenario : repeating segments mapping issue

    Experts
    Please help.
    Question reg. mapping for ECC idoc to JDBC scenario.
    I am using the ORDRSP idoc which has multiple segments as below.
    IDOC -> multiple E1EDK14 segments with 2 fields (QUALF and ORGID)
    Depending on the value of the QUALF field i need to populate the column in my target structure.
    QUALF 001  => Colmn a
    QUALF 002 => Colmn b
    For now my graphical mapping is very simple - QUALF => column a (done just to find out how PI mapping works)
    What happens in my case, is the PI Payload shows all the E1EDK14 segments however only the value 006 present in the first occurence goes into the target column.
    How do I repeat a mapping between QUALF and target col. for multiple occurences of the same segment?
    Please can you guide me reg. use of context, loop over segment, UDF = which will be the best solution to achieve this?

    Hi
    My mapping is as below. I will take an example of a sales order that has 2 line items 00010, 00020. The payload is as follows
    I see this payload in the SXMB_MONI transaction => Receiver grouping => Payloads
    - <ZORDRES>
    - <IDOC BEGIN="1">
    + <EDI_DC40 SEGMENT="1">
    + <E1EDK01 SEGMENT="1">
    + <E1EDK14 SEGMENT="1">
      <QUALF>006</QUALF>
      <ORGID>01</ORGID>
      </E1EDK14>
    + <E1EDK14 SEGMENT="1">
      <QUALF>007</QUALF>
      <ORGID>01</ORGID>
      </E1EDK14>+ <E1EDK03 SEGMENT="1">
    + <E1EDK03 SEGMENT="1">
    + <E1EDK03 SEGMENT="1">
    + <E1EDK03 SEGMENT="1">
    + <E1EDKA1 SEGMENT="1">
    + <E1EDKA1 SEGMENT="1">
    + <E1EDKA1 SEGMENT="1">
    + <E1EDKA1 SEGMENT="1">
    + <E1EDKA1 SEGMENT="1">
    + <E1EDK02 SEGMENT="1">
    + <E1EDK02 SEGMENT="1">
    + <E1EDK17 SEGMENT="1">
    + <E1EDK18 SEGMENT="1">
    + <E1EDK18 SEGMENT="1">
    + <E1EDP01 SEGMENT="1">
      <POSEX>000010</POSEX>
    + <E1EDP01 SEGMENT="1">
      <POSEX>000020</POSEX>
      </E1EDP01>+ <E1EDS01 SEGMENT="1">
      <SUMID>001</SUMID>
      <SUMME>2</SUMME>
      </E1EDS01>
    + <E1EDS01 SEGMENT="1">
      <SUMID>002</SUMID>
      <SUMME>1100.00</SUMME>
      <SUNIT>GBP</SUNIT>
      </E1EDS01>
      </IDOC>
      </ZORDRES>
    There are 2 problems. First one which I discovered after posting the query. I can see only the line item 10 in the query that gets contructed in PI to insert the data into the target jdbc table. Please see jdbc receiver communication channel log below
    If you see above there are 2 E1EDP01 segments for line 00010, 00020.
    INSERT INTO  tblOItem  (IDocDate, IDocTime, SalesOrderNo, ItemNo, Plant, ItemCategory, UnitSellPrice, QuantityOrdered, QuantityAllocated, ScheduledDeliveryDate) VALUES (20111206, 135530, 0015002085, 000010, 0086, ZTAN, 0.00, 1.000, 1.000, 20111201)
    My source and target mappings are as below.
    ZSALORD
        IDOC
           BEGIN
             E1EDK01
             E1EDP01
               POSEX               =============>  SalOrdItm table column itemno
    My target side structure (idoc to jdbc scenario is as follows)
    I have mapped the E1EDP01 to Statement - I thought this will build one query per line item (per occurence of E1EDP01) but this is not working.
    MT_OITEM
      Statement
        dbtablename       ============> SalOrdItm
          action      =================> Insert
          table
          access
            Itemno      (this is one of the columns from the table)
    The occurence of E1EDP01 is 0..9999999 while the occurence of Statement node is 1...unbounded.
    Please is there any email address where I can send you screen shots if the above is not clear.
    I need to get this interface delivered as soon as possible but am STUCK.
    Edited by: gary jojo on Dec 6, 2011 3:06 PM

  • How to create an occupancy grid map

    I am using a LIDAR sensor (URG-04LX) to map an environment for DaNI 1.0 in LabVIEW Robotics 2010 module.  I want to create an occupancy grid map of the environment to use for path planning purposes. Can anyone provide me with any assistance. I have looked at the examples for path planning using the A* technique on an occupancy grid but I don't understand how to create the occupancy map.

    ... everyone above as told you how to create and LABVIEW occupancy map.... using an occupancy map.
    The labview VI assumes you know exactly what the envrioment is like. Meaning you pretty much have some representation of the enviroment.
    What you want to know is how do I generate and occupancy map using a laserscanner. For this you would need something called SLAM. Simultaneous localisation and Mapping. In order generate an occupancy map you need to continously localise your system so you can map laser measurements with refference to a fixed refferece frame, you then have to localise with respect to your map and repeat. This is non-trivial !
    unfortuently there is no LabviewVi to do this for you, and there is not much working example code. So honestly if you want to do this, i would use a robotic development framework call ROS and using gmapping (which is a SLAM package). Alternatively if you inist on using labview you could create a dll of the gmapping (open source libary) and call it from labview, Our you could try to implement it from scratch yourself....
    I just wish it was easier to use opensource libaries like pcl,opencv and integrate with textbased langauges using a labview system... it would make labview so much better, but labview robotics i feels is not really a good robotic application framework comapared to alternatives like ROS which have much bigger communities and much more modules of code you can use... escpecially for SLAM 
    https://decibel.ni.com/content/docs/DOC-22790 this is the best i have managed to find ( they do implement SLAM for this) 
    http://www.ros.org/wiki/gmapping

  • Path Finder in a 2D Grid Map With Different Terrain Types

         I have been thinking for a while on path finding game algoritms and I can up with one idea witch I want to publish. The goal of my project is when I have a 2 dimensional grid map where squares can have different movement cost, like in Civilization II, to find the shortest way from one point in the map to another. I've used the Breathed First Search Engine. If you are not familiar to this search engine it is better to read about it first because I am not fcusing on it and I assume that you now how it works. You can read about it at the book "Practical Artificial Intelligence Programming in Java" writen by Mark Watson, witch is freely distributed at www.markwatson.com.
         Actually the idea of this 2D grid path finder is to use a third dimension witch have a size equal to the highest movement cost among all terrain types. This helps solving the problem with the different movement cost of the squates. By adding this abstract third dimension it is posible to use the Breadth First Search Engine.
         I this example the movementcost of a terrain type is always the same, no matter from witch square to with are you going (like in Civilization II but I haven't included roads or railroads). For example if you want to go from one square A to another square B with movement cost X (A and B are attached) you must go "up stairs" in the third dimension X - 1 times and then move to square B. But when you step on square B you are again at the lowest floor. So if you want to come back to the previous square A and it have movement cost Y first you must go floor Y and then jump in square A. And now you are again at the lowest floor at square A. When you move from one square to another you go always at the lowest floor. This is the way I handle with different movement costs.
         When you find the path to the goal point it is in 3 dimensions. So you must just project it in the 2D map and that's all you have the shortest path.
         I am sure this is not the best way to code this search engine but this is just the first scratch with no optimisation and so on. If I make a 100x100 randomly generated map it takes on my configuration(400Mhz Pentium II CPU with ASUS P2B MotherBoard on 100 MHz and 256 MB SD RAM on 133 MHz but because of my MB on 100MHz) around 1000 miliseconds (1000 miliseconds = 1 second) to find the shortest path from (1, 1) to (100, 100) witch is pretty good compare to the goTo function in Civilization II witch does not finds the shortest path at all and have made hundrets of gamers angry. This is amazing that nowadays there are so many games with bad path finding.
         This project includes:
    1. The PathFinder class witch does the jub.
    2. The Map class witch has a generator for a random map in it.
    3. The class TerrainType, every square on the map is based on this class.
    4. The class TerrainTypes witch is the set of all terrain types used in the map.
    5. The class PathFinderTest witch just test the path finder.
    To test this project put all files in one directory and run PathFinderTest.java.
    Map.java:
    import java.util.Vector;
    import java.util.Random;
    //This class just creates a random map and keeps it. I will not comment on this.
    class Map {
      //here is kept the information about the terrain types placed in the map. Where
      //every terrain type has a specific movement cost.
      private int[][] terrain;
      public TerrainTypes terrainTypes;
      private int landMass;
      private int width;
      private int height;
      private int highestMovementCost;
      public Map(int aWidth, int aHeight) {
        width = aWidth;
        height = aHeight;
        terrainTypes = new TerrainTypes();
        highestMovementCost = terrainTypes.getHighestMovementCost();
        terrain = new int[width][height];
        landMass = 0;
        generateRandomMap();
      public void clearGoalAndStartLocFromWater(int sx, int sy, int gx, int gy) {
        terrain[gx][gy] = 0;
        terrain[sx][sy] = 0;
      private void expandWater() {
        int waterConstant = 40;
        int waterExpansion = 2;
        int[][] moreWater = new int[width][height];
        Random randomizer = new Random();
        for (int t = 0; waterExpansion > t; t++) {
          for (int i = 0; i < width; i++) {
            for (int j = 0; j < height; j++) {
              if (i + 1 >= 0 && j >= 0 && i + 1 < width && j < height) {
                if (terrain[i + 1][j] != 4) {
                  if (randomizer.nextInt(waterConstant) == 0)
                    moreWater[i + 1][j] = 1;
              if (i + 1 >= 0 && j - 1 >= 0 && i + 1 < width && j - 1 < height) {
                if (terrain[i + 1][j - 1] != 4) {
                  if (randomizer.nextInt(waterConstant) == 0)
                    moreWater[i + 1][j - 1] = 1;
              if (i >= 0 && j - 1 >= 0 && i < width && j - 1 < height) {
                if (terrain[i][j - 1] != 4) {
                  if (randomizer.nextInt(waterConstant) == 0)
                    moreWater[i][j - 1] = 1;
              if (i - 1 >= 0 && j - 1 >= 0 && i - 1 < width && j - 1 < height) {
                if (terrain[i - 1][j - 1] != 4) {
                  if (randomizer.nextInt(waterConstant) == 0)
                    moreWater[i - 1][j - 1] = 1;
              if (i - 1 >= 0 && j >= 0 && i - 1 < width && j < height) {
                if (terrain[i - 1][j] != 4) {
                  if (randomizer.nextInt(waterConstant) == 0)
                    moreWater[i - 1][j] = 1;
              if (i - 1 >= 0 && j + 1 >= 0 && i - 1 < width && j + 1 < height) {
                if (terrain[i - 1][j + 1] != 4) {
                  if (randomizer.nextInt(waterConstant) == 0)
                    moreWater[i - 1][j + 1] = 1;
              if (i >= 0 && j + 1 >= 0 && i < width && j + 1 < height) {
                if (terrain[i][j + 1] != 4) {
                  if (randomizer.nextInt(waterConstant) == 0)
                    moreWater[i][j + 1] = 1;
              if (i + 1 >= 0 && j + 1 >= 0 && i + 1 < width && j + 1 < height) {
                if (terrain[i + 1][j + 1] != 4) {
                  if (randomizer.nextInt(waterConstant) == 0)
                    moreWater[i + 1][j + 1] = 1;
        for (int i = 0; i < width; i++) {
          for (int j = 0; j < height; j++) {
            if (moreWater[i][j] == 1) {
              terrain[i][j] = 4;
      private void generateRandomMap() {
        Random randomizer = new Random();
        for (int i = 0; i < width; i++) {
          for (int j = 0; j < height; j++) {
            if (randomizer.nextInt(3) == 1)
              terrain[i][j] = 0;
            else if (randomizer.nextInt(2) == 1)
              terrain[i][j] = 1;
            else if (randomizer.nextInt(2) == 1)
              terrain[i][j] = 3;
            else if (randomizer.nextInt(2) == 1)
              terrain[i][j] = 2;
            else if (randomizer.nextInt(2) == 1)
              terrain[i][j] = 2;
            else if (randomizer.nextInt(2) == 1)
              terrain[i][j] = 1;
            else if (randomizer.nextInt(2) == 1)
              terrain[i][j] = 3;
            else
              terrain[i][j] = randomizer.nextInt(5);
        expandWater();
        for (int i = 0; i < width; i++) {
          for (int j = 0; j < height; j++) {
            if (terrain[i][j] != 0)
              landMass++;
      public int getMapHeight() {
        return height;
      public int getMapWidth() {
        return width;
      public int getSquareID(int x, int y) {
        return terrain[x][y];
      public int getSquareMovementCost(int x, int y) {
        return terrainTypes.getMovementCost(terrain[x][y]);
    }PathFinder.java:
    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.util.Vector;
    public class PathFinder {
      private BufferedReader consoleReader = new BufferedReader(new InputStreamReader(System.in));
      //The array t3D[][] represents the 2D square map where t3D.leght = map width
      //and t3D[x].lenght = map width (-1 < x < t3D.leght). The third dimension
      //is refered to the square's movement cost, witch is definite by terrain.
      //The fourth dimension will be with lenght = 3. When running the search engine
      //(expanding the explored squares) this 3 values will keep the position of
      //the previous square in 3 dimension, witch are width, height and the maximum
      //movement cost among all squares.
      private int[][][][] squares3DReference;
      //Keeps information witch squares are visited.
      private boolean[][][] visitedSquares;
      private Map map;
      //this is the queue used in the Breathed First Seatch.
      private Vector queue3D;
      //Here is saved the shortest path
      private Vector path2D;
      private int highestMovementCost;
      public PathFinder(Map aMap) {
        map = aMap;
        queue3D = new Vector();
        path2D = new Vector();
        squares3DReference = new int[map.getMapWidth()][map.getMapHeight()][][];
        visitedSquares = new boolean[map.getMapWidth()][map.getMapHeight()][];
        highestMovementCost = map.terrainTypes.getHighestMovementCost();
        buildAbstract3DTerrain();
      private void buildAbstract3DTerrain() {
        for (int x = 0; x < map.getMapWidth(); x++) {
          for (int y = 0; y <map.getMapHeight(); y++) {
            int movementCost = map.terrainTypes.getMovementCost(map.getSquareID(x, y));
            if ( movementCost > 0) {
              visitedSquares[x][y] = new boolean[highestMovementCost];
              squares3DReference[x][y] = new int[highestMovementCost][3];
              for (int z = 0; z < highestMovementCost; z++) {
                for (int t = 0; t < 3; t++) {
                  squares3DReference[x][y][z][t] = -1;
      private boolean isMoveValid(int x, int y, int z, int x2, int y2, int z2) {
        if ( x < 0 || y < 0 || z < 0 || x2 < 0 || y2 < 0 || z2 < 0 || x >= map.getMapWidth() || y >= map.getMapHeight() || z >= highestMovementCost ||  x2 >= map.getMapWidth() || y2 >= map.getMapHeight() || z2 >= highestMovementCost)
          return false;
        if (map.terrainTypes.getMovementCost(map.getSquareID(x2, y2)) < 1)
          return false;
        if (visitedSquares[x2][y2][z2])
          return false;
        if (x == x2 && y == y2)
          return true;
        else {
          if (z == map.terrainTypes.getMovementCost(map.getSquareID(x2, y2)) - 1)
            return true;
          else
            return false;
      private void clearPreviousSearchData() {
        queue3D.clear();
        path2D.clear();
        for (int x = 0; x < map.getMapWidth(); x++) {
          for (int y = 0; y < map.getMapHeight(); y++) {
            if (squares3DReference[x][y] != null) {
              for (int z = 0; z < highestMovementCost; z++) {
                visitedSquares[x][y][z] = false;
                for (int t = 0; t < 3; t++) {
                  squares3DReference[x][y][z][t] = -1;
      private Vector copyPath2D() {
        Vector path = new Vector();
        for (int i = 0; i < path2D.size(); i++) {
          path.add(path2D.get(i));
        return path;
      public Vector findPath(int sX, int sY, int gX, int gY) {
        int head = 0;
        int tail = 0;
        int x = sX;
        int y = sY;
        int z = 0;
        visitedSquares[x][y][z] = true;
        mainLoop: {
          while (tail <= head) {
            int[][] moves = getPosibleMoves(x, y, z);
            for (int i = 0; i < 9; i++) {
              if (moves[i] != null) {
                squares3DReference[moves[0]][moves[i][1]][moves[i][2]][0] = x;
    squares3DReference[moves[i][0]][moves[i][1]][moves[i][2]][1] = y;
    squares3DReference[moves[i][0]][moves[i][1]][moves[i][2]][2] = z;
    queue3D.add(moves[i]);
    if (moves[i][0] == gX && moves[i][1] == gY) {
    break mainLoop;
    visitedSquares[moves[i][0]][moves[i][1]][moves[i][2]] = true;
    head++;
    if (queue3D.size() == 0 || queue3D.size() == tail)
    break mainLoop;
    int[] nextInQueue = ((int[]) queue3D.get(tail));
    x = nextInQueue[0];
    y = nextInQueue[1];
    z = nextInQueue[2];
    tail++;
    if (squares3DReference[gX][gY][0][0] == -1) {
    clearPreviousSearchData();
    return path2D;
    fillpath2D(sX, sY, gX, gY);
    Vector path = copyPath2D();
    clearPreviousSearchData();
    return path;
    private int[][] getPosibleMoves(int x, int y, int z) {
    int[][] moves = new int[9][3];
    if (isMoveValid(x, y, z, x + 1, y, 0)) {
    moves[0][0] = x + 1;
    moves[0][1] = y;
    moves[0][2] = 0;
    else
    moves[0] = null;
    if (isMoveValid(x, y, z, x + 1, y - 1, 0)) {
    moves[1][0] = x + 1;
    moves[1][1] = y - 1;
    moves[1][2] = 0;
    else
    moves[1] = null;
    if (isMoveValid(x, y, z, x, y - 1, 0)) {
    moves[2][0] = x;
    moves[2][1] = y - 1;
    moves[2][2] = 0;
    else
    moves[2] = null;
    if (isMoveValid(x, y, z, x - 1, y - 1, 0)) {
    moves[3][0] = x - 1;
    moves[3][1] = y - 1;
    moves[3][2] = 0;
    else
    moves[3] = null;
    if (isMoveValid(x, y, z, x - 1, y, 0)) {
    moves[4][0] = x - 1;
    moves[4][1] = y;
    moves[4][2] = 0;
    else
    moves[4] = null;
    if (isMoveValid(x, y, z, x - 1, y + 1, 0)) {
    moves[5][0] = x - 1;
    moves[5][1] = y + 1;
    moves[5][2] = 0;
    else
    moves[5] = null;
    if (isMoveValid(x, y, z, x, y + 1, 0)) {
    moves[6][0] = x;
    moves[6][1] = y + 1;
    moves[6][2] = 0;
    else
    moves[6] = null;
    if (isMoveValid(x, y, z, x + 1, y + 1, 0)) {
    moves[7][0] = x + 1;
    moves[7][1] = y + 1;
    moves[7][2] = 0;
    else
    moves[7] = null;
    if (isMoveValid(x, y, z, x, y, z + 1)) {
    moves[8][0] = x;
    moves[8][1] = y;
    moves[8][2] = z + 1;
    else
    moves[8] = null;
    return moves;
    private void fillpath2D(int sX, int sY, int gX, int gY) {
    int[] gLoc = {gX, gY};
    path2D.add(gLoc);
    int x = gX;
    int y = gY;
    int z = 0;
    while (x != sX || y != sY) {
    int x2 = squares3DReference[x][y][z][0];
    int y2 = squares3DReference[x][y][z][1];
    int z2 = squares3DReference[x][y][z][2];
    x = x2;
    y = y2;
    z = z2;
    if (z == 0) {
    int[] loc = {x, y};
    path2D.insertElementAt(loc, 0);
    PathFinderTest.java
    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.util.Vector;
    public class PathFinderTest {
      static BufferedReader consoleReader = new BufferedReader(new InputStreamReader(System.in));
      static Map map;
      static int startX;
      static int startY;
      static int goalX;
      static int goalY;
      public static void main(String[] args) throws Exception {
        System.out.print("Enter map size.\nx = ");
        int width = Integer.parseInt(consoleReader.readLine());
        System.out.print("y = ");
        int height = Integer.parseInt(consoleReader.readLine());
        System.out.print("Enter strting location.\nx = ");
        startX = Integer.parseInt(consoleReader.readLine()) - 1;
        System.out.print("y = ");
        startY = Integer.parseInt(consoleReader.readLine()) - 1;
        System.out.print("Enter goal location.\nx = ");
        goalX = Integer.parseInt(consoleReader.readLine()) - 1;
        System.out.print("y = ");
        goalY = Integer.parseInt(consoleReader.readLine()) - 1;
        if (goalX < 0 || goalY < 0 || startX < 0 || startY < 0 || goalX >= width || goalY >= height || startX >= width || startY >= height) {
          System.out.println("Invalid parameters found. Program will exit");
          System.exit(0);
        map = new Map(width, height);
        map.clearGoalAndStartLocFromWater(startX, startY, goalX, goalY);
        printSolution(new Vector());
        PathFinder pathFinder = new PathFinder(map);
        long before = System.currentTimeMillis();
        Vector path = pathFinder.findPath(startX, startY, goalX, goalY);
        long after = System.currentTimeMillis();
        long time = after - before;
        printSolution(path);
        if (path.size() == 0)
          System.out.println("No path found.");
        else
          System.out.println("Path found.");
        System.out.println("Finding the path took " + time + " milliseconds");
      static void printSolution(Vector path) {
        boolean[][] pathOnMap = new boolean[map.getMapWidth()][map.getMapHeight()];
        for (int i = 0; path.size() > i; i++) {
          int[] move = (int[]) path.get(i);
          pathOnMap[move[0]][move[1]] = true;
        for (int y = 0; y < map.getMapHeight(); y++) {
          for (int x = 0; x < map.getMapWidth(); x++) {
            System.out.print(" ");
            if (pathOnMap[x][y] == false)
              System.out.print(" ");
            else
              System.out.print("0");
            if (x == startX && y == startY)
              System.out.print("S");
            else if (x == goalX && y == goalY)
              System.out.print("G");
            else
              System.out.print(map.terrainTypes.getNameFirstLetter(map.getSquareID(x, y)));
          System.out.println();
        System.out.println();
    }TerrainType.java:
    public class TerrainType {
      private int movementCost;
      private String name;
      TerrainType(int aMovementCost, String aName) {
        movementCost = aMovementCost;
        name = aName;
      public int getMovementCost() {
        return movementCost;
      public String getName() {
        return name;
      public String getNameFirstLetter() {
        return name.substring(0, 1).toUpperCase();
    }TerrainTypes.java:
    import java.util.Vector;
    public class TerrainTypes {
      //Here are saved the terrain types with the map has. ElementAt 'i' in
      //setOfTypes is represented by the number in Map.terrain[x][y] witch is
      //equal to i, were x, y are random integer as soon as they do not
      //throw ArrayIndexOutOfBoundsException. Actually this is a coding to know
      //a specific square in the map to witch terrain type is refered in setOfTypes.
      private Vector setOfTypes;
      public TerrainTypes() {
        setOfTypes = new Vector();
        setOfTypes.add(new TerrainType(1, "Plains"));
        setOfTypes.add(new TerrainType(2, "Forst"));
        setOfTypes.add(new TerrainType(3, "Jungle"));
        setOfTypes.add(new TerrainType(4, "Mountain"));
        setOfTypes.add(new TerrainType(-1, "X"));
      public int getMovementCost(int i) {
        return ((TerrainType) setOfTypes.get(i)).getMovementCost();
      public String getName(int i) {
        return ((TerrainType) setOfTypes.get(i)).getName();
      public String getNameFirstLetter(int i) {
        return ((TerrainType) setOfTypes.get(i)).getNameFirstLetter();
      public int getHighestMovementCost() {
        int max = 1;
        for (int i = 0; setOfTypes.size() > i; i++) {
          int movementCost = ((TerrainType) setOfTypes.get(i)).getMovementCost();
          if ( movementCost > 0) {
            if (max < movementCost)
              max = movementCost;
        return max;
    }I hope this program will be helpful.
    Sogartar

    Why is such a smart guy like you not using A*
    It is a general known algorithm which will find the
    optimal solution in a finite search-space (within a minimal time).
    The calculation time for the A* algorithm is influenced by two parameters:
    1 - cumulative cost
    2 - minimal expected additional cost
    The calculation of these two costs has a great influence on the
    solution.
    I think the actual problems most games experience with shortest path calculatoin are
    1 - very little time to spent calculating the shortest path
    The quickest solution might be the best for the game
    If your solution takes 1 second for the calculation of a path for one element on the board (100x100)
    What would it take for the game to calculate the path for all elements controlled by the computer ??
    If the computer controls two players which each have 50 elements to control, it would take forever...
    Don't even consider the usage of a larger board (200x200 would take 4 seconds/element when
    algorithm has complexity O(n))
    2 - low priority.
    Users tend to forgive a bad shortest path-algorithm most of the time,
    but not a bad display, bad pictures,...
    This is why most shortest-path algorithms within games were
    developed as a depth first search,
    within some earlier games this was even developed as
    a rule which went straight to the endlocation and
    takes a right/left turn when blocked by water/wall/...
    So the actual steps you should take are:
    1 - develop a normal breath-first search (to get going)
    2 - develop a normal depth-first search (to compare speed and solution with)
    3 - develop a normal dijkstra algorithm (sometimes called A)
    4 - develop a best first algorithm (called A*)
    5 - develop other AI-algorithms building upon A* (tabu-search, limited memory A*,...)
    6 - develop some other AI-algorithms (Genetic Algorithms, Simulated Annealing,...)
    7 - compare and tweak/change all search-algorithms for
    7 - a - size of maps (small versus huge)
    7 - b - optimality of the solution
    7 - c - actual usage for your game
    8 - !!! very important !!!
    Share the developed path algorithms along with remarks about speed, map-size,...
    with the rest of us. I would be very interested in such library.
    kind regards,

  • ALV grid Refresh problem

    hi,
    I have 2 views, input and output these two included in a MAIN views.
    when user key in their input values in INPUT view and the search results will be displayed in OUTPUT view using ALV grid.
    the problem i'm facing here is, when user changes search criteria once after search results displayed.. it is not displaying with new search results. every time i have to give F5(Refresh) it is certainly not comfortable to deliver it as it is.
    i have tried same scenario with simple query in our local server.. where it is working very well.
    i really clueless what would be the cause.. is there any with SAP patch issues.
    i have tried with refresh method of ALV component.
    please help me out of this, i cannot use TABLE control every time to avoid this.
    thanks,
    gupta.

    Hi Gupta,
    Could you please let us know how you are filling the context node which is mapped to ALV table?
    After the search criteria is changed, if you are doing it inside handler of the button or something like that, it should work.
    Refer to the tutorial in the following link which shows an example similar to your scenario:
    SAP List Viewer in Web Dynpro - Simple Example for Using ALV
    please post the code also which you are using to fill the node in case if you still face the issue after referring to the above tutorial.
    Hope this helps!
    Regards.
    Srilatha
    Edited by: Srilatha M on Jul 19, 2010 7:57 AM

  • How do I remove the grid map over an object when working in 3D?

    I am working through Adobe's Photoshop CS6 Classroom in a Book, Section 12 - Working with 3D Images.
    So far I have found it all fairly straight forward and very useful.
    I am at a point where I am applying textures and materials to my objects, however I cannot seem to find out how to remove the grid that has mapped itself over the objects. I have included a image to illustrate.
    Can anyone help?
    What is the command that will hide these grid maps?!
    Thanks so much in advance.

    I went into YouTube as well, and indeed: It didn't remove the white background.
    Then I went into Photoshop and was surprised: It was able to remove the white background by just playing around with the Magic Wand Tool. I also went into other programmes similar to Photoshop and was excited that there were connatural ways to remove the white background. Finally, I went into Illustrator and observed that the clipping path route worked. Even in CS6.
    Not sure why it didn't work for you.

  • I am unable to create a new event on my iPhone with IOS 7.0.4. I tap the plus sign, fill in the details, tape Done and ... nothing. Repeatedly. No problem on my iMac or iPad, just with the phone. Help.

    I am unable to create a new event on my iPhone with IOS 7.0.4. I tap the plus sign, fill in the details, tape Done and ... nothing. Repeatedly. No problem on my iMac or iPad, just with the phone. Help.

    Assuming you're creating this event to place in your calendar, and assuming this calendar is shared with your iMac and iPad using iCloud, might the calendar be restricted on your iPhone?
    Check Settings > General > Restrictions

  • Problems with ViaVoice under Leopard, especially key mapping problems

    ViaVoice's behavior has changed considerably under Leopard. First I will discuss the key mapping problem, since I'm eagerly looking for an answer to this problem. At the end of this post, I will voice some of the other problems I've experienced for those who may be interested. The key mapping problem may be specific to the fact that I use a foreign keyboard with a US version of ViaVoice.
    INTRO:
    I have used ViaVoice on my Mac for years, more or less without problems (ViaVoice's bugginess is notorious).
    Those who know ViaVoice will know that one has two general options for dictation. One can dictate into ViaVoice's so-called SpeakPad, which allows special formatting, editing and dictation error correction within the dictated text, or one can dictate into "external" software such as Microsoft Word, in which case ViaVoice just sends a string of characters to that software. SpeakPad appears to make strong use of the operating system's built-in functionality for character formatting, document formatting, etc.
    *MY PROBLEM*
    I have a German keyboard on my PowerBook, yet dictate in US English. When I dictated into SpeakPad under Tiger, all characters appeared correctly. However, when I dictated into Microsoft Word using Tiger, I had to switch the keyboard mapping from German to US to get all characters (that means including the characters that are located at different positions on a German keyboard than they are on a US keyboard such as y, z, apostrophes and parentheses) to appear correctly.
    Under Leopard, things have changed. Now it doesn't matter whether I dictate into SpeakPad or Word; the results are the same and many characters do not appear correctly.
    If set to a German keyboard, y and z appear as expected. To name a few irregularities:
    "(" appears as ")"
    ")" appears as "="
    apostrophes appear as "#" and
    ";" appears as ","
    If set to a US keyboard, y and z are interchanged. "(" and ")" appear as expected. Apostrophes appear as "\" and ";" appears as ","
    By comparison, if typed (as opposed to dictated, as in the examples above) "correctly" (i.e. based on the letters printed on the keyboard) on a German keyboard set to imitate a US keyboard:
    y and z are interchanged
    apostrophes appear as "|"
    "(" appears as "*"
    ")" appears as "(" and
    ";" appears as the symbol for "less than"
    Since I don't have a US keyboard, I can't say how it would behave if set to imitate a German keyboard, i.e. if there's a correlation to the results I get when I dictate.
    Since I was previously able to dictate correctly into SpeakPad by setting the keyboard to "German" and into Word by setting the keyboard to "US," I presume that this is a problem in Leopard, not ViaVoice.
    *OTHER PROBLEMS WITH VIAVOICE UNDER LEOPARD*
    In addition to the aforementioned key mapping problems (that may be specific to those of us with foreign keyboards), ViaVoice appears to have lost considerable functionality in Leopard. I cannot access SpeakPad's Preferences and the correction window. Moreover, the traffic-light like window buttons have disappeared from the VoiceCenter (although they work if you click where they should be). SetupAssistent appears to function.
    I've written to Nuance about these problems, but have little hope that they will invest the time in producing a patch since they haven't released any updates since 2003.

    Thrums1,
    I've never had to "register" ViaVoice after updating the system. I thus suspect you haven't fully followed my above, three-step advice (particularly step 3).
    1) Reinstall ViaVoice from CD.
    2) Update to the latest version (using the patch downloadable from Nuance's website).
    3) Replace the “temp” and “users” folders (in the "ViaVoice" folder at the upper level of your home directory) by a previous copy thereof. When I say previous copy, I mean a copy from when ViaVoice was still working properly, e.g. a copy from when it was running under Tiger.
    As I said, I've gotten ViaVoice to survive several system updates by following the above steps. To my knowledge, the last step is critical since it saves you from having to reconfigure ViaVoice under the new operating system (in this case Leopard). I suspect that ViaVoice is crashing on your system because it's trying to start some module of the SetUpAssistant that is incompatible with Leopard (as many are). If you instead use old copies of the "temp" and "users" folders (from the previous system), then ViaVoice doesn't have to go through the initial "registration" process; ViaVoice doesn't need the SetUpAssistant; and all is (more or less) fine.
    Good luck!
    BTW, to my knowledge, Dictate only runs on Intel Macs. It thus won't run on a G4 iBook, just as it won't run on my PowerBook G4.

  • Mapping problem with compressed key update record

    Hi, could you please advise?
    I'm getting the following problem:
    About a week ago replicat abened with "Error in mapping" error. I found in discard file some record looking like:
    filed1 = NULL
    field2 =
    field3 =
    field4 =
    field5 =
    datefield = -04-09 00:00:00
    field6 =
    field8 =
    field9 = NULL
    field10 =
    Where filed9 = @GETENV("GGHEADER", "COMMITTIMESTAM"), field10 = = @GETENV("GGHEADER", "COMMITTIMESTAM"), others are table fields mapped by USEDEFAULTS
    So I got Mapping problem with compressed key update record at 2012-06-01 15:44
    I guess I need to mention that extract failed in 5 minuts before it with: VAM function VAMRead returned unexpected result: error 600 - VAM Client Report <[CFileInfo::Read] Timeout expired after 10 retries with 1000 ms delay, waiting to read transaction log or backup files. To increase the number of retries, use SETENV (GGS_CacheRetryCount = n) in Extract parameter file. To control retry delay time, use SETENV (GGS_CacheRetryDelay = n). handle: 0000000000000398 ReadFile GetLastError:997 Wait GetLastError:997>.
    I don't know if it has ther same source as data corruption, could you tell me if it is?
    Well, I created new extract, starting 2012-06-01 15:30 to check if there was something with extract at the time, but got the same error.
    If I run extract beging at 15:52 it starts and works.
    But well, I got another one today. Data didn't look that bad, but yet one column came with null value:( And I'm using it as a key column, so I got Mapping problem with compressed key update record again:(
    I'm replicating from SQL Server 2008 to Oracle 11g.
    I'm actually using NOCOMPRESSUPDATES in Extract.
    CDC is enabled for all tables replicated. The only thing is that it is enabled not by ADD TRANDATA command, but by SQL Server sys.sp_cdc_enable_table, does it matter?
    Could you please advise why does it happen?

    Well, the problem begins somewhere in extract or before extract, may be in transaction log, I don't know:(
    Here are extract parameters:
    EXTRACT ETCHECK
    TRANLOGOPTIONS MANAGESECONDARYTRUNCATIONPOINT
    SOURCEDB TEST, USERID **, PASSWORD *****
    exttrail ./dirdat/ec
    NOCOMPRESSUPDATES
    NOCOMPRESSDELETES
    TABLE tst.table1, COLS (field1, field2, field3, field4, field5, field6, field7, field8 );
    TABLE tst.table2, COLS (field1, field2, field3, field4 );
    Data pump:
    EXTRACT DTCHECK
    SOURCEDB TEST, USERID **, PASSWORD *****
    RMTHOST ***, MGRPORT 7809
    RMTTRAIL ./dirdat/dc
    TABLE tst.table1;
    TABLE tst.table2;
    Replicat:
    REPLICAT rtcheck
    USERID tst, PASSWORD ***
    DISCARDFILE ./dirrpt/rtcheck.txt, PURGE
    SOURCEDEFS ./dirdef/sourcei.def
    HANDLECOLLISIONS
    UPDATEDELETES
    MAP tst.table1, t.table1, COLMAP (USEDEFAULTS , filed9 = @GETENV("GGHEADER", "COMMITTIMESTAMP"), filed10= @CASE(@GETENV("GGHEADER", "OPTYPE"), "SQL COMPUPDATE", "U", "PK UPDATE", "U",@GETENV("GGHEADER", "OPTYPE")) ), KEYCOLS (field3);
    MAP dbo.TPROCPERIODCONFIRMSTAV, TARGET R_019_000001.TPROCPERIODCONFIRMSTAV, COLMAP (USEDEFAULTS , field5 = @GETENV("GGHEADER", "COMMITTIMESTAMP"), filed6= @CASE(@GETENV("GGHEADER", "OPTYPE"), "SQL COMPUPDATE", "U", "PK UPDATE", "U",@GETENV("GGHEADER", "OPTYPE")) ), KEYCOLS (filed1, field2, field3);
    Rpt file for replicat:
    Oracle GoldenGate Delivery for Oracle
    Version 11.1.1.1 OGGCORE_11.1.1_PLATFORMS_110421.2040
    Windows x64 (optimized), Oracle 11g on Apr 22 2011 00:34:07
    Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.
    Starting at 2012-06-05 12:49:38
    Operating System Version:
    Microsoft Windows Server 2008 R2 , on x64
    Version 6.1 (Build 7601: Service Pack 1)
    Process id: 2264
    Description:
    ** Running with the following parameters **
    REPLICAT rtcheck
    USERID tst, PASSWORD ***
    DISCARDFILE ./dirrpt/rtcheck.txt, PURGE
    SOURCEDEFS ./dirdef/sourcei.def
    HANDLECOLLISIONS
    UPDATEDELETES
    MAP tst.table1, t.table1, COLMAP (USEDEFAULTS , filed9 = @GETENV("GGHEADER", "COMMITTIMESTAMP"), filed10= @CASE(@GETENV("GGHEADER", "OPTYPE"), "SQL COMPUPDATE", "U", "PK UPDATE", "U",@GETENV("GGHEADER", "OPTYPE")) ), KEYCOLS (field3);
    MAP dbo.TPROCPERIODCONFIRMSTAV, TARGET R_019_000001.TPROCPERIODCONFIRMSTAV, COLMAP (USEDEFAULTS , field5 = @GETENV("GGHEADER", "COMMITTIMESTAMP"), filed6= @CASE(@GETENV("GGHEADER", "OPTYPE"), "SQL COMPUPDATE", "U", "PK UPDATE", "U",@GETENV("GGHEADER", "OPTYPE")) ), KEYCOLS (filed1, field2, field3);
    CACHEMGR virtual memory values (may have been adjusted)
    CACHEBUFFERSIZE: 64K
    CACHESIZE: 512M
    CACHEBUFFERSIZE (soft max): 4M
    CACHEPAGEOUTSIZE (normal): 4M
    PROCESS VM AVAIL FROM OS (min): 1G
    CACHESIZEMAX (strict force to disk): 881M
    Database Version:
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
    PL/SQL Release 11.2.0.1.0 - Production
    CORE     11.2.0.1.0     Production
    TNS for 64-bit Windows: Version 11.2.0.1.0 - Production
    NLSRTL Version 11.2.0.1.0 - Production
    Database Language and Character Set:
    NLS_LANG = "AMERICAN_AMERICA.CL8MSWIN1251"
    NLS_LANGUAGE = "AMERICAN"
    NLS_TERRITORY = "AMERICA"
    NLS_CHARACTERSET = "CL8MSWIN1251"
    For further information on character set settings, please refer to user manual.
    ** Run Time Messages **
    Opened trail file ./dirdat/dc000000 at 2012-06-05 12:49:39
    2012-06-05 12:58:14 INFO OGG-01020 Processed extract process RESTART_ABEND record at seq 0, rba 925 (aborted 0 records).
    MAP resolved (entry tst.table1):
    MAP tst.table1, t.table1, COLMAP (USEDEFAULTS , filed9 = @GETENV("GGHEADER", "COMMITTIMESTAMP"), filed10= @CASE(@GETENV("GGHEADER", "OPTYPE"), "SQL COMPUPDATE", "U", "PK UPDATE", "U",@GETENV("GGHEADER", "OPTYPE")) ), KEYCOLS (field3);
    2012-06-05 12:58:14 WARNING OGG-00869 No unique key is defined for table table1. All viable columns will be used to represent the key, but may not guarantee uniqueness. KEYCOLS may be used to define the key.
    Using the following default columns with matching names:
    field1=field1, field2=field2, field3=field3, field4=field4, field5=field5, field6=field6, field7=field7, field8=field8
    Using the following key columns for target table R_019_000001.TCALCULATE: field3.
    2012-06-05 12:58:14 WARNING OGG-01431 Aborted grouped transaction on 'tst.table1', Mapping error.
    2012-06-05 12:58:14 WARNING OGG-01003 Repositioning to rba 987 in seqno 0.
    2012-06-05 12:58:14 WARNING OGG-01151 Error mapping from tst.table1 to tst.table1.
    2012-06-05 12:58:14 WARNING OGG-01003 Repositioning to rba 987 in seqno 0.
    Source Context :
    SourceModule : [er.main]
    SourceID : [er/rep.c]
    SourceFunction : [take_rep_err_action]
    SourceLine : [16064]
    ThreadBacktrace : [8] elements
    : [C:\App\OGG\replicat.exe(ERCALLBACK+0x143034) [0x00000001402192B4]]
    : [C:\App\OGG\replicat.exe(ERCALLBACK+0x11dd44) [0x00000001401F3FC4]]
    : [C:\App\OGG\replicat.exe(<RCALLBACK+0x11dd44) [0x000000014009F102]]
    : [C:\App\OGG\replicat.exe(<RCALLBACK+0x11dd44) [0x00000001400B29CC]]
    : [C:\App\OGG\replicat.exe(<RCALLBACK+0x11dd44) [0x00000001400B8887]]
    : [C:\App\OGG\replicat.exe(releaseCProcessManagerInstance+0x25250) [0x000000014028F200]]
    : [C:\Windows\system32\kernel32.dll(BaseThreadInitThunk+0xd) [0x000000007720652D]]
    : [C:\Windows\SYSTEM32\ntdll.dll(RtlUserThreadStart+0x21) [0x000000007733C521]]
    2012-06-05 12:58:14 ERROR OGG-01296 Error mapping from tst.table1 to tst.table1.
    * ** Run Time Statistics ** *
    Last record for the last committed transaction is the following:
    Trail name : ./dirdat/dc000000
    Hdr-Ind : E (x45) Partition : . (x04)
    UndoFlag : . (x00) BeforeAfter: A (x41)
    RecLength : 249 (x00f9) IO Time : 2012-06-01 15:48:56.285333
    IOType : 115 (x73) OrigNode : 255 (xff)
    TransInd : . (x03) FormatType : R (x52)
    SyskeyLen : 0 (x00) Incomplete : . (x00)
    AuditRBA : 44 AuditPos : 71176199289771
    Continued : N (x00) RecCount : 1 (x01)
    2012-06-01 15:48:56.285333 GGSKeyFieldComp Len 249 RBA 987
    Name: DBO.TCALCULATE
    Reading ./dirdat/dc000000, current RBA 987, 0 records
    Report at 2012-06-05 12:58:14 (activity since 2012-06-05 12:58:14)
    From Table tst.table1 to tst.table1:
    # inserts: 0
    # updates: 0
    # deletes: 0
    # discards: 1
    Last log location read:
    FILE: ./dirdat/dc000000
    SEQNO: 0
    RBA: 987
    TIMESTAMP: 2012-06-01 15:48:56.285333
    EOF: NO
    READERR: 0
    2012-06-05 12:58:14 ERROR OGG-01668 PROCESS ABENDING.
    Discard file:
    Oracle GoldenGate Delivery for Oracle process started, group RTCHECK discard file opened: 2012-06-05 12:49:39
    Key column filed3 (0) is missing from update on table tst.table1
    Missing 1 key columns in update for table tst.table1.
    Current time: 2012-06-05 12:58:14
    Discarded record from action ABEND on error 0
    Aborting transaction on ./dirdat/dc beginning at seqno 0 rba 987
    error at seqno 0 rba 987
    Problem replicating tst.table1 to tst.table1
    Mapping problem with compressed key update record (target format)...
    filed1 = NULL
    field2 =
    field3 =
    field4 =
    field5 =
    datefield = -04-09 00:00:00
    field6 =
    field8 =
    field9 = NULL
    field10 =
    Process Abending : 2012-06-05 12:58:14

  • Mapping problem with compressed key update record (target format)...

    Hi Guys,
    Getting below error while replication from Source to target. Source table is having NOT NULL Column, but on target replicat process giving error about some NULL value ??
    How to overcome this issue, any idea...
    2011-08-04 10:35:04 INFO OGG-00995 Oracle GoldenGate Delivery for Oracle, rmastrk.prm: REPLICAT RMASTRK starting.
    2011-08-04 10:35:05 INFO OGG-00996 Oracle GoldenGate Delivery for Oracle, rmastrk.prm: REPLICAT RMASTRK started.
    2011-08-04 10:35:06 WARNING OGG-00869 Oracle GoldenGate Delivery for Oracle, rmastrk.prm: OCI Error ORA-01407: cannot update ("INFRA"."CUST"."CODE") to NULL (status = 1407), SQL <UPDATE "INFRA"."CUST" SET "ORD_ID" = :a2,"DP_ID" = :a3,"EXCHNG_CODE" = :a4,"ORD_QTY" = :a5,"ORD_PRICE" = :a6,"CODE" = :a7,"MKRT_CODE" = :a8,"CHANN>.
    2011-08-04 10:35:06 WARNING OGG-01004 Oracle GoldenGate Delivery for Oracle, rmastrk.prm: Aborted grouped transaction on 'INFRA.CUST', Database error 1407 (ORA-01407: cannot update ("INFRA"."CUST"."SCRP_CODE") to NULL).
    2011-08-04 10:35:06 WARNING OGG-01003 Oracle GoldenGate Delivery for Oracle, rmastrk.prm: Repositioning to rba 44132192 in seqno 68708.
    2011-08-04 10:35:06 *WARNING OGG-01154 Oracle GoldenGate Delivery for Oracle, rmastrk.prm: SQL error 1407 mapping INFRA.CUST to INFRA.CUST OCI Error ORA-01407:* *cannot update ("INFRA"."CUST"."SCRP_CODE") to NULL (status = 1407), SQL <UPDATE "INFRA"."CUST" SET "ORD_ID" = :a2,"DP_ID" = :a3,"EXCHNG_CODE"=:a4,"ORD_QTY"*
    *= :a5,"ORD_PRICE" = :a6,"SCRP_CODE" = :a7,"MKRT_CODE" = :a8,"CHANN>.*
    2011-08-04 10:35:06 WARNING OGG-01003 Oracle GoldenGate Delivery for Oracle, rmastrk.prm: Repositioning to rba 44132192 in seqno 68708.
    2011-08-04 10:35:06 ERROR OGG-01296 Oracle GoldenGate Delivery for Oracle, rmastrk.prm: Error mapping from INFRA.CUST to INFRA.CUST.
    2011-08-04 10:35:06 ERROR OGG-01668 Oracle GoldenGate Delivery for Oracle, rmastrk.prm: PROCESS ABENDING.
    Oracle GoldenGate Delivery for Oracle process started, group RMASTRK discard file opened: 2011-08-04 10:35:05
    Current time: 2011-08-04 10:35:06
    Discarded record from action ABEND on error 1407
    OCI Error ORA-01407: cannot update ("INFRA"."CUST"."SCRP_CODE") to NULL
    (status = 1407), SQL <UPDATE "INFRA"."CUST" SET "ORD_ID" = :a2,"MKRT_CODE" = :a8,"CHANN>
    Aborting transaction on ./dirdat/pm beginning at seqno 68708 rba 44132192
    error at seqno 68708 rba 44132192
    Problem replicating INFRA.CUST to INFRA.CUST
    *Mapping problem with compressed key update record (target format)...*
    ORD_QTY = 500
    ORD_PRICE = 37430
    SCRP_CODE =
    MKRT_CODE = N
    Oracle GoldenGate Delivery for Oracle process started, group RMASTRK discard file opened: 2011-08-
    04 10:35:05
    Current time: 2011-08-04 10:35:06
    Discarded record from action ABEND on error 1407
    OCI Error ORA-01407: cannot update ("INFRA"."CUST"."SCRP_CODE") to NULL
    (status = 1407), SQL <UPDATE "INFRA"."CUST" SET "ORD_ID" = :a2,"MKRT_CODE" = :a8,"CHANN>
    Aborting transaction on ./dirdat/pm beginning at seqno 68708 rba 44132192
    error at seqno 68708 rba 44132192
    Problem replicating INFRA.CUST to INFRA.CUST
    Mapping problem with compressed key update record (target format)...
    ORD_QTY = 500
    ORD_PRICE = 37430
    SCRP_CODE =
    MKRT_CODE = N
    Any inputs / help would be appreciated.
    Regards,
    Manish

    The SCRP_CODE column has a NOT NULL constraint. The ORA-01407 error is telling you that you cannot update or set a value for this column to null because of the constraint. This has absolutely nothing to do with an index. You can use a marker/sentinel value in lieu of using NULL. For a numeric field, where everything is positive, a negative value (-1) can be decoded as meaning null. For a character field, a code such as NA can represent NULL.
    This also has nothing to do (directly) with GoldenGate failing because of this error. The underlying SQL statement will fail everywhere, regardless of the tool or application. It is not a case of failing only in GoldenGate.

  • Mapping problem - Shaded areas in the wrong place

    Hey experts,
    I`ve already contacted you on this issue a few days ago. I created a query, which executes a few key figures mapped to the postalcode.
    I tried to let me display this query on the web, using the WAD. The shapefiles were uploaded correctly, for the contours of the country and the postalcode areas are displayed accurately.
    At the first sight, I thought a performance problem could be the challenge. But I did not find any information on that. On my last post, i received one answer, that I had to adjust the sort order. But that did not bring any results either!
    At the moment, it looks more like a mapping problem in the dBase File to me. How can a proper mapping be achieved? I tried to just add a SAPBWKEY column, like it is proposed here: http://help.sap.com/saphelp_nw04/helpdata/en/3b/7c92ec1bed374ee0000800091c1b0e/content.htm.
    An extract of my dBase-File schematically looks like this:
    0country, 0Postalcod, SAPBWKEY
    DE            48900          DE/48900 (for it is a composite attribute)
    The mapping seems to work in a rather random way, because the shaded areas are at least displayed somewhere on the map, but not where they supposed to be, e. g. one district of south Germany in the far north and so on.
    Did you have any similar issues in the past or any tips for a solution?
    Thanks&regards
    Marcus

    Sorry, I guess this is just a bug in some programs including firefox:
    https://bugzilla.mozilla.org/show_bug.cgi?id=314279

  • Mapping Problem ORDERS Idoc to Edifact

    Hi,
    I have a mapping problem with the IDOC ORDERS:
    I get the IDOC with several E1EDP01. Each E1EDP01 has several E1EDPT1, where i want only the first one (which I get over the TDID value). Each E1EDPT1 has min. 1 E1EDPT2.
    Now I have to map each field TDLINE from first two E1EDPT2 of the first E1EDPT1 to the Edifact fields /LIST/S_UNB/S_UNH/G_SSG25/S_LIN/S_IMD[1]/C_C273/D_7008 (from the first E1EDPT2) and, if a second E1EDPT2 exists in /LIST/S_UNB/S_UNH/G_SSG25/S_LIN/S_IMD[1]/C_C273/D_7008_2.
    I use following UDF:
    //a = TDLINE
    //b = Number of entry in the List
    int pos =Integer.parseInt(b[0]);
    if ( pos < a.length )
    result.addValue(a[pos]);
    else
    result.addValue(ResultList.SUPPRESS);
    Unfortunatly, I think becaus of the context problems (not every E1EDPT1 has two E1EDPT2), it's not working. Could somebody help me with this problem?
    Thanks in advance
    Dominic

    Dear Dominic ,
    I had same problem when I was trying to do the same thing for FTX segment.
    Your UDF is fine but you don't need else condition.
    //a = TDLINE
    //b = Number of entry in the List
    int pos =Integer.parseInt(b[0]);
    if ( pos < a.length )
    result.addValue(a[pos]);
    for C_C273 assigned contant value and
    D_7008 assigned TDLINE but change the context to E1EDPT1
    and for D_7008_2
    TDLINE(context to E1EDPT1 )
                                                      ====>UDF====>D_7008_2
    Contant(=1)
    It should work becasue my map is working fine. If not let me know error message.
    Thanks
    Shubhankar

  • Mapping problem:from E1EDK14-ORGID to PORDCR102-PUR_GROUP

    Mapping problem:from E1EDK14-ORGID to PORDCR102-PUR_GROUP
    E1EDK14 occurs 4 times in the source sys:
    1   E1EDK14-QUALF = '014'
         E1EDK14-ORGID = 'YP01'      <=  purchase organization
    2   E1EDK14-QUALF = '009'
         E1EDK14-ORGID = '001'      <=  purchase group
    3   E1EDK14-QUALF = '013'
         E1EDK14-ORGID = 'NB'      <=  document type
    4   E1EDK14-QUALF = '011'
         E1EDK14-ORGID = 'C999'      <=  company code
    I always want to copy "E1EDK14-ORGID = '001'" to PORDCR102-PUR_GROUP.
    I have a solution which works but not perfect:
    E1EDK14-ORGID=>copyvalue[1]=>PORDCR102-PUR_GROUP
    I want to have the perfect mapping as follow:
    IF E1EDK14-QUALF = '009'.
      E1EDK14-ORGID = '001' => PORDCR102-PUR_GROUP
    ENDIF.
    I did it in the data flow editor as follow:
    /PORDCR102/IDOC/E1PORDCR1/E1BPMEPOHEADER/PUR_GROUP=
    ifWithoutElse([keepss=false]stringEquals
    (removeContexts(/ORDERS05/IDOC/E1EDK14/QUALF=),
    const([value=009])), /ORDERS05/IDOC/E1EDK14/ORGID=)
    But the result in the target sys is always 'YP0'(The first E1EDK14-ORGID)
    How to solve this problem?
    Thanks
    ming yu

    Hi,
    Try like this.
    E1EDK14-QUALF   --------
    Constant(009) ----------------   EqualsS --------------- 
                                                                 And(Boolean Function)     ------ IfWithoutElse -- PORDCR102-PUR_GROUP
    E1EDK14-ORGID -------                                                      E1EDK14-ORGID  ----------------
    Constant(001)  --------------   EqualsS ------------------
    Regards,
    P.Venkat

Maybe you are looking for

  • Segmentação de Contas

    Boa Tarde. Estamos tentando habilitar no SAP a Segmentação de Contas, seguindo as orientações do material (apostila SAP) TB1100 página 2-10 / 2-11. Seguindo todos os passos de acordo com as instruções, quando chegamos no momento de SEGMENTARMOS AS CO

  • Triggering END_OF_PAGE IN CLASSIC REPORT

    Hi Experts,                       I have one classical reporting in that END_OF_PAGE is not Triggered At last Page due to Less No of Records in last Page,can anyone tell me how to trigger END_OF_PAGE  . i want to display the page total for every page

  • Can I use an iMac as a display for a Wii & Playstation 3?

    Hello folks, My GF and I are planning to buy a 24" iMac and we are planning to replace our old boxy television with the iMac. Can someone please tell me if it's possible to connect a Wii or a Playstation to the iMac, or should I keep the old telly ha

  • How to retrieve the text in pa20 (HR-ABAP)

    Hi HR-ABAP experts, I Need to retrieve the text stored for a emplyee.below i am giving the full details, In Pa20 transaction if we give the perso. no and select the 0008 infotype.then click on overview tab.then in overview screen if  i select any rec

  • Error Connecting to MySql (character set index '49')

    I downloaded the Oracle Sql Developer extensions and went to Tools / Preferences / Third Part and set the location for the Jar file. When I try and test the connection to the MySql database I get this error: An error was encountered performing the re