Copying artist/album/songs titles into word document
i am wanting to to copy the artist, albums and song titles into word so i can print it out and store a hard copy with my back-up dvd that i did?
is it possible?
many thanks if anyone can help
I'm not sure how you can get this information into Word, but you can print a list with the following columns: song/length/artist/album for your entire library in iTunes. To do this, make sure you're in your main library and that you have your music listed in the order you want the final document to appear. Then on the top line select File>Print> then put a check mark in the song listing circle and hit okay. You should get a printed list of everything in your library.
Similar Messages
-
Shell script to copy Music/Artists/Albums/Songs to Music2/Artists/Songs
Hi,
My Music folder is currently organized as follows (standard iTunes behaviour):
Music
Artists
Albums
Songs
Artist1
Album1
Song11
Song12
Song13
Album2
Song21
Song22
Artist2
Album1
Song11
Song12
Album2
Song21
Song22
Song23
etc.
I would like to copy this Music Folder to an USB flash drive, but without the "Albums" level, i.e.:
Music2
Artists
Songs
Artist1
Song11
Song12
Song13
Song21
Song22
Artist2
Song11
Song12
Song21
Song22
Song23
I assume that an unix shell script is able to do this, but this is beyond my skills
Or do you know a software that can manipulate files in such a way?
Thanks in advance.OK, clear. For future runs, should I be better off runing the command in a directory on my Mac, and copy the resulting music folder to the USB drive?
No, the optimum solution would be to format the thumb drive with the HFS+ filesystem. You could use cp, ditto, or rsync will the proper options and not copy the file fork to the thumbdrive. Or you could filter out the file forks in the two find commands.
ls | while read dir; do
find "${dir}" -type f ! -name "._*" \( -name "*.mp3" -o -name "*.m4a" \) -print0 | xargs -0 -I '{}' mv -n "{}" "${dir}"
done
find . -type f ! -name "._*" \( -name "*.mp3" -o -name "*.m4a" \) -mindepth 3 | while read file; do
base=${file%\/*}
base=${base##*\/}
mv "${file}" "${file%*\/*\/*}"/"$base"_"${file##*\/}"
done
The warning or error messages are innocuous anyways.
OK. I removed them manually, which took me less than one minute. Should I add a "rm -r .DS_Store" step before future runs?
I wouldn't bother. Change->
find . -type d -empty -delete
to
find . -type d -mindepth 2 -maxdepth 2 -exec rm -rf '{}' '+' -
Vicious MPD widget not displaying the artist and song title
EDIT: This thread can be closed now. It turns out Clementine doesn't support mpd and I'm now running ncmpcpp and the widget shows the artist and song title.
I have trouble getting the mpd widget running in awesome wm, it will only display "N/A - N/A". I've read the wiki and done a lot of googling but I can't figure out what I'm missing.
Here's my rc.lua
-- Standard awesome library
local gears = require("gears")
local awful = require("awful")
awful.rules = require("awful.rules")
require("awful.autofocus")
-- Widget and layout library
local wibox = require("wibox")
local vicious = require("vicious")
-- Theme handling library
local beautiful = require("beautiful")
-- Notification library
local naughty = require("naughty")
local menubar = require("menubar")
-- {{{ Error handling
-- Check if awesome encountered an error during startup and fell back to
-- another config (This code will only ever execute for the fallback config)
if awesome.startup_errors then
naughty.notify({ preset = naughty.config.presets.critical,
title = "Oops, there were errors during startup!",
text = awesome.startup_errors })
end
-- Handle runtime errors after startup
do
local in_error = false
awesome.connect_signal("debug::error", function (err)
-- Make sure we don't go into an endless error loop
if in_error then return end
in_error = true
naughty.notify({ preset = naughty.config.presets.critical,
title = "Oops, an error happened!",
text = err })
in_error = false
end)
end
-- {{{ Variable definitions
-- Themes define colours, icons, and wallpapers
beautiful.init("/usr/share/awesome/themes/zenburn/theme.lua")
-- This is used later as the default terminal and editor to run.
terminal = "tilda"
editor = "gedit"
-- os.getenv("EDITOR") or
editor_cmd = terminal .. " -e " .. editor
-- Default modkey.
-- Usually, Mod4 is the key with a logo between Control and Alt.
-- If you do not like this or do not have such a key,
-- I suggest you to remap Mod4 to another key using xmodmap or other tools.
-- However, you can use another modifier like Mod1, but it may interact with others.
modkey = "Mod4"
-- Table of layouts to cover with awful.layout.inc, order matters.
local layouts =
awful.layout.suit.floating,
awful.layout.suit.tile,
awful.layout.suit.tile.left,
awful.layout.suit.tile.bottom,
awful.layout.suit.tile.top,
awful.layout.suit.fair,
awful.layout.suit.fair.horizontal,
awful.layout.suit.spiral,
awful.layout.suit.spiral.dwindle,
awful.layout.suit.max,
awful.layout.suit.max.fullscreen,
awful.layout.suit.magnifier
-- {{{ Wallpaper
if beautiful.wallpaper then
for s = 1, screen.count() do
gears.wallpaper.maximized(beautiful.wallpaper, s, true)
end
end
-- {{{ Tags
-- Define a tag table which will hold all screen tags.
tags = {}
for s = 1, screen.count() do
-- Each screen has its own tag table.
tags[s] = awful.tag({"term", "www", "mp3", "skype", "office", "dev", "misc" }, s)
end
-- {{{ Menu
-- Create a laucher widget and a main menu
myawesomemenu = {
{ "manual", terminal .. " -e man awesome" },
{ "edit config", editor_cmd .. " " .. awesome.conffile },
{ "reboot", "gksudo reboot" },
{ "restart", awesome.restart },
{ "quit", awesome.quit }
mymainmenu = awful.menu({ items = { { "awesome", myawesomemenu, beautiful.awesome_icon },
{ "open terminal", terminal }
mylauncher = awful.widget.launcher({ image = beautiful.awesome_icon,
menu = mymainmenu })
-- Menubar configuration
menubar.utils.terminal = terminal -- Set the terminal for applications that require it
-- Initialize widget
mpdwidget = wibox.widget.textbox()
-- Register widget
vicious.register(mpdwidget, vicious.widgets.mpd,
function (mpdwidget, args)
if args["{state}"] == "Stop" then
return " - "
else
return args["{Artist}"]..' - '.. args["{Title}"]
end
end, 10)
-- {{{ Wibox
-- Create a textclock widget
mytextclock = awful.widget.textclock()
-- Create a wibox for each screen and add it
mywibox = {}
mypromptbox = {}
mylayoutbox = {}
mytaglist = {}
mytaglist.buttons = awful.util.table.join(
awful.button({ }, 1, awful.tag.viewonly),
awful.button({ modkey }, 1, awful.client.movetotag),
awful.button({ }, 3, awful.tag.viewtoggle),
awful.button({ modkey }, 3, awful.client.toggletag),
awful.button({ }, 4, function(t) awful.tag.viewnext(awful.tag.getscreen(t)) end),
awful.button({ }, 5, function(t) awful.tag.viewprev(awful.tag.getscreen(t)) end)
mytasklist = {}
mytasklist.buttons = awful.util.table.join(
awful.button({ }, 1, function (c)
if c == client.focus then
c.minimized = true
else
-- Without this, the following
-- :isvisible() makes no sense
c.minimized = false
if not c:isvisible() then
awful.tag.viewonly(c:tags()[1])
end
-- This will also un-minimize
-- the client, if needed
client.focus = c
c:raise()
end
end),
awful.button({ }, 3, function ()
if instance then
instance:hide()
instance = nil
else
instance = awful.menu.clients({ width=250 })
end
end),
awful.button({ }, 4, function ()
awful.client.focus.byidx(1)
if client.focus then client.focus:raise() end
end),
awful.button({ }, 5, function ()
awful.client.focus.byidx(-1)
if client.focus then client.focus:raise() end
end))
for s = 1, screen.count() do
-- Create a promptbox for each screen
mypromptbox[s] = awful.widget.prompt()
-- Create an imagebox widget which will contains an icon indicating which layout we're using.
-- We need one layoutbox per screen.
mylayoutbox[s] = awful.widget.layoutbox(s)
mylayoutbox[s]:buttons(awful.util.table.join(
awful.button({ }, 1, function () awful.layout.inc(layouts, 1) end),
awful.button({ }, 3, function () awful.layout.inc(layouts, -1) end),
awful.button({ }, 4, function () awful.layout.inc(layouts, 1) end),
awful.button({ }, 5, function () awful.layout.inc(layouts, -1) end)))
-- Create a taglist widget
mytaglist[s] = awful.widget.taglist(s, awful.widget.taglist.filter.all, mytaglist.buttons)
-- Create a tasklist widget
mytasklist[s] = awful.widget.tasklist(s, awful.widget.tasklist.filter.currenttags, mytasklist.buttons)
-- Create the wibox
mywibox[s] = awful.wibox({ position = "top", screen = s })
-- Widgets that are aligned to the left
local left_layout = wibox.layout.fixed.horizontal()
left_layout:add(mylauncher)
left_layout:add(mytaglist[s])
left_layout:add(mypromptbox[s])
-- Widgets that are aligned to the right
local right_layout = wibox.layout.fixed.horizontal()
right_layout:add(mpdwidget)
if s == 1 then right_layout:add(wibox.widget.systray()) end
right_layout:add(mytextclock)
right_layout:add(mylayoutbox[s])
-- Now bring it all together (with the tasklist in the middle)
local layout = wibox.layout.align.horizontal()
layout:set_left(left_layout)
layout:set_middle(mytasklist[s])
layout:set_right(right_layout)
mywibox[s]:set_widget(layout)
end
-- {{{ Mouse bindings
root.buttons(awful.util.table.join(
awful.button({ }, 3, function () mymainmenu:toggle() end),
awful.button({ }, 4, awful.tag.viewnext),
awful.button({ }, 5, awful.tag.viewprev)
-- {{{ Key bindings
globalkeys = awful.util.table.join(
awful.key({ modkey, }, "Left", awful.tag.viewprev ),
awful.key({ modkey, }, "Right", awful.tag.viewnext ),
awful.key({ modkey, }, "Escape", awful.tag.history.restore),
awful.key({ modkey, }, "j",
function ()
awful.client.focus.byidx( 1)
if client.focus then client.focus:raise() end
end),
awful.key({ modkey, }, "k",
function ()
awful.client.focus.byidx(-1)
if client.focus then client.focus:raise() end
end),
awful.key({ modkey, }, "w", function () mymainmenu:show() end),
-- Layout manipulation
awful.key({ modkey, "Shift" }, "j", function () awful.client.swap.byidx( 1) end),
awful.key({ modkey, "Shift" }, "k", function () awful.client.swap.byidx( -1) end),
awful.key({ modkey, "Control" }, "j", function () awful.screen.focus_relative( 1) end),
awful.key({ modkey, "Control" }, "k", function () awful.screen.focus_relative(-1) end),
awful.key({ modkey, }, "u", awful.client.urgent.jumpto),
awful.key({ modkey, }, "Tab",
function ()
awful.client.focus.history.previous()
if client.focus then
client.focus:raise()
end
end),
-- Standard program
awful.key({ modkey, }, "Return", function () awful.util.spawn(terminal) end),
awful.key({ modkey, "Control" }, "r", awesome.restart),
awful.key({ modkey, "Shift" }, "q", awesome.quit),
awful.key({ modkey, }, "l", function () awful.tag.incmwfact( 0.05) end),
awful.key({ modkey, }, "h", function () awful.tag.incmwfact(-0.05) end),
awful.key({ modkey, "Shift" }, "h", function () awful.tag.incnmaster( 1) end),
awful.key({ modkey, "Shift" }, "l", function () awful.tag.incnmaster(-1) end),
awful.key({ modkey, "Control" }, "h", function () awful.tag.incncol( 1) end),
awful.key({ modkey, "Control" }, "l", function () awful.tag.incncol(-1) end),
awful.key({ modkey, }, "space", function () awful.layout.inc(layouts, 1) end),
awful.key({ modkey, "Shift" }, "space", function () awful.layout.inc(layouts, -1) end),
awful.key({ modkey, "Control" }, "n", awful.client.restore),
-- Prompt
awful.key({ modkey }, "r", function () mypromptbox[mouse.screen]:run() end),
awful.key({ modkey }, "x",
function ()
awful.prompt.run({ prompt = "Run Lua code: " },
mypromptbox[mouse.screen].widget,
awful.util.eval, nil,
awful.util.getdir("cache") .. "/history_eval")
end),
-- Menubar
awful.key({ modkey }, "p", function() menubar.show() end)
clientkeys = awful.util.table.join(
awful.key({ modkey, }, "f", function (c) c.fullscreen = not c.fullscreen end),
awful.key({ modkey, "Shift" }, "c", function (c) c:kill() end),
awful.key({ modkey, "Control" }, "space", awful.client.floating.toggle ),
awful.key({ modkey, "Control" }, "Return", function (c) c:swap(awful.client.getmaster()) end),
awful.key({ modkey, }, "o", awful.client.movetoscreen ),
awful.key({ modkey, }, "t", function (c) c.ontop = not c.ontop end),
awful.key({ modkey, }, "n",
function (c)
-- The client currently has the input focus, so it cannot be
-- minimized, since minimized clients can't have the focus.
c.minimized = true
end),
awful.key({ modkey, }, "m",
function (c)
c.maximized_horizontal = not c.maximized_horizontal
c.maximized_vertical = not c.maximized_vertical
end)
-- Bind all key numbers to tags.
-- Be careful: we use keycodes to make it works on any keyboard layout.
-- This should map on the top row of your keyboard, usually 1 to 9.
for i = 1, 9 do
globalkeys = awful.util.table.join(globalkeys,
awful.key({ modkey }, "#" .. i + 9,
function ()
local screen = mouse.screen
local tag = awful.tag.gettags(screen)[i]
if tag then
awful.tag.viewonly(tag)
end
end),
awful.key({ modkey, "Control" }, "#" .. i + 9,
function ()
local screen = mouse.screen
local tag = awful.tag.gettags(screen)[i]
if tag then
awful.tag.viewtoggle(tag)
end
end),
awful.key({ modkey, "Shift" }, "#" .. i + 9,
function ()
if client.focus then
local tag = awful.tag.gettags(client.focus.screen)[i]
if tag then
awful.client.movetotag(tag)
end
end
end),
awful.key({ modkey, "Control", "Shift" }, "#" .. i + 9,
function ()
if client.focus then
local tag = awful.tag.gettags(client.focus.screen)[i]
if tag then
awful.client.toggletag(tag)
end
end
end))
end
clientbuttons = awful.util.table.join(
awful.button({ }, 1, function (c) client.focus = c; c:raise() end),
awful.button({ modkey }, 1, awful.mouse.client.move),
awful.button({ modkey }, 3, awful.mouse.client.resize))
-- Set keys
root.keys(globalkeys)
-- {{{ Rules
awful.rules.rules = {
-- All clients will match this rule.
{ rule = { },
properties = { border_width = beautiful.border_width,
border_color = beautiful.border_normal,
focus = awful.client.focus.filter,
keys = clientkeys,
buttons = clientbuttons } },
{ rule = { class = "MPlayer" },
properties = { floating = true } },
{ rule = { class = "pinentry" },
properties = { floating = true } },
{ rule = { class = "gimp" },
properties = { floating = true } },
-- Set Firefox to always map on tags number 2 of screen 1.
{ rule = { class = "Firefox" },
properties = { tag = tags[2] } },
-- {{{ Signals
-- Signal function to execute when a new client appears.
client.connect_signal("manage", function (c, startup)
-- Enable sloppy focus
c:connect_signal("mouse::enter", function(c)
if awful.layout.get(c.screen) ~= awful.layout.suit.magnifier
and awful.client.focus.filter(c) then
client.focus = c
end
end)
if not startup then
-- Set the windows at the slave,
-- i.e. put it at the end of others instead of setting it master.
-- awful.client.setslave(c)
-- Put windows in a smart way, only if they does not set an initial position.
if not c.size_hints.user_position and not c.size_hints.program_position then
awful.placement.no_overlap(c)
awful.placement.no_offscreen(c)
end
end
local titlebars_enabled = false
if titlebars_enabled and (c.type == "normal" or c.type == "dialog") then
-- buttons for the titlebar
local buttons = awful.util.table.join(
awful.button({ }, 1, function()
client.focus = c
c:raise()
awful.mouse.client.move(c)
end),
awful.button({ }, 3, function()
client.focus = c
c:raise()
awful.mouse.client.resize(c)
end)
-- Widgets that are aligned to the left
local left_layout = wibox.layout.fixed.horizontal()
left_layout:add(awful.titlebar.widget.iconwidget(c))
left_layout:buttons(buttons)
-- Widgets that are aligned to the right
local right_layout = wibox.layout.fixed.horizontal()
right_layout:add(awful.titlebar.widget.floatingbutton(c))
right_layout:add(awful.titlebar.widget.maximizedbutton(c))
right_layout:add(awful.titlebar.widget.stickybutton(c))
right_layout:add(awful.titlebar.widget.ontopbutton(c))
right_layout:add(awful.titlebar.widget.closebutton(c))
-- The title goes in the middle
local middle_layout = wibox.layout.flex.horizontal()
local title = awful.titlebar.widget.titlewidget(c)
title:set_align("center")
middle_layout:add(title)
middle_layout:buttons(buttons)
-- Now bring it all together
local layout = wibox.layout.align.horizontal()
layout:set_left(left_layout)
layout:set_right(right_layout)
layout:set_middle(middle_layout)
awful.titlebar(c):set_widget(layout)
end
end)
client.connect_signal("focus", function(c) c.border_color = beautiful.border_focus end)
client.connect_signal("unfocus", function(c) c.border_color = beautiful.border_normal end)
function run_once(prg,arg_string,pname,screen)
if not prg then
do return nil end
end
if not pname then
pname = prg
end
if not arg_string then
awful.util.spawn_with_shell("pgrep -f -u $USER -x '" .. pname .. "' || (" .. prg .. ")",screen)
else
awful.util.spawn_with_shell("pgrep -f -u $USER -x '" .. pname .. " ".. arg_string .."' || (" .. prg .. " " .. arg_string .. ")",screen)
end
end
awful.util.spawn_with_shell("setxkbmap -layout se")
run_once("tilda",nil,nil,"term")
run_once("firefox &",nil,nil,"www")
run_once("clementine ",nil,nil,"mp3")
run_once("skype ",nil,nil,"skype")
run_once("dropboxd &",nil,nil,nil)
run_once("keepassx ",nil,nil,"www")
run_once("volumeicon &",nil,nil,nil)
awesome.font = "DejaVuSansCondensed 12"
Here's my mpd.lua:
-- Licensed under the GNU General Public License v2
-- * (c) 2010, Adrian C. <[email protected]>
-- {{{ Grab environment
local tonumber = tonumber
local io = { popen = io.popen }
local setmetatable = setmetatable
local string = { gmatch = string.gmatch }
local helpers = require("vicious.helpers")
-- Mpd: provides Music Player Daemon information
-- vicious.widgets.mpd
local mpd = {}
-- {{{ MPD widget type
local function worker(format, warg)
local mpd_state = {
["{volume}"] = 0,
["{state}"] = "N/A",
["{Artist}"] = "N/A",
["{Title}"] = "N/A",
["{Album}"] = "N/A",
["{Genre}"] = "N/A",
--["{Name}"] = "N/A",
--["{file}"] = "N/A",
-- Fallback to MPD defaults
local pass = warg and (warg.password or warg[1]) or "\"\""
local host = warg and (warg.host or warg[2]) or "127.0.0.1"
local port = warg and (warg.port or warg[3]) or "6600"
-- Construct MPD client options
local mpdh = "telnet://"..host..":"..port
local echo = "echo 'password "..pass.."\nstatus\ncurrentsong\nclose'"
-- Get data from MPD server
local f = io.popen(echo.." | curl --connect-timeout 1 -fsm 3 "..mpdh)
for line in f:lines() do
for k, v in string.gmatch(line, "([%w]+):[%s](.*)$") do
if k == "volume" then mpd_state["{"..k.."}"] = v and tonumber(v)
elseif k == "state" then mpd_state["{"..k.."}"] = helpers.capitalize(v)
elseif k == "Artist" then mpd_state["{"..k.."}"] = helpers.escape(v)
elseif k == "Title" then mpd_state["{"..k.."}"] = helpers.escape(v)
elseif k == "Album" then mpd_state["{"..k.."}"] = helpers.escape(v)
elseif k == "Genre" then mpd_state["{"..k.."}"] = helpers.escape(v)
--elseif k == "Name" then mpd_state["{"..k.."}"] = helpers.escape(v)
--elseif k == "file" then mpd_state["{"..k.."}"] = helpers.escape(v)
end
end
end
f:close()
return mpd_state
end
return setmetatable(mpd, { __call = function(_, ...) return worker(...) end })
I'm using Clementine to play the music if that makes a difference.
Last edited by DisposableHero (2013-11-25 01:12:01)Hi,
If the songs were purchased from itunes, I suggest that you delete the tracks from your itunes library and move to trash (providing you live in a country that permits redownloading). See http://support.apple.com/kb/PH12283.
Jim -
Exporting smartform into word document
how to export smartform into word document . i tried converting into pdf and then download but it showing run time error that conversion is not possible and also it tells that otf command // missing. is it not possible to export directly to word document instead of pdf.plz give clear description of what to be done exactly with sample codes.
marks will be rewarded.Hi Lavanya,
Converting the output from Spool to Word is possible.
Here is the sample code.
I cut pasted a code from a link i got in the website, see if it helps.
ZSPOOL2WORD
Genera un fichero Word a partir de una orden de spool
MÓDULO : FI *
TIPO : Listado *
TITULO : Generación fichero Word
DESCRIPCION : Genera un fichero Word a partir de una orden de spool
AUTOR: Andres Picazo FECHA: 24/03/2003 *
MODIFICACIONES *
FECHA NOMBRE DESCRIPCION *
REPORT ZSPOOL2WORD
NO STANDARD PAGE HEADING
LINE-COUNT 065
LINE-SIZE 080.
INCLUDE OLE2INCL.
*----TABLAS/ESTRUCTURAS--
*----TABLAS INTERNAS--
DATA I_BUFFER(132) OCCURS 1000000 WITH HEADER LINE.
*----VARIABLES--
*----PARAMETER/SELECT-OPTIONS EN PANTALLA--
SELECTION-SCREEN BEGIN OF BLOCK BLK_PAR WITH FRAME TITLE TEXT-SEL. "Pará
PARAMETERS: P_SPOOL LIKE TSP01-RQIDENT OBLIGATORY.
SELECTION-SCREEN END OF BLOCK BLK_PAR.
SELECTION-SCREEN BEGIN OF BLOCK BLK_WOR WITH FRAME TITLE TEXT-WOR.
PARAMETERS: P_WORD AS CHECKBOX DEFAULT 'X'.
PARAMETERS: P_FWOR LIKE RLGRAP-FILENAME DEFAULT 'C:MAYOR.DOC'.
PARAMETERS: P_PLAN LIKE RLGRAP-FILENAME
DEFAULT 'D:DATOSAPISMAYORPLANTILLA LIBRO MAYOR.DOC'.
SELECTION-SCREEN END OF BLOCK BLK_WOR.
SELECTION-SCREEN BEGIN OF BLOCK BLK_FIC WITH FRAME TITLE TEXT-FIC.
PARAMETERS: P_CTXT AS CHECKBOX DEFAULT ''.
PARAMETERS: P_FTXT LIKE RLGRAP-FILENAME DEFAULT 'C:MAYOR.TXT'.
SELECTION-SCREEN END OF BLOCK BLK_FIC.
LOGICA DEL PROGRAMA
INITIALIZATION
INITIALIZATION.
START-OF-SELECTION.
START-OF-SELECTION.
PERFORM LEER_SPOOL.
IF NOT P_CTXT IS INITIAL.
PERFORM GRABA_FICHERO.
ENDIF.
IF NOT P_WORD IS INITIAL.
PERFORM LANZA_WORD.
ENDIF.
FORMS ADICIONALES
*& Form LEER_SPOOL
Lee la orden de spool en el buffer
FORM LEER_SPOOL.
CALL FUNCTION 'RSPO_RETURN_ABAP_SPOOLJOB'
EXPORTING
RQIDENT = P_SPOOL
FIRST_LINE = 1
LAST_LINE = 9999999
TABLES
BUFFER = I_BUFFER
EXCEPTIONS
NO_SUCH_JOB = 1
NOT_ABAP_LIST = 2
JOB_CONTAINS_NO_DATA = 3
SELECTION_EMPTY = 4
NO_PERMISSION = 5
CAN_NOT_ACCESS = 6
READ_ERROR = 7
OTHERS = 8.
IF SY-SUBRC NE 0.
MESSAGE E398(00) WITH 'Error' SY-SUBRC
'al leer la orden de spool' P_SPOOL.
ENDIF.
ENDFORM. " LEER_SPOOL
*& Form GRABA_FICHERO
Graba el contenido del spool a fichero de texto.
FORM GRABA_FICHERO.
CALL FUNCTION 'WS_DOWNLOAD'
EXPORTING
BIN_FILESIZE = ' '
CODEPAGE = ' '
FILENAME = P_FTXT
FILETYPE = 'ASC'
MODE = ' '
WK1_N_FORMAT = ' '
WK1_N_SIZE = ' '
WK1_T_FORMAT = ' '
WK1_T_SIZE = ' '
COL_SELECT = ' '
COL_SELECTMASK = ' '
NO_AUTH_CHECK = ' '
IMPORTING
FILELENGTH =
TABLES
DATA_TAB = I_BUFFER
FIELDNAMES =
EXCEPTIONS
FILE_OPEN_ERROR = 1
FILE_WRITE_ERROR = 2
INVALID_FILESIZE = 3
INVALID_TABLE_WIDTH = 4
INVALID_TYPE = 5
NO_BATCH = 6
UNKNOWN_ERROR = 7
GUI_REFUSE_FILETRANSFER = 8
OTHERS = 9.
IF SY-SUBRC NE 0.
MESSAGE E398(00) WITH 'Error' SY-SUBRC
'al grabar el fichero' P_FTXT.
ENDIF.
ENDFORM. " GRABA_FICHERO
*& Form LANZA_WORD
Abre la plantilla de Word y pega el contenido del portapapeles.
FORM LANZA_WORD.
DATA: WORDAPP TYPE OLE2_OBJECT,
DOCUMENT TYPE OLE2_OBJECT,
SELECTION TYPE OLE2_OBJECT.
Copia el contenido del buffer en el portapeles
CALL FUNCTION 'CLPB_EXPORT'
TABLES
DATA_TAB = I_BUFFER
EXCEPTIONS
CLPB_ERROR = 1
OTHERS = 2.
Abre Word
CREATE OBJECT WORDAPP 'word.application'.
IF SY-SUBRC NE 0.
MESSAGE E398(00) WITH 'No se ha podido abrir el Word'.
ENDIF.
Lo pone en visible
SET PROPERTY OF WORDAPP 'Visible' = 1.
Cogemes el objeto documento
CALL METHOD OF WORDAPP 'Documents' = DOCUMENT.
Abrimos el fichero plantilla
IF P_PLAN IS INITIAL.
CALL METHOD OF DOCUMENT 'Add'.
ELSE.
CALL METHOD OF DOCUMENT 'Open' EXPORTING #1 = P_PLAN.
IF SY-SUBRC NE 0.
MESSAGE E398(00) WITH 'Error al leer el fichero plantilla'.
ENDIF.
ENDIF.
Coge el objeto selección
CALL METHOD OF WORDAPP 'Selection' = SELECTION.
Pega el contenido del portapapeles
CALL METHOD OF SELECTION 'Paste'.
IF SY-SUBRC NE 0.
MESSAGE E398(00) WITH 'Error al pegar contenido del portapapeles'.
ENDIF.
Graba el fichero
CALL METHOD OF WORDAPP 'ActiveDocument' = DOCUMENT.
CALL METHOD OF DOCUMENT 'SaveAs' EXPORTING #1 = P_FWOR.
IF SY-SUBRC NE 0.
MESSAGE E398(00) WITH 'Error al grabar el nuevo documento'.
ENDIF.
Cierra Word
CALL METHOD OF WORDAPP 'Quit'.
IF SY-SUBRC NE 0.
MESSAGE E398(00) WITH 'Error al cerrar Word'.
ENDIF.
ENDFORM. " LANZA_WORD
check this also.................
By using FM RSPO_RETURN_ABAP_SPOOLJOB you will be able to get the ASCII text of your Spool, which you can download to your local HD and open with M$ Word.
Check the function module
CALL FUNCTION 'RSPO_DOWNLOAD_SPOOLJOB'
EXPORTING
id = p_spool
fname = p_file.
Give the file extn as .DOC. it will downlaod it as a
Word doc.But I fear you wont get the table formats and
all.
~~Guduri -
Cannot display artist's & song titles
I have used two different computers to sync my cd music. One computer will sync with artist and song titles. The other will only sync with Track one, Track two, and no artist's name and titles. How do I get this computer to syn with with names and song list?
"Other than hand typing in the missing names, how can I get this current library to list the missing names and titles?"
If you connect to the internet you can highlighting the tracks in an album and go to Advanced>Get CD Track names: Finding CD information on the Internet
"Also, I noticed that while typing in the missing information is a box called Part of a compliation. Should I check this box?
Only if the CD you are adding information for is truly a compilation, in other words the tracks on the CD are all by different artists. If you tick this box for songs in a CD by a single artist the songs won't appear under Artist on the iPod. They'll only appear under Albums or under Compilations and then the compilation album. -
Artists/albums/songs list too long! Shortcut?
Hi,
I've got so many artists in my iPod's list, it takes me far too long to find songs. Not so bad when you're walking around, but terrible when I'm in the car with the iTrip and I'm trying to find a song!
Is there any way I can break the Artists/Albums/Songs lists down into like.. A-K, L-Z? Or jump to a particular letter faster than 1 line at a time? I have looked in the settings but I can't find anything relevant.
If this isn't possible, maybe it would be a good idea for a future iPod feature?
Thanks!It isn't about how many tunes - rather the size of the files.
Look at the bottom of the iTunes window when viewing a playlist - it will show you number of tunes, time of playlist and the size of the entire playlist.
MJ -
Insert SAP ICONS into from SAP into Word document (OLE)
Hi ,
I want to Insert SAP ICONS into from SAP into Word document (OLE) .
Please let me know how can I do it? I would really appreciate it.
Regards,
SanjeevHello,
Try this out:
(1) Copy program DD_ADD_PICTURE into your own version called ZDD_ADD_PICTURE. Make sure
you select all the checkboxes (including GUI Status and screens).
(2) Paste the modified code at the end of this reply into your ZZ_ADD_PICTURE program.
(3) Run ZZ_ADD_PICTURE for a range of Icons (e.g. enter Icon name ICON_IN* on the selection screen)
(4) When you get the result list, type in ok-code EXPO directly in the ok-code
field (you could also add a button for this function in the GUI status).
(5) Download all the displayed icons as .gif files into a Windows folder
that you have created to hold the icon .gif files (e.g. C:SAPICONS)
(6) Now you can work with the icon files as you would any .gif file. (e.g. In a Word doc, use menu path
Insert -> Picture -> From file.)
Here is the code:
REPORT dd_add_picture.
TYPE-POOLS: sdydo.
DATA: do TYPE REF TO cl_dd_document.
DATA: is_displayed.
TABLES: icont.
DATA: BEGIN OF icontab OCCURS 0.
INCLUDE STRUCTURE icon.
DATA: END OF icontab.
select-options: s_icon for icontab-name obligatory.
SELECT * FROM icon INTO TABLE icontab WHERE locked NE 'X'
AND name in s_icon.
* Event Handler Definition, handling changes of GUI fonts, colors,...
CLASS cl_my_event_handler DEFINITION.
PUBLIC SECTION.
METHODS:
use_new_resources FOR EVENT resources_changed OF cl_gui_resources.
ENDCLASS.
DATA: my_handler TYPE REF TO cl_my_event_handler.
CREATE OBJECT my_handler.
* Call Screen
CALL SCREEN 100.
*& Module STATUS_0100 OUTPUT
MODULE status_0100 OUTPUT.
IF is_displayed IS INITIAL.
SET PF-STATUS 'BRP'.
SET HANDLER my_handler->use_new_resources.
* create document
CREATE OBJECT do.
* fill document
PERFORM dd_add_icon USING do.
* merge document
CALL METHOD do->merge_document.
* display document .
CALL METHOD do->display_document
EXPORTING container = 'HTML'
EXCEPTIONS html_display_error = 1.
" do some exception handling ...
is_displayed = 'X'.
ENDIF.
ENDMODULE. " STATUS_0100 OUTPUT
MODULE user_command_0100 INPUT.
CASE sy-ucomm.
WHEN 'BACK'. "Beenden
LEAVE PROGRAM.
WHEN 'PRN'.
CALL METHOD do->print_document
EXPORTING reuse_control = 'X'.
WHEN 'PRN_NEW'.
DATA text TYPE sdydo_text_element.
CALL METHOD do->initialize_document.
text = 'Dies Dokument wurde speziell fürs Drucken erstellt!' &
' Druckdatum: '(500).
CALL METHOD do->add_text EXPORTING
text = text
sap_fontsize = cl_dd_area=>large.
WRITE sy-datum TO text DD/MM/YYYY.
CALL METHOD do->add_text EXPORTING text = text .
CALL METHOD do->new_line EXPORTING repeat = 2.
PERFORM dd_add_icon USING do.
CALL METHOD do->merge_document.
CALL METHOD do->print_document.
WHEN 'EXPO'.
CALL METHOD do->export_document EXPORTING to_filesystem = 'X'.
ENDCASE.
CLEAR sy-ucomm.
ENDMODULE. " USER_COMMAND_0100 INPUT
*& Form DD_ADD_ICON
* text
FORM dd_add_icon USING p_do TYPE REF TO cl_dd_document.
DATA ta TYPE REF TO cl_dd_table_element.
DATA col1 TYPE REF TO cl_dd_area.
DATA col2 TYPE REF TO cl_dd_area.
DATA col3 TYPE REF TO cl_dd_area.
DATA text TYPE sdydo_text_element.
* set Heading
text = ' Bilder in Dynamischen Dokumenten'(001).
CALL METHOD p_do->add_text EXPORTING text = text
sap_style = 'heading'.
CALL METHOD p_do->new_line.
CALL METHOD p_do->new_line.
CALL METHOD p_do->add_table EXPORTING with_heading = 'X'
no_of_columns = 3
width = '100%'
IMPORTING table = ta.
* set columns
text = 'Ikone'(011).
CALL METHOD ta->add_column EXPORTING heading = text
IMPORTING column = col1.
* fill table
LOOP AT icontab.
SELECT SINGLE * FROM icont WHERE langu = sy-langu
AND id = icontab-id.
CALL METHOD col1->add_icon EXPORTING sap_icon = icontab-name
sap_color = 'LIST_GROUP'.
ENDLOOP.
ENDFORM. " DD_ADD_ICON
* CLASS cl_my_event_handler IMPLEMENTATION.
CLASS cl_my_event_handler IMPLEMENTATION.
METHOD use_new_resources.
IF is_displayed EQ 'X'.
* initialize document
CALL METHOD do->initialize_document.
* fill document
PERFORM dd_add_icon USING do.
* merge document
CALL METHOD do->merge_document.
* display document
CALL METHOD do->display_document
EXPORTING reuse_control = 'X'
reuse_registration = 'X'.
ENDIF.
ENDMETHOD.
ENDCLASS.
Regards,
Vasanth -
Screen Goes Black and Hangs when browsing by Artist, Album, Song, etc.
I'm having a fairly huge issue with Front Row:
I can play video files (although their is a moment of hangtime between selecting a video and the video actually playing) and music files (if I choose the "Shuffle Songs" option), however, when I choose to browse my music by artists, albums, songs, genres, etc. my screen goes black and stays that way until I hit CMD+Q over and over until it finally quits. Furthermore, when I do play music via "Shuffle Songs" and quit out of Front Row, the music continues to play in the background and cannot be stopped, paused, etc.
Is there anyone out there who can help me fix this? I love Front Row and use it all the time and it would be a shame not to be able to anymore..
Thanks in advance,
CoreyI have a similar problem. When browsing music the screen goes to black or just freezes on whatever was beeing displayed for maybe 30 seconds to a minute before continuing. It happens quite often. I am running the latest version of Front Row on a brand new Mac Mini. I have a very large iTunes music folder (about 830 gigabytes of uncompressed AIFF files) running on an external FW800 drive. I tried repairing permissions and a number of Front Row and a few iTunes files appear in the list. However, when I run repair permissions again, the same files are still listed so obviously if they need to be repaired, it's not happening. I tried repairing the volume (no problems found) and repairing permissions from the Install disc but the result was identical.
-
How can I convert my Open Source document files into Word document files? I cannot download Pages since my Macbook Air does not have the most recent software. I downloaded open office to my mac to try and save money. It worked well for a while. Now I get this pop-up message that asks me to "Reopen" and when I select the option, nothing happens. I cannot save my documents anymore and I cannot convert them to word. Help!
dwb wrote:
Does OpenOffice output Word documents by default or do you have to select it manually?
You have 17 options to save as in Open Office, one of which is .doc files, yes it needs to be saved manually.
You may be able to default to DOC, but have not tried same.
Since Open Office is 99% same as Word, I use it, or Word, either one. Open Office is a bit less buggy than Word 11' -
I've become increasingly frustrated with the ipad adobe app. I've subscribed to be able to convert my pdf files into word documents and it has yet to work I've paid for a service that does not work which in turn makes me a disgruntled customer to say the least very disappointed with such horrible service
Which service did you subscribe to? Adobe PDF Pack?
Once I know the service that you subscribed to, I can move this post to the right forum so that you can get in touch with the folks who can assist you. -
How do you convert a jpeg file into word document so i can edit it?
How do you convert a jpeg file into word document so i can edit it?
http://office.microsoft.com/en-us/mac-word-help/training-edit-pictures-in-office -for-mac-2011-RZ103709558.aspx
-
Why can't I copy and paste portions of the Word document that I just had converted from a PDF file on your site?
Hi,
I am moving your posting to Adobe CreatePDF forum.
Hisami -
Turning PDF Documents into Word Documents
Can I use my Adobe Creative Suite 6 to turn PDF documents into Word Documents?
Acrobat comes with most versions of Creative Suite and it is capable of converting PDFs to Word documents. The quality of the results depend on a number of things. If the PDF was originally generated from a Word source and it's well tagged, you will get much better results. More complicated layouts will generally have worse results and there will be considerable cleanup in Word needed. Exporting to text is sometimes better.
For the future, there is a better forum for this type of question: http://forums.adobe.com/community/acrobat/creating__editing_%26_exporting_pdfs?view=discus sions -
How to download graph output into word document?
Hello experts!
I have plotted graphs using some data.
The graph is actually output of a function module into a container.
Can anybody tell me , how can i download this graphs into a word document?
I am able to download text data into word documents, but not graphs.
Regards,
RahulSteelers, unfortunately your reply didn't get through. Perhaps you tried to send an attachment or screen shot by email? Please try again (but not sending attachments or screen shots by email).
-
Am unable to insert table and graphs into word document in labwindow/CVI? can any one help me ?
Are you using the Word Report Generation instrument? You can find it in toolslib\activex\word\wordreport.fp under the CVI directory.
The instrument comes with a sample project that shows how to include table and graphs in a Word document: see samples\activex\word\wordrpt.cws in the samples foder of your CVI installation.
Proud to use LW/CVI from 3.1 on.
My contributions to the Developer Zone Community
If I have helped you, why not giving me a kudos?
Maybe you are looking for
-
How do I find which photo iPhoto is telling me I have a problem with? I'm trying to buy a book I've formatted, but in place of the filename, it just calls it "(null)". All of the photos I'm using have names.
-
My printer no longer connects to the web...???
My HP Photosmart D110 All-In-One no longer has web capbility. I use it wth an HP Laptop with Windows 7 and a Dell with Windows XP. Thank you!
-
I am having a problem getting the return (back end) to work on my dreamweaver form. i know this is a simple task however for some reason i have a problem. i am trying to use form mail script but for some reason i keep getting errors.
-
SETTING UP APPROVAL LIMITS IN AR IN VISION OPERATIONS
Whilst in the AR Corporate Super User responsibility in Vision Operations, I defined approval limits for a an application user with a currency of GBP and an amount ranging from £5000 to£6000 and then saved it. Later, I then decided that I wanted to c
-
Showing actual content in JSF page using JCR datacontrol
Hi, Is it possible to display the actual content from UCM as part of a JSF page using JCR datacontrols? Thanks, Anil