Need help with xml mapping
HI All,
i have sap internal table with this value and i want to mapp it to xml file like below,
Name value
User 1234
DueDate yyyyy
<User>1234</User>
<DueDate>yyyyy</DueDate>
the problem is when i use call transformation i get in the table
<name>1234</name>
<value>yyyyy</value>
how can i get the mapp that i need ?
Regards
JOy
Edited by: Joy Stpr on Aug 10, 2009 2:56 PM
Edited by: Joy Stpr on Aug 10, 2009 3:47 PM
Check this
Program Code
report zars
no standard page heading line-size 255.
data: xml_out type string .
data: begin of ty_data,
name type string,
value type string,
end of ty_data.
types: begin of ty_user,
user type sy-uname,
duedate type sy-datum,
end of ty_user.
data: itab type standard table of ty_user,
la_tab like line of itab,
xmlstr type xstring.
la_tab-user = 'TEST1'.
la_tab-duedate = '200908101'.
append la_tab to itab.
clear la_tab.
la_tab-user = 'TEST2'.
la_tab-duedate = '200909101'.
append la_tab to itab.
clear la_tab.
data : itab1 type swbhtmltable.
data: it_data like table of ty_data,
wa_data like line of it_data.
data result type string.
call transformation zaRs
source table = itab
result xml xml_out.
call function 'SWA_STRING_TO_TABLE'
exporting
character_string = xml_out
importing
character_table = itab1.
call function 'GUI_DOWNLOAD'
exporting
filetype = 'BIN'
filename = 'c:xx.xml'
tables
data_tab = itab1.
XLST Program
<?sap.transform simple?>
<tt:transform xmlns:tt="http://www.sap.com/transformation-templates">
<tt:root name="table"></tt:root>
<tt:template>
<table>
<tt:loop ref=".table">
<item>
<USER>
<tt:value ref="USER"></tt:value>
</USER>
</item>
<item>
<DUEDATE>
<tt:value ref="DUEDATE"></tt:value>
</DUEDATE>
</item>
</tt:loop>
</table>
</tt:template>
</tt:transform>
Result XML File
<?xml version="1.0" encoding="iso-8859-1" ?>
- <table>
- <item>
<USER>TEST1</USER>
</item>
- <item>
<DUEDATE>2009-08-10</DUEDATE>
</item>
- <item>
<USER>TEST2</USER>
</item>
- <item>
<DUEDATE>2009-09-10</DUEDATE>
</item>
</table>
a®
Similar Messages
-
I need help with my mapping - CL_MAPPING_XMS_PLSRV3-ENTER_PLSRV
hi, guys, i need help with my mapping, i dont know this error (i not speak english)
<Trace level="1" type="B">CL_MAPPING_XMS_PLSRV3-ENTER_PLSRV</Trace>
<Trace level="2" type="T">......attachment XI_Context not found </Trace>
<Trace level="3" type="T">Mapping already defined in interface determination </Trace>
<Trace level="3" type="T">Object ID of Interface Mapping 4B903E2DDC853C1493E1DED5C5ED70A3 </Trace>
<Trace level="3" type="T">Version ID of Interface Mapping 88D96A70BAAE11DFAE5EE925C0A800C2 </Trace>
<Trace level="1" type="T">Mapping-Object-Id:4B903E2DDC853C1493E1DED5C5ED70A3 </Trace>
<Trace level="1" type="T">Mapping-SWCV:88D96A70BAAE11DFAE5EE925C0A800C2 </Trace>
<Trace level="1" type="T">Mapping-Step:1 </Trace>
<Trace level="1" type="T">Mapping-Type:JAVA_JDK </Trace>
<Trace level="1" type="T">Mapping-Program:com/sap/xi/tf/_mm_sgipi_fi001_vta_clientes_ </Trace>
<Trace level="3" type="T">MTOM Attachments Are Written to the Payload </Trace>
<Trace level="3" type="T">Dynamic Configuration Is Empty </Trace>
<Trace level="3" type="T">Executing multi-mapping </Trace>
<Trace level="1" type="E">CL_XMS_PLSRV_MAPPING~ENTER_PLSRV</Trace>
help me pleaseyou can use the sharedobject to record a user/computer has taken your quiz, the session data and record their results. at the start of your quiz, check for the sharedobject and, if it exists, check the other data and take appropriate action.
-
I need help with XML Gallery Fade in out transition. somebody please help me :(
I need help with XML Gallery Fade in out transition. somebody please help me
I have my post dont want to duplicate itThe problem doesn't lie with your feed, although it does contain an error - you have given a non-existent sub-category. You need to stick to the categories and sub-categories listed here:
http://www.apple.com/itunes/podcasts/specs.html#categories
Subscribing to your feed from the iTunes Store page work as such, but the episodes throw up an error message. The problem lies with your episode media files: you are trying to stream them. Pasting the URL into a browser produces a download (where it should play the file) of a small file which does not play and in fact is a text file containing (in the case of ep.2) this:
[Reference]
Ref1=http://stream.riverratdoc.com/RiverratDoc/episode2.mp3?MSWMExt=.asf
Ref2=http://70.33.177.247:80/RiverratDoc/episode2.mp3?MSWMExt=.asf
You must provide a direct link to the actual mp3 file. Streaming won't work. The test is that if you paste the URL of the media file (as given in the feed) into the address bar of a browser it should play the file. -
Need help with XML transformation
I am not sure this is the right place for this. But i will try it here. I am very troubled with my XSLT. Trying to transform a text Coupon which has the following html for it. So,
_1. INPUT is:_
<html>
<head>
</head>
<body>
<p>
This coupon is for a good guy whose first name is :
</p>
<p>
</p>
<p align="center">
Sadd
</p>
<p align="center">
</p>
<p align="right">
<b>also</b> whose <var>full_name</var> is Sadd Hossain
</p>
<p align="left">
</p>
<p align="left">
He is a <font size="3">software </font><font size="4">engineer for</font><font size="5">
S&H</font>
</p>
</body>
</html>
*2. output needed is:*
<?xml version="1.0" encoding="UTF-8"?>
<POSMESSAGE>
<TextMSG >
This coupon is for a good guy whose first name is :
</TextMSG>
<TextMSG >
</TextMSG>
<TextMSG align="center">
<emph>SADD</emph>
</TextMSG>
<TextMSG >
</TextMSG>
<TextMSG align="right" >
also whose full_name is Sadd Hossain
</TextMSG>
<TextMSG>
</TextMSG>
<TextMSG align="left" >
He is a software engineer
for S&H
</TextMSG>
</POSMESSAGE>
*3. XSLT for this*
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml"/>
<xsl:template match="body">
<POSMESSAGE>
<xsl:for-each select="p">
<TextMSG>
<!--xsl:if test="not[@align='']"-->
<xsl:attribute name="align"><xsl:value-of select="@align"/></xsl:attribute>
<!--/xsl:if-->
<xsl:attribute name="font"><xsl:value-of select="@size"/></xsl:attribute>
<xsl:value-of select="."/>
</TextMSG>
<xsl:for-each select="b">
<emph>
<xsl:value-of select="."/>
</emph>
</xsl:for-each>
</xsl:for-each>
</POSMESSAGE>
</xsl:template>
</xsl:stylesheet>
*4: the above xslt generating this output*
<?xml version="1.0" encoding="UTF-8"?>
<POSMESSAGE><TextMSG align="" font="">
This coupon is for a good guy whose first name is :
</TextMSG><TextMSG align="" font="">
</TextMSG><TextMSG align="center" font="">
SADD
</TextMSG><TextMSG align="center" font="">
</TextMSG><TextMSG align="right" font="">
also whose full_name is Sadd Hossain
</TextMSG><TextMSG align="left" font="">
</TextMSG><TextMSG align="left" font="">
He is a software engineer
for S&H
</
*5: Need help with this. what should my xslt look like to get the desired output???????????????*
any help or direction will be very much appreciated. Thank you_I have below suggestions:
1. Please use code option given in message editor toolbar for posting any formatted content like XML, Java code snippet etc.
2. replace & in your source XML with _& a m p ;_ (Without spaces, I have put spaces to make it visible here).
3. I have modified your XSLT according output XML you have given. I am not sure what you want to do with some elements like <b>, <font>, <var> etc. change below XSLT as you require for these elements.
Modified XSLT:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml"/>
<xsl:template match="body">
<POSMESSAGE>
<xsl:for-each select="p">
<TextMSG>
<xsl:if test=". != ''">
<xsl:for-each select="@align">
<xsl:attribute name="align">
<xsl:value-of select="."></xsl:value-of>
</xsl:attribute>
</xsl:for-each>
<xsl:value-of select="."/>
</xsl:if>
</TextMSG>
</xsl:for-each>
</POSMESSAGE>
</xsl:template>
</xsl:stylesheet>
OUTPUT:
<?xml version="1.0"?>
<POSMESSAGE>
<TextMSG>This coupon is for a good guy whose first name is :</TextMSG>
<TextMSG/>
<TextMSG align="center">Sadd</TextMSG>
<TextMSG/>
<TextMSG align="right">alsowhose full_name is Sadd Hossain</TextMSG>
<TextMSG/>
<TextMSG align="left">He is a softwareengineer forS&H</TextMSG>
</POSMESSAGE> -
Need help with instruments mapping
I have Korg PA80 and i hooked up midi out from it to midi in to Logic8, I have some nice realtime accompaniment tunes i can play on that keyboard, what i want to do is to play on my PA80 accompaniment tracks but replace all sounds with my custom sounds from my Logic plug ins, right now when I hit play all i hear is some garbage playing because no instruments properly mapped on Logic, I even created all 16 instrument tracks and set them all on all 16 channels, drums on 10 and so on, but when i start play on PA80 in Logic I still hear like bass trying to play all parts and not bass part only, same for drums when i press Am or Dm drums will play properly with some another drums sounds that trying to play all other instruments parts, need to separate them so the bass will play only bass part, drums will play drum part and so on, need help on how can i do that, lets say for drums i will choose logic drums sounds, for base Logic bases and so on, so Logic will become something like sound module for my PA80 instead of internal sounds I would like to use my virtual instruments sounds, thanks a lot
Thanks for your reply Dave.
I have no answer to your question but I found a way to create my SQL code with OWB mapping operators. Unfortunately it is very very slow compared to the execution of the SQL code and therefore not useful at all. I connected the following steps all in one mapping:
1. Table operator(T006_SITE) -> Filter(T006A01PK_SITEID where T006A11FK_COUNTRYID IS NULL)
2. Table operator(T002_COUNTRY) -> AGG (MAX T002A01PK_COUNTRYID)
3. JOIN the output from 1. and 2.(T006A01PK_SITEID and T002A01PK_COUNTRYID))
4. UPDATE T006_SITE with the output from 3. (T006A01PK_SITEID as matching column and T006A11FK_COUNTRYID as column to be updated)
The execution mode of the mapping should be set-based fail over to row-based, but it used row-based mode even without getting an error. Are UPDATE mappings only executable in row-based mode or is there a way to change that?
Does anyone have an idea how I can speed up that mapping or integrate my SQL code in the OWB?
Thanks in advance,
Dirk -
Hello, I would like to create an extention that will help to
manage a
glossary.
First I need to decide on the structure of the xml document
that will
contain all glossary entries. Since I don't have much
experience with XML in
extention content, I was wondering if there are certain
recommendations I
should follow.
What is preferable: using attributes that will holt the
content or rather
having xml-elements. What is easy to parce?
I would greatly appreciate any tips, help and suggestions.
Olyalyu.oO(olga)
>First I need to decide on the structure of the xml
document that will
>contain all glossary entries. Since I don't have much
experience with XML in
>extention content, I was wondering if there are certain
recommendations I
>should follow.
I would start as simple as possible, for example with
something like
this:
<glossary>
<entry>
<term>...</term>
<explanation>...</explanation>
</entry>
<entry>
<term>...</term>
<explanation>...</explanation>
</entry>
</glossary>
Of course it also depends on what you want to do with this
structure and
if you need additional informations.
>What is preferable: using attributes that will holt the
content or rather
>having xml-elements. What is easy to parce?
There's no real rule-of-thumb whether to use elements or
attributes.
If unsure, use elements.
Micha -
Need help with XML delay URGENT!!!
Hi i need help making a flash movie to load everything from
xml. It has to load text, images and flv, but, it has to load them
and end them at the time said in the xml. So flash loads and
unloade the text or image or video at the time specified in the
XML! PLEASE HELP I NEED THIS DONE TODAY!!!!! VERY IMPORTANT!!!
Contact me by msn [email protected] or send mail or
reply here!!It was probably a little unclear initially (no offence
intended ) whether your problem was with getting the data from XML
or with the sequencing aspect. I assume that its the sequencing
aspect based on your recent reply.
So if it was me I would parse the loaded info into Date
objects for the load and remove times and have this information
handled by some sort of sequencing code.
At its simplest, you could compare the xml-derived date/times
for load/unload with the current system date/time and use a
setInterval function to initiate the load after the calculated
difference in milliseconds has passed. Similar for the removeclip
timing. -
Please I need help with mokia maps!
Hello! I have bought my phone Nokia N76 and I found nokia maps v 1.2 in it, I tried to install nokia maps v 2 but it says "update error"!
when I tried to remove nokia maps 1.2 from the menu, it says unable to delete I tried this from the menu as it is not listed in the application manger list ! what shalI do?! . I don't wan't to update the software (it's the lastest). please if anybody knows help me please?
Message Edited by Twilight28 on 23-Nov-2009 06:53 PM
Message Edited by Twilight28 on 23-Nov-2009 06:54 PMReading above posts I seem to remember that for early versions of Nokia Maps the map data is stored in E:\Private\20001f63\diskcache\ NOT E:\CITIES as for later versions, so try deleting these + .qf file. You would need to enable "show hidden & system" files on your PC to see these however.
Provided that you carry out *#7370# or three finger reset (erases ALL data) after deleting these folder/files, you should really be able to install Nokia_Maps_2.0_4503_3.1.sis from here: http://nds1.nokia.com/files/support/global/phones/software/Nokia_Maps_2.0_4503_3.1.sis
You would need to run Nokia Maps application to create folder structure on memory card required to download mapping.
Happy to have helped forum with a Support Ratio = 42.5 -
Need help with xml video gallery
Hello everyone
I recently bought a xml video gallery. I'm loading the movie externally into another movie. When the xml gallery loads, it cancels all sounds.
I need to figure out where in the actionscription can i reverse the cancellation of sounds. Can anyone help? if possible, I can email, whomever is willing to help, the xml gallery to see if theres another reason the sound is being canceled.
Also, the sound of the gallery doesn't work til you click the volume scroller.
Here are two parts of actionscript included in the gallery:
part one:
// Import filter classes
import mx.transitions.Tween;
import mx.transitions.easing.*;
// Set flash variables
var xmlFileUrl:String = "playlist.xml";
var auto_play:String = "true";
// Set xml file URL
if (_root.xmlfile) {
xmlFileUrl = _root.xmlfile;
var V_SRC;
var thuArray:Array = new Array();
var currentVideo:Number = 0;
var totalItems;
var numOfItems:Number;
var itemDistance:Number = 120+5;
var itemHeight:Number = 80+2;
var Value:Number = 1;
var boundry:Number = 1;
var ratio:Number = 1;
var diff:Number = 1;
var collectionWidth:Number = 1;
var buffer:Number = 135*2;
this.createEmptyMovieClip("video_txt",this.getNextHighestDepth());
video_txt.createTextField("theText",video_txt.getNextHighestDepth(),0,0,584,36);
video_txt.theText.selectable = false;
video_txt.theText.autoSize = "left";
//The Format
myFormat = new TextFormat();
myFormat.font = _root.font_format;
myFormat.size = _root.font_size;
myFormat.color = _root.font_color;
myFormat.align = "center";
video_txt.theText.setNewTextFormat(myFormat);
// Create a new movieclip to load the thumbs
var thumbLoader:MovieClipLoader = new MovieClipLoader();
var thumbListener:Object = new Object();
thumbLoader.addListener(thumbListener);
thumbListener.onLoadInit = function(target_mc:MovieClip, httpStatus:Number)
new Tween(target_mc, "_alpha", Regular.easeOut, 0, 100, 1, true);
target_mc._parent.preloader_mc._alpha = 0;
var xml:XML = new XML();
xml.ignoreWhite = true;
xml.onLoad = xmlLoaded;
xml.load(xmlFileUrl);
// Load the xml file into the player
function xmlLoaded(b:Boolean) {
if (b) {
auto_play = this.firstChild.firstChild.attributes.auto_play;
scrollSpeed = parseInt(this.firstChild.firstChild.attributes.scrollSpeed);
totalItems = this.firstChild.firstChild.childNodes;
numOfItems = totalItems.length;
for (j=0; j<numOfItems; j++) {
var i = player_mc.main_mc.collection_mc.attachMovie("mc_Thumb", "thumb_"+j, j);
i._x = itemDistance*j;
thumbLoader.loadClip(totalItems[j].attributes.thumb,i.loader_mc);
i.id = j;
i.videoTitle = totalItems[j].attributes.title;
i.videoUrl = totalItems[j].attributes.src;
// Create an event for thumb rollover
i.onRollOver = iRoll;
i.onRollOut = i.onReleaseOutside=iOut;
i.onRelease = iRelease;
thuArray[j] = i;
// default first video
collectionWidth = player_mc.main_mc.collection_mc._width;
currentVideo = 0;
V_SRC = thuArray[0].videoUrl;
changeVideo();
//scope._alpha = 100;
new Tween(scope, "_alpha", Regular.easeOut, 0, 100, 0.5, true);
else
trace("Error! xml file not loaded");
// onRollOver Events
function iRoll() {
player_mc.mc_title.title_txt.htmlText = totalItems[this.id].attributes.title;
this.light_mc.play();
function iRelease() {
currentVideo = this.id;
changeVideo();
function changeVideo() {
V_SRC = thuArray[currentVideo].videoUrl;
player_mc.loadVideo();
currentThumb();
player_mc.mc_title.title_txt.htmlText = thuArray[currentVideo].videoTitle;
video_txt.theText.text = totalItems[currentVideo].attributes.title;
player_mc.so.getVolume();
player_mc.playStatus = 1;
player_mc.checkStatus();
function nextVideo() {
if (currentVideo<(numOfItems-1)) {
currentVideo++;
} else {
currentVideo = 0;
changeVideo();
function currentThumb() {
for (i=0; i<thuArray.length; i++) {
if (i == currentVideo) {
thuArray[i].enabled = true;
// Mouse movement on rollover
this.onMouseMove = function() {
collectionWidth = player_mc.main_mc.collection_mc._width;
boundry = player_mc.main_mc.area_mc._width;
if ((player_mc.main_mc._ymouse>0) && (player_mc.main_mc._ymouse<itemHeight)) {
if ((player_mc.main_mc._xmouse>0) && (player_mc.main_mc._xmouse<boundry)) {
ratio = player_mc.main_mc._xmouse/boundry;
diff = (collectionWidth-boundry)+buffer;
Value = Math.floor((-ratio)*diff)+(buffer/2);
updateAfterEvent();
this.onEnterFrame = function() {
// Define movement area and speed
if (player_mc.main_mc.collection_mc._width>player_mc.main_mc.area_mc._width) {
player_mc.main_mc.collection_mc._x = Math.round((player_mc.main_mc.collection_mc._x)+((Value-player_mc.main_mc.collection_mc._ x)/scrollSpeed));
if (player_mc.main_mc.collection_mc._x>0) {
player_mc.main_mc.collection_mc._x = 0;
} else if (player_mc.main_mc.collection_mc._x<(player_mc.main_mc.area_mc._width-(player_mc.main_mc. collection_mc._width))) {
player_mc.main_mc.collection_mc._x = Math.round(player_mc.main_mc.area_mc._width-(player_mc.main_mc.collection_mc._width));
} else {
player_mc.main_mc.collection_mc._x = 0;
updateAfterEvent();
part two:
// Define flash variables
var video_url:String = "";
var tempx:Number = this._parent._x;
var tempy:Number = this._parent._y;
var timeCounter:Number = 0;
var timeInSeconds:Number = _root.time_counter;
// Object to listen to onStage Event
videoObj = vid.videoObj;
// Setting up the connection
var nc:NetConnection = new NetConnection();
nc.connect(null);
var ns:NetStream = new NetStream(nc);
// Buffer time
ns.setBufferTime (10);
videoObj.attachVideo (ns);
function loadVideo () {
video_url = _parent.V_SRC;
trace(video_url);
ns.play (video_url);
function checkStatus()
if (playStatus == 1)
controls_mc.playPause.gotoAndStop("pause");
mc_playAgain._visible = false;
thumbs_out = false;
title_out = false;
else
controls_mc.playPause.gotoAndStop("play");
mc_playAgain._visible = true;
} // end else if
if (so.getVolume() == 0)
controls_mc.mute_mc.gotoAndStop("mute");
else
controls_mc.mute_mc.gotoAndStop("on");
}; // End of the function
mc_playAgain._visible = false;
// Check Status of video
ns.onStatus = function (info)
if (info.code == "NetStream.Buffer.Empty")
mc_buffer._visible = true;
else if (info.code == "NetStream.Buffer.Full")
mc_buffer._visible = false;
else if (info.code == "NetStream.Play.Stop")
ns.seek(0);
if (playStatus == 1)
ns.pause();
playStatus = 0;
else
trace;
} // end else if
mc_playAgain._visible = true;
mc_buffer._visible = false;
thumbs_out = true;
title_out = true;
checkStatus();
} // end else if
// Get info about video
ns.onMetaData = function(infoObject:Object)
FLVduration = infoObject["duration"];
relationshipW = infoObject.height / infoObject.width;
relationshipH = infoObject.width / infoObject.height;
if (Stage["displayState"] == "fullScreen")
largeSize ();
else
regularSize ();
if (_parent.auto_play == "false")
ns.seek(0);
if (playStatus == 1)
ns.pause();
playStatus = 0;
mc_buffer._visible = false;
controls_mc.playPause.gotoAndStop("play");
mc_playAgain._visible = true;
thumbs_out = true;
title_out = true;
_parent.auto_play = "true";
}// end else if
var videoInterval = setInterval(videoStatus, 100);
var amountLoaded;
var duration;
// videoStatus on load Event
function videoStatus()
amountLoaded = ns.bytesLoaded / ns.bytesTotal;
controls_mc.mc_progress.mc_buff._width = amountLoaded * 250;
controls_mc.mc_progress.mc_played._x = ns.time / duration * 250;
controls_mc.mc_progress.mc_played._xscale = Math.round(ns.time*100/FLVduration);
}; // End of the function
function scrubIt()
ns.seek(Math.floor(controls_mc.mc_progress.mc_played._x / 250 * duration));
}; // End of the function
// video time
var time_interval:Number = setInterval(checkTime, 500, ns);
function checkTime(ns:NetStream) {
//current time
var ns_seconds:Number = ns.time;
var minutes:Number = Math.floor(ns_seconds/60);
var seconds = Math.floor(ns_seconds%60);
sec = seconds;
min = minutes;
if (sec<10) {
sec = "0"+sec;
if (min<10) {
min = "0"+min;
controls_mc.time_txt.time_1.text = min+":"+sec;
//total time
var minutes2:Number = Math.floor(FLVduration/60);
var seconds2 = Math.floor(FLVduration%60);
sec2 = seconds2;
min2 = minutes2;
if (sec2<10) {
sec2 = "0"+sec2;
if (min2<10) {
min2 = "0"+min2;
controls_mc.time_txt.time_2.text = min2+":"+sec2;
if (controls_mc.time_txt.time_2.text == "NaN:NaN") {
controls_mc.time_txt.time_2.text = "00:00";
setStage ();
// Object to listen onStage Event
var stageL:Object = new Object ();
// function respnsible for content alignment
function setStage ()
if (Stage["displayState"] == "fullScreen") {
tempx = this._parent._x;
tempy = this._parent._y;
this._parent._x = 0;
this._parent._y = 0;
vidBg_mc._x = 0;
vidBg_mc._y = 0;
mc_title._x = 0;
mc_title._y = -30;
slide_me._x = 0;
slide_me._y = 0;
vidBg_mc._width = Stage.width;
vidBg_mc._height = Stage.height;
mc_title._width = Stage.width;
mc_title._height = Stage.height / 20;
slide_me._width = Stage.width;
slide_me._height = Stage.height / 20;
vid._x = vid._y = 0;
largeSize ();
controls_mc._x = Math.round ((Stage.width / 2) - (controls_mc._width / 2));
controls_mc._y = Math.round (Stage.height - 36);
mc_playAgain._x = Math.round ((Stage.width / 2) - (mc_playAgain._width / 2));
mc_playAgain._y = Math.round (Stage.height - 572);
thumbs_mc._x = Math.round ((Stage.width / 2) - (thumbs_mc._width / 2));
thumbs_mc._y = Math.round (Stage.height - 115);
main_mc._x = Math.round ((Stage.width / 2) - (controls_mc._width / 2));;
hide_mc.onEnterFrame = function () {
timeCounter = timeCounter + 1;
if (timeCounter >= timeInSeconds * 30) {
timeCounter = 0;
controls_mc._alpha = 0;
this.onMouseMove = function () {
timeCounter = 0;
controls_mc._alpha = 100;
else
delete hide_mc.onEnterFrame;
delete this.onMouseMove;
controls_mc._alpha = 100;
this._parent._x = tempx;
this._parent._y = tempy;
vidBg_mc._width = 600;
vidBg_mc._height = 360;
mc_title._width = 600;
mc_title._height = 30;
slide_me._width = 600;
slide_me._height = 30;
vidBg_mc._x = vid._x = 0;
vidBg_mc._y = vid._y = 35;
mc_title._x = vid._x = 0;
mc_title._y = vid._x = -30;
slide_me._x = vid._x = 0;
slide_me._y = vid._y = 35;
regularSize ();
controls_mc._x = 0;
controls_mc._y = 395;
mc_playAgain._x = 243;
mc_playAgain._y = 158;
thumbs_mc._x = 0;
thumbs_mc._y = 316;
main_mc._x = 0;
main_mc._y = 406;
mc_buffer._x = Math.round (vidBg_mc._x + (vidBg_mc._width / 2));
mc_buffer._y = Math.round (vidBg_mc._y + (vidBg_mc._height / 2));
// to apply when stage (browser window) is resized or modified
stageL.onResize = function () {
setStage ();
// attaching object to the stage
Stage.addListener (stageL);
MovieClip.prototype.slide = function(yPos) {
this._y -= (this._y-yPos)/5;
// tilte actions
mc_title.onEnterFrame = function()
if (Stage["displayState"] == "normal" && title_out == false)
this.slide(5);
else if (Stage["displayState"] == "normal" && title_out == true)
this.slide(35);
if (Stage["displayState"] == "fullScreen" && title_out == false)
this._y -= (this._y+106)/5;
else if (Stage["displayState"] == "fullScreen" && title_out == true)
this.slide(0);
// thumbs actions
main_mc.onEnterFrame = function()
if (Stage["displayState"] == "normal" && thumbs_out == false)
this.slide(406);
else if (Stage["displayState"] == "normal" && thumbs_out == true)
this.slide(299);
if (Stage["displayState"] == "fullScreen" && thumbs_out == false)
this._y = Math.round (Stage.height - 0);
else if (Stage["displayState"] == "fullScreen" && thumbs_out == true)
this._y = Math.round (Stage.height - 133);
// Playlist button
controls_mc.playlist_mc.onRollOver = function ()
this.gotoAndStop("playlistOver");
controls_mc.playlist_mc.onRollOut = controls_mc.playlist_mc.onReleaseOutside = function ()
this.gotoAndStop("playlist");
// Toggle playlist button
controls_mc.playlist_mc.onRelease = function ()
if (thumbs_out == false)
thumbs_out = true;
title_out = true;
else if (thumbs_out == true)
thumbs_out = false;
title_out = false;
} // end if else
// Define hit area for playPause button
vid.onPress = controls_mc.playPause.onRelease = function ()
ns.pause();
if (playStatus == 1)
controls_mc.playPause.gotoAndStop("play")
playStatus = 0;
checkStatus();
else if (playStatus == 0)
controls_mc.playPause.gotoAndStop("pause");
playStatus = 1;
checkStatus();
// playPause button
controls_mc.playPause.onRollOver = function ()
if (playStatus == 1)
this.gotoAndStop("pauseOver");
else
this.gotoAndStop("playOver");
} // end else if
controls_mc.playPause.onRollOut = controls_mc.playPause.onReleaseOutside = function ()
if (playStatus == 1)
this.gotoAndStop("pause");
else
this.gotoAndStop("play");
} // end else if
// Toggle playPause button
controls_mc.playPause.onRelease = function ()
ns.pause();
if (playStatus == 1)
this.gotoAndStop("play");
playStatus = 0;
checkStatus();
else if (playStatus == 0)
this.gotoAndStop("pause");
playStatus = 1;
checkStatus();
controls_mc.skip_mc.onRollOver = function ()
this.gotoAndStop("skipOver");
controls_mc.skip_mc.onRollOut = controls_mc.skip_mc.onReleaseOutside = function ()
this.gotoAndStop("skip");
controls_mc.skip_mc.onRelease = function ()
_parent.nextVideo()
// Play Again button
mc_playAgain.onRollOver = function ()
this.gotoAndStop("playAgainOver");
mc_playAgain.onRollOut = mc_playAgain.onReleaseOutside = function ()
this.gotoAndStop("playAgain");
// Toggle Play Again button
mc_playAgain.onRelease = function ()
this._visible = false;
ns.pause();
playStatus = 1;
checkStatus();
// make the seek bar clickable
controls_mc.mc_progress.mc_buff.onPress = function()
xpos = controls_mc.mc_progress._xmouse;
percent = Math.round(xpos/controls_mc.mc_progress._width*100);
seekTime = percent/100*FLVduration;
seekTime = Math.round(seekTime*100)/100;
ns.seek(seekTime);
// Set volume level
var s:Sound = new Sound();
s.setVolume(_root.volume_value);
controls_mc.mc_soundLevel.mc_volume._xscale = _root.volume_value;
// Volume control
controls_mc.mc_soundLevel.onPress = function()
volumeTo = (this._xmouse / this._width)*100;
this.mc_volume._xscale = volumeTo;
s.setVolume(volumeTo);
// Volume
_parent.createEmptyMovieClip("vSound", _parent.getNextHighestDepth());
vSound.attachAudio(ns);
var so = new Sound(vSound);
so.setVolume(_root.volume_value);
// Mute button
controls_mc.mute_mc.onRollOver = function ()
if (so.getVolume() >= 1)
this.gotoAndStop("onOver");
else
this.gotoAndStop("muteOver");
} // end else if
controls_mc.mute_mc.onRollOut = controls_mc.mute_mc.onReleaseOutside = function ()
if (so.getVolume() >= 1)
this.gotoAndStop("on");
else
this.gotoAndStop("mute");
} // end else if
// Toggle mute button
controls_mc.mute_mc.onRelease = function ()
if (so.getVolume() >= 1)
controls_mc.mc_soundLevel.mc_volume._xscale = 0;
so.setVolume(0);
this.gotoAndStop("muteOver");
else
controls_mc.mc_soundLevel.mc_volume._xscale = 70;
so.setVolume(_root.volume_value);
this.gotoAndStop("onOver");
} // end else if
// Resize video proportionaly
function regularSize ()
videoObj._width = 600;
videoObj._height = videoObj._width * relationshipW;
if (videoObj._height > 360)
videoObj._height = 360;
videoObj._width = videoObj._height * relationshipH;
videoObj.smoothing = true;
//var scale:Number;
videoObj._x = (600 - videoObj._width) / 2;
videoObj._y = (360 - videoObj._height) / 2;
function largeSize ()
videoObj._width = Stage.width;
videoObj._height = videoObj._width * relationshipW;
if (videoObj._height > Stage.height)
videoObj._height = Stage.height;
videoObj._width = videoObj._height * relationshipH;
videoObj.smoothing = true;
//var scale:Number;
videoObj._x = (Stage.width - videoObj._width) / 2;
videoObj._y = (Stage.height - videoObj._height) / 2;
// Fullscreen button
controls_mc.fullscreen_mc.onRollOver = function ()
if (Stage["displayState"] == "normal")
this.gotoAndStop("fullOver");
else
this.gotoAndStop("fullCloseOver");
} // end else if
controls_mc.fullscreen_mc.onRollOut = controls_mc.fullscreen_mc.onReleaseOutside = function ()
if (Stage["displayState"] == "normal")
this.gotoAndStop("full");
else
this.gotoAndStop("fullClose");
} // end else if
// Toggle fullscreen button
controls_mc.fullscreen_mc.onRelease = function ()
if (Stage["displayState"] == "normal")
Stage["displayState"] = "fullscreen";
_parent.video_txt.theText._visible = false;
else
Stage["displayState"] = "normal";
_parent.video_txt.theText._visible = true;if you mean sound works well when the gallery is tested without being loaded into another swf but fails when loaded, change the highlighted line:
// Import filter classes
import mx.transitions.Tween;
import mx.transitions.easing.*;
// Set flash variables
var xmlFileUrl:String = "playlist.xml";
var auto_play:String = "true";
// Set xml file URL
if (_root.xmlfile) {
xmlFileUrl = _root.xmlfile;
var V_SRC;
var thuArray:Array = new Array();
var currentVideo:Number = 0;
var totalItems;
var numOfItems:Number;
var itemDistance:Number = 120+5;
var itemHeight:Number = 80+2;
var Value:Number = 1;
var boundry:Number = 1;
var ratio:Number = 1;
var diff:Number = 1;
var collectionWidth:Number = 1;
var buffer:Number = 135*2;
this.createEmptyMovieClip("video_txt",this.getNextHighestDepth());
video_txt.createTextField("theText",video_txt.getNextHighestDepth(),0,0,584,36);
video_txt.theText.selectable = false;
video_txt.theText.autoSize = "left";
//The Format
myFormat = new TextFormat();
myFormat.font = _root.font_format;
myFormat.size = _root.font_size;
myFormat.color = _root.font_color;
myFormat.align = "center";
video_txt.theText.setNewTextFormat(myFormat);
// Create a new movieclip to load the thumbs
var thumbLoader:MovieClipLoader = new MovieClipLoader();
var thumbListener:Object = new Object();
thumbLoader.addListener(thumbListener);
thumbListener.onLoadInit = function(target_mc:MovieClip, httpStatus:Number)
new Tween(target_mc, "_alpha", Regular.easeOut, 0, 100, 1, true);
target_mc._parent.preloader_mc._alpha = 0;
var xml:XML = new XML();
xml.ignoreWhite = true;
xml.onLoad = xmlLoaded;
xml.load(xmlFileUrl);
// Load the xml file into the player
function xmlLoaded(b:Boolean) {
if (b) {
auto_play = this.firstChild.firstChild.attributes.auto_play;
scrollSpeed = parseInt(this.firstChild.firstChild.attributes.scrollSpeed);
totalItems = this.firstChild.firstChild.childNodes;
numOfItems = totalItems.length;
for (j=0; j<numOfItems; j++) {
var i = player_mc.main_mc.collection_mc.attachMovie("mc_Thumb", "thumb_"+j, j);
i._x = itemDistance*j;
thumbLoader.loadClip(totalItems[j].attributes.thumb,i.loader_mc);
i.id = j;
i.videoTitle = totalItems[j].attributes.title;
i.videoUrl = totalItems[j].attributes.src;
// Create an event for thumb rollover
i.onRollOver = iRoll;
i.onRollOut = i.onReleaseOutside=iOut;
i.onRelease = iRelease;
thuArray[j] = i;
// default first video
collectionWidth = player_mc.main_mc.collection_mc._width;
currentVideo = 0;
V_SRC = thuArray[0].videoUrl;
changeVideo();
//scope._alpha = 100;
new Tween(scope, "_alpha", Regular.easeOut, 0, 100, 0.5, true);
else
trace("Error! xml file not loaded");
// onRollOver Events
function iRoll() {
player_mc.mc_title.title_txt.htmlText = totalItems[this.id].attributes.title;
this.light_mc.play();
function iRelease() {
currentVideo = this.id;
changeVideo();
function changeVideo() {
V_SRC = thuArray[currentVideo].videoUrl;
player_mc.loadVideo();
currentThumb();
player_mc.mc_title.title_txt.htmlText = thuArray[currentVideo].videoTitle;
video_txt.theText.text = totalItems[currentVideo].attributes.title;
player_mc.so.getVolume();
player_mc.playStatus = 1;
player_mc.checkStatus();
function nextVideo() {
if (currentVideo<(numOfItems-1)) {
currentVideo++;
} else {
currentVideo = 0;
changeVideo();
function currentThumb() {
for (i=0; i<thuArray.length; i++) {
if (i == currentVideo) {
thuArray[i].enabled = true;
// Mouse movement on rollover
this.onMouseMove = function() {
collectionWidth = player_mc.main_mc.collection_mc._width;
boundry = player_mc.main_mc.area_mc._width;
if ((player_mc.main_mc._ymouse>0) && (player_mc.main_mc._ymouse<itemHeight)) {
if ((player_mc.main_mc._xmouse>0) && (player_mc.main_mc._xmouse<boundry)) {
ratio = player_mc.main_mc._xmouse/boundry;
diff = (collectionWidth-boundry)+buffer;
Value = Math.floor((-ratio)*diff)+(buffer/2);
updateAfterEvent();
this.onEnterFrame = function() {
// Define movement area and speed
if (player_mc.main_mc.collection_mc._width>player_mc.main_mc.area_mc._width) {
player_mc.main_mc.collection_mc._x = Math.round((player_mc.main_mc.collection_mc._x)+((Value-player_mc.main_mc.colle ction_mc._x)/scrollSpeed));
if (player_mc.main_mc.collection_mc._x>0) {
player_mc.main_mc.collection_mc._x = 0;
} else if (player_mc.main_mc.collection_mc._x<(player_mc.main_mc.area_mc._width-(player_m c.main_mc.collection_mc._width))) {
player_mc.main_mc.collection_mc._x = Math.round(player_mc.main_mc.area_mc._width-(player_mc.main_mc.collection_mc._w idth));
} else {
player_mc.main_mc.collection_mc._x = 0;
updateAfterEvent();
part two:
// Define flash variables
var video_url:String = "";
var tempx:Number = this._parent._x;
var tempy:Number = this._parent._y;
var timeCounter:Number = 0;
var timeInSeconds:Number = _root.time_counter;
// Object to listen to onStage Event
videoObj = vid.videoObj;
// Setting up the connection
var nc:NetConnection = new NetConnection();
nc.connect(null);
var ns:NetStream = new NetStream(nc);
// Buffer time
ns.setBufferTime (10);
videoObj.attachVideo (ns);
function loadVideo () {
video_url = _parent.V_SRC;
trace(video_url);
ns.play (video_url);
function checkStatus()
if (playStatus == 1)
controls_mc.playPause.gotoAndStop("pause");
mc_playAgain._visible = false;
thumbs_out = false;
title_out = false;
else
controls_mc.playPause.gotoAndStop("play");
mc_playAgain._visible = true;
} // end else if
if (so.getVolume() == 0)
controls_mc.mute_mc.gotoAndStop("mute");
else
controls_mc.mute_mc.gotoAndStop("on");
}; // End of the function
mc_playAgain._visible = false;
// Check Status of video
ns.onStatus = function (info)
if (info.code == "NetStream.Buffer.Empty")
mc_buffer._visible = true;
else if (info.code == "NetStream.Buffer.Full")
mc_buffer._visible = false;
else if (info.code == "NetStream.Play.Stop")
ns.seek(0);
if (playStatus == 1)
ns.pause();
playStatus = 0;
else
trace;
} // end else if
mc_playAgain._visible = true;
mc_buffer._visible = false;
thumbs_out = true;
title_out = true;
checkStatus();
} // end else if
// Get info about video
ns.onMetaData = function(infoObject:Object)
FLVduration = infoObject["duration"];
relationshipW = infoObject.height / infoObject.width;
relationshipH = infoObject.width / infoObject.height;
if (Stage["displayState"] == "fullScreen")
largeSize ();
else
regularSize ();
if (_parent.auto_play == "false")
ns.seek(0);
if (playStatus == 1)
ns.pause();
playStatus = 0;
mc_buffer._visible = false;
controls_mc.playPause.gotoAndStop("play");
mc_playAgain._visible = true;
thumbs_out = true;
title_out = true;
_parent.auto_play = "true";
}// end else if
var videoInterval = setInterval(videoStatus, 100);
var amountLoaded;
var duration;
// videoStatus on load Event
function videoStatus()
amountLoaded = ns.bytesLoaded / ns.bytesTotal;
controls_mc.mc_progress.mc_buff._width = amountLoaded * 250;
controls_mc.mc_progress.mc_played._x = ns.time / duration * 250;
controls_mc.mc_progress.mc_played._xscale = Math.round(ns.time*100/FLVduration);
}; // End of the function
function scrubIt()
ns.seek(Math.floor(controls_mc.mc_progress.mc_played._x / 250 * duration));
}; // End of the function
// video time
var time_interval:Number = setInterval(checkTime, 500, ns);
function checkTime(ns:NetStream) {
//current time
var ns_seconds:Number = ns.time;
var minutes:Number = Math.floor(ns_seconds/60);
var seconds = Math.floor(ns_seconds%60);
sec = seconds;
min = minutes;
if (sec<10) {
sec = "0"+sec;
if (min<10) {
min = "0"+min;
controls_mc.time_txt.time_1.text = min+":"+sec;
//total time
var minutes2:Number = Math.floor(FLVduration/60);
var seconds2 = Math.floor(FLVduration%60);
sec2 = seconds2;
min2 = minutes2;
if (sec2<10) {
sec2 = "0"+sec2;
if (min2<10) {
min2 = "0"+min2;
controls_mc.time_txt.time_2.text = min2+":"+sec2;
if (controls_mc.time_txt.time_2.text == "NaN:NaN") {
controls_mc.time_txt.time_2.text = "00:00";
setStage ();
// Object to listen onStage Event
var stageL:Object = new Object ();
// function respnsible for content alignment
function setStage ()
if (Stage["displayState"] == "fullScreen") {
tempx = this._parent._x;
tempy = this._parent._y;
this._parent._x = 0;
this._parent._y = 0;
vidBg_mc._x = 0;
vidBg_mc._y = 0;
mc_title._x = 0;
mc_title._y = -30;
slide_me._x = 0;
slide_me._y = 0;
vidBg_mc._width = Stage.width;
vidBg_mc._height = Stage.height;
mc_title._width = Stage.width;
mc_title._height = Stage.height / 20;
slide_me._width = Stage.width;
slide_me._height = Stage.height / 20;
vid._x = vid._y = 0;
largeSize ();
controls_mc._x = Math.round ((Stage.width / 2) - (controls_mc._width / 2));
controls_mc._y = Math.round (Stage.height - 36);
mc_playAgain._x = Math.round ((Stage.width / 2) - (mc_playAgain._width / 2));
mc_playAgain._y = Math.round (Stage.height - 572);
thumbs_mc._x = Math.round ((Stage.width / 2) - (thumbs_mc._width / 2));
thumbs_mc._y = Math.round (Stage.height - 115);
main_mc._x = Math.round ((Stage.width / 2) - (controls_mc._width / 2));;
hide_mc.onEnterFrame = function () {
timeCounter = timeCounter + 1;
if (timeCounter >= timeInSeconds * 30) {
timeCounter = 0;
controls_mc._alpha = 0;
this.onMouseMove = function () {
timeCounter = 0;
controls_mc._alpha = 100;
else
delete hide_mc.onEnterFrame;
delete this.onMouseMove;
controls_mc._alpha = 100;
this._parent._x = tempx;
this._parent._y = tempy;
vidBg_mc._width = 600;
vidBg_mc._height = 360;
mc_title._width = 600;
mc_title._height = 30;
slide_me._width = 600;
slide_me._height = 30;
vidBg_mc._x = vid._x = 0;
vidBg_mc._y = vid._y = 35;
mc_title._x = vid._x = 0;
mc_title._y = vid._x = -30;
slide_me._x = vid._x = 0;
slide_me._y = vid._y = 35;
regularSize ();
controls_mc._x = 0;
controls_mc._y = 395;
mc_playAgain._x = 243;
mc_playAgain._y = 158;
thumbs_mc._x = 0;
thumbs_mc._y = 316;
main_mc._x = 0;
main_mc._y = 406;
mc_buffer._x = Math.round (vidBg_mc._x + (vidBg_mc._width / 2));
mc_buffer._y = Math.round (vidBg_mc._y + (vidBg_mc._height / 2));
// to apply when stage (browser window) is resized or modified
stageL.onResize = function () {
setStage ();
// attaching object to the stage
Stage.addListener (stageL);
MovieClip.prototype.slide = function(yPos) {
this._y -= (this._y-yPos)/5;
// tilte actions
mc_title.onEnterFrame = function()
if (Stage["displayState"] == "normal" && title_out == false)
this.slide(5);
else if (Stage["displayState"] == "normal" && title_out == true)
this.slide(35);
if (Stage["displayState"] == "fullScreen" && title_out == false)
this._y -= (this._y+106)/5;
else if (Stage["displayState"] == "fullScreen" && title_out == true)
this.slide(0);
// thumbs actions
main_mc.onEnterFrame = function()
if (Stage["displayState"] == "normal" && thumbs_out == false)
this.slide(406);
else if (Stage["displayState"] == "normal" && thumbs_out == true)
this.slide(299);
if (Stage["displayState"] == "fullScreen" && thumbs_out == false)
this._y = Math.round (Stage.height - 0);
else if (Stage["displayState"] == "fullScreen" && thumbs_out == true)
this._y = Math.round (Stage.height - 133);
// Playlist button
controls_mc.playlist_mc.onRollOver = function ()
this.gotoAndStop("playlistOver");
controls_mc.playlist_mc.onRollOut = controls_mc.playlist_mc.onReleaseOutside = function ()
this.gotoAndStop("playlist");
// Toggle playlist button
controls_mc.playlist_mc.onRelease = function ()
if (thumbs_out == false)
thumbs_out = true;
title_out = true;
else if (thumbs_out == true)
thumbs_out = false;
title_out = false;
} // end if else
// Define hit area for playPause button
vid.onPress = controls_mc.playPause.onRelease = function ()
ns.pause();
if (playStatus == 1)
controls_mc.playPause.gotoAndStop("play")
playStatus = 0;
checkStatus();
else if (playStatus == 0)
controls_mc.playPause.gotoAndStop("pause");
playStatus = 1;
checkStatus();
// playPause button
controls_mc.playPause.onRollOver = function ()
if (playStatus == 1)
this.gotoAndStop("pauseOver");
else
this.gotoAndStop("playOver");
} // end else if
controls_mc.playPause.onRollOut = controls_mc.playPause.onReleaseOutside = function ()
if (playStatus == 1)
this.gotoAndStop("pause");
else
this.gotoAndStop("play");
} // end else if
// Toggle playPause button
controls_mc.playPause.onRelease = function ()
ns.pause();
if (playStatus == 1)
this.gotoAndStop("play");
playStatus = 0;
checkStatus();
else if (playStatus == 0)
this.gotoAndStop("pause");
playStatus = 1;
checkStatus();
controls_mc.skip_mc.onRollOver = function ()
this.gotoAndStop("skipOver");
controls_mc.skip_mc.onRollOut = controls_mc.skip_mc.onReleaseOutside = function ()
this.gotoAndStop("skip");
controls_mc.skip_mc.onRelease = function ()
_parent.nextVideo()
// Play Again button
mc_playAgain.onRollOver = function ()
this.gotoAndStop("playAgainOver");
mc_playAgain.onRollOut = mc_playAgain.onReleaseOutside = function ()
this.gotoAndStop("playAgain");
// Toggle Play Again button
mc_playAgain.onRelease = function ()
this._visible = false;
ns.pause();
playStatus = 1;
checkStatus();
// make the seek bar clickable
controls_mc.mc_progress.mc_buff.onPress = function()
xpos = controls_mc.mc_progress._xmouse;
percent = Math.round(xpos/controls_mc.mc_progress._width*100);
seekTime = percent/100*FLVduration;
seekTime = Math.round(seekTime*100)/100;
ns.seek(seekTime);
// Set volume level
var s:Sound = new Sound(this);
s.setVolume(_root.volume_value);
controls_mc.mc_soundLevel.mc_volume._xscale = _root.volume_value;
// Volume control
controls_mc.mc_soundLevel.onPress = function()
volumeTo = (this._xmouse / this._width)*100;
this.mc_volume._xscale = volumeTo;
s.setVolume(volumeTo);
// Volume
_parent.createEmptyMovieClip("vSound", _parent.getNextHighestDepth());
vSound.attachAudio(ns);
var so = new Sound(vSound);
so.setVolume(_root.volume_value);
// Mute button
controls_mc.mute_mc.onRollOver = function ()
if (so.getVolume() >= 1)
this.gotoAndStop("onOver");
else
this.gotoAndStop("muteOver");
} // end else if
controls_mc.mute_mc.onRollOut = controls_mc.mute_mc.onReleaseOutside = function ()
if (so.getVolume() >= 1)
this.gotoAndStop("on");
else
this.gotoAndStop("mute");
} // end else if
// Toggle mute button
controls_mc.mute_mc.onRelease = function ()
if (so.getVolume() >= 1)
controls_mc.mc_soundLevel.mc_volume._xscale = 0;
so.setVolume(0);
this.gotoAndStop("muteOver");
else
controls_mc.mc_soundLevel.mc_volume._xscale = 70;
so.setVolume(_root.volume_value);
this.gotoAndStop("onOver");
} // end else if
// Resize video proportionaly
function regularSize ()
videoObj._width = 600;
videoObj._height = videoObj._width * relationshipW;
if (videoObj._height > 360)
videoObj._height = 360;
videoObj._width = videoObj._height * relationshipH;
videoObj.smoothing = true;
//var scale:Number;
videoObj._x = (600 - videoObj._width) / 2;
videoObj._y = (360 - videoObj._height) / 2;
function largeSize ()
videoObj._width = Stage.width;
videoObj._height = videoObj._width * relationshipW;
if (videoObj._height > Stage.height)
videoObj._height = Stage.height;
videoObj._width = videoObj._height * relationshipH;
videoObj.smoothing = true;
//var scale:Number;
videoObj._x = (Stage.width - videoObj._width) / 2;
videoObj._y = (Stage.height - videoObj._height) / 2;
// Fullscreen button
controls_mc.fullscreen_mc.onRollOver = function ()
if (Stage["displayState"] == "normal")
this.gotoAndStop("fullOver");
else
this.gotoAndStop("fullCloseOver");
} // end else if
controls_mc.fullscreen_mc.onRollOut = controls_mc.fullscreen_mc.onReleaseOutside = function ()
if (Stage["displayState"] == "normal")
this.gotoAndStop("full");
else
this.gotoAndStop("fullClose");
} // end else if
// Toggle fullscreen button
controls_mc.fullscreen_mc.onRelease = function ()
if (Stage["displayState"] == "normal")
Stage["displayState"] = "fullscreen";
_parent.video_txt.theText._visible = false;
else
Stage["displayState"] = "normal";
_parent.video_txt.theText._visible = true; -
Need help with XML response to refresh document with context and prompts
I've been working with the Restful api for a few weeks now and have been able to figure out most of what I need to automate testing of our reports. However, one task that I have not been able to figure out is how to refresh a document that contains both a context and two prompts for dates.
Here is what I have tried, and what the API responds with.
1) I queried the API for this document's parameters using the following call after logging in -
headers = {:accept=>'application/xml', :content_type=>'application/xml', :x_sap_logontoken=>@token}
url = "http://our.url.net:6405/biprws/raylight/v1/documents/12345/parameters"
RestClient.get(url, headers)
The response from the API is:
<parameters>
<parameter dpId="DP0" type="context" optional="false">
<id>0</id>
<technicalName>cQuery 1</technicalName>
<name>Select a context</name>
<answer type="Text" constrained="true">
<info cardinality="Single">
<lov partial="false">
<values>
<value id="CTX_1">LOAN</value>
<value id="CTX_9">LOAN_APPLICATION</value>
</values>
</lov>
<values>
<value id="CTX_1">LOAN</value>
<value id="CTX_9">LOAN_APPLICATION</value>
</values>
<previous>
<value id="CTX_9">LOAN_APPLICATION</value>
</previous>
</info>
<values>
<value id="CTX_9">LOAN_APPLICATION</value>
</values>
</answer>
</parameter>
</parameters>
2) This tells me I need to supply a context, so I then replace my RestClient.get call with a RestClient.put call with the following payload:
<parameters>
<parameter>
<id>0</id>
<answer>
<values>
<value id=\"CTX_9\"/>
</values>
</answer>
</parameter>
</parameters>
3) This satisfies the context portion of the refresh. The API replies with the following response, telling me I need to answer two prompts -
<parameters>
<parameter dpId=\"DP0\" type=\"prompt\" optional=\"false\">
<id>1</id>
<technicalName>psEnter value(s) for Start Date of Application Received Date</technicalName>
<name>Enter value(s) for Start Date of Application Received Date</name>
<answer type=\"DateTime\" constrained=\"false\">\
<info cardinality=\"Single\"/>
</answer>
</parameter>
<parameter dpId=\"DP0\" type=\"prompt\" optional=\"false\">
<id>2</id>
<technicalName>psEnter value for End Date of Application Received Date</technicalName>
<name>Enter value for End Date of Application Received Date</name>\
<answer type=\"DateTime\" constrained=\"false\">
<info cardinality=\"Single\"/>
</answer>
</parameter>
</parameters>
4) Here is where I am having problems. I have tried all kinds of permutations of the below payload/response body. All I ever get from the API is a 400 - BadResponse error.
<parameters>
<parameter>
<id>0</id>
<answer>
<values>
<value id=\"CTX_9\"/>
</values>
</answer>
</parameter>
</parameters>
<parameters>
<parameter type=\"prompt\">
<id > 1 </ id>
<answer type=\"DateTime\">
<values>
<value>2012-06-11T09:50:54.000-04:00</value>
</values>
</answer>
</parameter>
<parameter type=\"prompt\">
<id > 2 </ id>
<answer type=\"DateTime\">
<values>
<value>2014-07-11T09:50:54.967-04:00</value>
</values>
</answer>
</parameter>
</parameters>
I am not very good with XML and the terminology around it, and I haven't received much training around using the Restful API other than the SDK documentation. I have a feeling there is something very basic that Im missing here. What is the correct XML needed in the response body to properly refresh the document?If you are more confortable with JSON, Raylight supports it as well.
Best regards,
Anthony -
Hello All,
Please can someone please advice me how to get the following gradient, I have tried but with no luck I am not good with gradient map!Hello!
What part do you have trouble with? the recreation of the gradient, or how it affects the image?
In the gradient map editor, you can double-click on the bottom markers (called gradients stops) to change their color, and drag them around to re-create what you see... Click between two markers to add one, drag a gradient stop down to remove it.
In fact, you do not need the fourth gradient stop, the white one on the right side.
The top markers control the transparency (in regular gradients, gradient maps are unaffected)
With such a gradient map, the dark areas of the image will be white, neutrals will be black and light areas will be white. -
Hi,
I have problems to create an update on the NULL values in a table with the mapping operators of the OWB mapping editor. The SQL syntax is the following:
UPDATE T006_SITE
SET T006A11FK_COUNTRYID = (select MAX(T002A01PK_COUNTRYID) from T002_COUNTRY)
WHERE T006A11FK_COUNTRYID IS NULL;
Any suggestions which mapping operators I should use? Or is there even a way that I can use my SQL code?
Thanks in advance,
DirkThanks for your reply Dave.
I have no answer to your question but I found a way to create my SQL code with OWB mapping operators. Unfortunately it is very very slow compared to the execution of the SQL code and therefore not useful at all. I connected the following steps all in one mapping:
1. Table operator(T006_SITE) -> Filter(T006A01PK_SITEID where T006A11FK_COUNTRYID IS NULL)
2. Table operator(T002_COUNTRY) -> AGG (MAX T002A01PK_COUNTRYID)
3. JOIN the output from 1. and 2.(T006A01PK_SITEID and T002A01PK_COUNTRYID))
4. UPDATE T006_SITE with the output from 3. (T006A01PK_SITEID as matching column and T006A11FK_COUNTRYID as column to be updated)
The execution mode of the mapping should be set-based fail over to row-based, but it used row-based mode even without getting an error. Are UPDATE mappings only executable in row-based mode or is there a way to change that?
Does anyone have an idea how I can speed up that mapping or integrate my SQL code in the OWB?
Thanks in advance,
Dirk -
I need help with XML coding. Please reply
I recently created a podcast. I submitted it to iTunes. All was successful but the download speed was Horrible. I had about 10 people test it -- after that the ISP I use shifted my Domain to a Streaming Server. The Tech then changed the specs to my iTunes <guid>. I updated the info on iTunes, but since then no one has been able to download it from iTunes. The RSS feed on the page ( website) works, but if I type it in to an RSS feed, I am even having problems getting it to recognize it.
I feel the main problem is that the shifting of servers and changing the <guid> caused a major problem. Since my ISP and Tech rep is mainly Windows oriented, his expertise with Apple is very little. ( As is mine ).
I will insert a snippet of the code and ask for Help... I really need to fix this, because I have secured another Domain, and wish to create a new podcast.
(BTW if any one listens to any of them, I now have a mixing board and Mic.. so I am trying to better it.)
Website: www.riverratdoc.com
snippet of XML code
<enclosure url="http://stream.riverratdoc.com/RiverratDoc/episode1a.mp3" length="9551933" type="audio/mpeg" />
<guid isPermaLink="false">09072010EPS01</guid><!-- just make unique per episode -->
<pubDate>Fri, 9 Jul 2010 12:40:01 GMT</pubDate>
Thank you in advance
River Rat DocThe problem doesn't lie with your feed, although it does contain an error - you have given a non-existent sub-category. You need to stick to the categories and sub-categories listed here:
http://www.apple.com/itunes/podcasts/specs.html#categories
Subscribing to your feed from the iTunes Store page work as such, but the episodes throw up an error message. The problem lies with your episode media files: you are trying to stream them. Pasting the URL into a browser produces a download (where it should play the file) of a small file which does not play and in fact is a text file containing (in the case of ep.2) this:
[Reference]
Ref1=http://stream.riverratdoc.com/RiverratDoc/episode2.mp3?MSWMExt=.asf
Ref2=http://70.33.177.247:80/RiverratDoc/episode2.mp3?MSWMExt=.asf
You must provide a direct link to the actual mp3 file. Streaming won't work. The test is that if you paste the URL of the media file (as given in the feed) into the address bar of a browser it should play the file. -
Need Help with XSLT Mapping....
My scenario is synchronous scenario. SAP(Proxy) to XI to WebServer(SOAP)
The response is coming back in asingle ANY field and so I guess I need XSLT Mapping to map it to the response message going backto SAP.
The response sent by webserver is of the structure:
<?xml version="1.0" encoding="UTF-8"?>
<GetStudentsExResponse xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://tempuri.org/LMSWebSvc/LMS_Interface">
<GetStudentsExResult>
<Courses xmlns="">
<Warnings/>
<Course CourseName="Requal RWT with Instructional Blocks TEST" CourseId="1325">
<Student LastName="LMSTest" FirstName="A" SSN="112345678" LoginID="lms123456a" CompanyName="LMS Test" CourseStatus="P" CourseStatusDate="03/14/2007 09:24:36" CourseScore="90">
<Lesson LessonCode="1915" LessonName="RWT Part 1"/>
<Lesson LessonCode="1916" LessonName="RWT Part 2"/>
<Lesson LessonCode="1917" LessonName="RWT Requal Exam" LessonStatus="p" LessonStatusDate="03/14/2007 09:24:36" LessonScore="90" ProctorID="1" ProctorName="Account Default">
<ExamInteractions QuesNum="17758" StudentResp="D" CorrectResp="D" Judged="c"/>
<ExamInteractions QuesNum="17769" StudentResp="B" CorrectResp="C" Judged="w"/>
<ExamInteractions QuesNum="8465" StudentResp="A" CorrectResp="A" Judged="c"/>
<ExamInteractions QuesNum="8471" StudentResp="A" CorrectResp="A" Judged="c"/>
<ExamInteractions QuesNum="8496" StudentResp="C" CorrectResp="C" Judged="c"/>
</Lesson>
</Student>
</Course>
</Courses>
</GetStudentsExResult>
</GetStudentsExResponse>
The Structure that I need to map this to is:
<?xml version="1.0" encoding="UTF-8"?>
<ns0:Course_Response_MT xmlns:ns0="urn:sce-com:xi:fi:goyala">
<GetStudentsExResponse>
<GetStudentsExResult>
<Courses>
<Course>
<CourseName/>
<CourseID/>
<Student>
<LastName/>
<FirstName/>
<SSN/>
<LoginID/>
<CourseStatus/>
<CourseStatusDate/>
<CourseScore/>
<Lesson>
<LessonCode/>
<LessonName/>
<LessonStatus/>
<LessonStatusDate/>
<ExamInteractions>
<QuesNum/>
<StudentResp/>
<CorrectResp/>
<Judged/>
</ExamInteractions>
</Lesson>
</Student>
</Course>
</Courses>
</GetStudentsExResult>
</GetStudentsExResponse>
</ns0:Course_Response_MT>
and the xslt mapping that I have written for this is:
<?xml version='1.0' encoding='utf-8' ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:a="urn:sce-com:xi:fi:goyala" xmlns:DateUtils="com.sce.hcm.xi.util.DateUtils">
<xsl:template match="/">
<a:Course_Response_MT>
<GetStudentsExResponse>
<GetStudentsExResult>
<Courses>
<CourseName>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course[@CourseName]"/>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course[@CourseID]"/>
<Student>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student[@LastName]"/>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student[@FirstName]"/>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student[@SSN]"/>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student[@LoginID]"/>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student[@CourseStatus]"/>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student[@CourseStatusDate]"/>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student[@CourseScore]"/>
<Lesson>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson[@LessonCode]"/>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson[@LessonName]"/>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson[@LessonStatus]"/>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson[@LessonStatusDate]"/>
<ExamInteractions>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson/ExamInteractions[@QuesNum]"/>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson/ExamInteractions[@StudentResp]"/>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson/ExamInteractions[@CorrectResp]"/>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson/ExamInteractions[@Judged]"/>
</ExamInteractions>
</Lesson>
</Student>
</CourseName>
</Courses>
</GetStudentsExResult>
</GetStudentsExResponse>
</a:Course_Response_MT>
</xsl:template>
</xsl:stylesheet>
But This mapping is not working... I am getting errors...
Pls advice, this is urgent..
Regards,
XIer
Edited by: XIer on Apr 25, 2008 12:23 PM
Edited by: XIer on Apr 25, 2008 12:37 PM
Edited by: XIer on Apr 25, 2008 12:37 PMHi All,
I have now modified my XSLT Mapping as :
<?xml version='1.0' encoding='utf-8' ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:a="urn:sce-com:xi:fi:goyala" xmlns:DateUtils="com.sce.hcm.xi.util.DateUtils">
<xsl:template match="/">
<a:Course_Response_MT>
<GetStudentsExResponse>
<xsl:value-of select="a:GetStudentsExResponse"/>
<GetStudentsExResult>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult"/>
<Courses>
<xsl:for-each select="a:GetStudentsExResponse/GetStudentsExResult/Courses">
<Course>
<CourseName>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/@CourseName"/>
</CourseName>
<CourseID>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/@CourseID"/>
</CourseID>
<xsl:for-each select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student">
<Student>
<LastName>
<xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/@LastName"/></LastName>
<FirstName> <xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/@FirstName"/></FirstName>
<SSN><xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/@SSN"/></SSN>
<LoginID><xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/@LoginID"/></LoginID>
<CourseStatus><xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/@CourseStatus"/></CourseStatus>
<CourseStatusDate><xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/@CourseStatusDate"/></CourseStatusDate>
<CourseScore><xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/@CourseScore"/></CourseScore>
<xsl:for-each select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson">
<Lesson>
<LessonCode><xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson/@LessonCode"/></LessonCode>
<LessonName><xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson/@LessonName"/></LessonName>
<LessonStatus><xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson/@LessonStatus"/></LessonStatus>
<LessonStatusDate><xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson/@LessonStatusDate"/></LessonStatusDate>
<ExamInteractions>
<QuesNum> <xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson/ExamInteractions/@QuesNum"/></QuesNum>
<StudentResp> <xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson/ExamInteractions/@StudentResp"/></StudentResp>
<CorrectResp> <xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson/ExamInteractions/@CorrectResp"/></CorrectResp>
<Judged> <xsl:value-of select="a:GetStudentsExResponse/GetStudentsExResult/Courses/Course/Student/Lesson/ExamInteractions/@Judged"/></Judged>
</ExamInteractions>
</Lesson>
</xsl:for-each>
</Student>
</xsl:for-each>
</Course>
</xsl:for-each>
</Courses>
</GetStudentsExResult>
</GetStudentsExResponse>
</a:Course_Response_MT>
</xsl:template>
</xsl:stylesheet>
However when i execute this mapping in IR, I get empty tags at the target side:
<?xml version="1.0" encoding="UTF-8"?>
<a:Course_Response_MT xmlns:a="urn:sce-com:xi:fi:goyala"><GetStudentsExResponse><GetStudentsExResult><Courses/></GetStudentsExResult></GetStudentsExResponse></a:Course_Response_MT>
Please Advice....
Regards,
XIer -
Need help with port mapping on Airport Utility 6.1
Ive been trying to port map on my TC with Airport Utility 6.1 and failing miserably. Port still closed. Can anyone advise where Im going wrong? Am trying to set up my home camera to be viewed outside.
I managed to key in the ports etc under Network and Port Settings. But nothing works. I'm tearing my hair out.
Any suggestions to try would be helpful.
ThanksUse the 5.6 utility.. it is much easier and I think works better.. although you cannot load 5.6 directly into 10.8 the version for Lion actually works fine.
Download 5.6.
http://support.apple.com/kb/DL1482
Download unpkg
http://www.macupdate.com/app/mac/16357/unpkg
Open the AU 5.6 dmg and drag the pkg over the open unpkg.. it will create the directory on the desktop. You can either run it from there or drag the utility to your utilties directory.
Take screen shots of each step. Post them here.
That way we can tell you where it has gone wrong.
What port exactly does the camera need open?
How are you connecting remotely?
ie do you have a fixed public IP?? If not how are you getting IP?
Is the TC the only router in the network.. it is irrelevant unless the TC is the one and only router.
Maybe you are looking for
-
Setting date,month,year and time
How do i change the Date /month/year and time on my printer. My printer is Laser Jet Professional M1212 nf mfp
-
cant open pdf file ..it says....The adobe/acrobat reader that is running can not be used to view PDF files in a web browser. please exit adobe/acrobat reader and exit your web browser and try again
-
Function Module/Bapi to get Customer down payment in F-28/F-29
Hi All, I need Function Module or Bapi to get the Customer down payment which have been posted in F-29/F-28 transactions. Please do needful. Regards Madhu
-
Problem of Visualization of Discoverer Report in Portal
I have a report the Discoverer in PORTAL and the problem is that it is seen simultaneously too small and different from as visualizes in the Discoverer Plus or Discoverer Desktop. I have Discoverer and Portal version 9.0.4 Thanks
-
Removing videos without itunes
Hi, is there anyway I can remove some movies on my ipod without itunes. I am travelling right now and don't have my computer and want to find a way to delete mopvies and add some on without itunes. mac to pod workes great for take videos off your ipo