COPY JPG AND GIF BY PROGRAM

I need to create a simple java program to copy a JPG or GIF image and I don't know to do it.
Could someone help me ?
Below you can see my test program.
Thanks.
Fernando Xavier
p.s Before I find the solution, I will include it in a Server socket program .
import java.io.*;
public class copiaByte {
public static void main(String args[])
try {
FileReader fin = new FileReader(args[0]);
BufferedReader bin = new BufferedReader(fin);
FileWriter fou = new FileWriter(args[1]);
BufferedWriter bou = new BufferedWriter(fou);
int a = 0;
a = bin.read();
while (a > -1)
// char b = (char) a;
bou.write(a);
a = bin.read();
System.out.println("end");
bin.close();
fin.close();
bou.close();
fou.close();
catch (IOException io1)
System.out.println("File Error");
}

The reader/writer API is meant for pure text. You should use streams to transfer binary data like images.

Similar Messages

  • Can no longer copy and past jpg and gifs into InDesign from c:\user\doc\pics

    Here is the error message we get when doing a copy and past from the hard drive to InDesign.
    Error Message from InDesign:
    Adobe InDesign may not support the file format, a plug-in that supports the file format may be missing...
    First, do I need to add a plug-in to be able to copy and past jpgs and gifs?
    Second, we have always used clip organizer with no problem. Ability to copy and paste jpg & gif suddenly stopped. We get a box but no image ont the page. Have already tried dumping temp internet files through internet explorer. Have already un & re installed InDesign and repaired and fixed everything I could think of.
    Third, we can use the place command to place jpgs but can not place gifs.
    William (Helping Mrs. White)

    It sounds as if Mrs White needs to search visually for graphics and then place them. She can either set Windows Explorer
    to thumbnail view and drag a graphic on to an InDesign page - this will in effect be placing the graphic, not copying
    and pasting, and is the right way to go. Or she can use File > Place, and set the view in the Explorer window that she
    selects from in the Place command to a thumbnail view to see the graphics.
    GIFs can be placed. They are not a recommended format, but if you are placing clip art then you may have no option.
    So, in answer to your original question, no, you don't need a plug-in to place JPEGs and GIFs. But note that is place,
    not copy and paste.
    k

  • Saving file, but jpg and gif comes out garbled

    Would someone please help me? I'm at my wit's end here. I'm writing a program that reads a file and saves it, but it needs to read a maximum of 512 bytes before it starts to write. It needs to work with both text files and images.
    - It works fine with text files.
    - It works fine with bmp images.
    - It works fine with jpg and gif images under 512 bytes.
    - With a jpg or gif over 512 bytes, it comes out all garbled, but the same file size as the original.
    One thing is really confoozling me. When the image comes out garbled, I tried changing the files for both the original and the copy into text files by changing the file extension to .txt. Both the text files were identical! So if the data is identical, why is the copy not showing the same image as the original?
    import java.io.*;
         public class SaveFile{
              public static final int BUFSIZE = 512;
              public static final String LIBRARY = "C:\\";
              static int totalRead = 0;  //Total number of bytes in buffer (Max BUFSIZE).
              static int fileSize = 0;  //Size of whole file.
                  static String fileName = "";  //Name of file.
                 static char[] data = new char[BUFSIZE];  //The data in the file.
              public static void main(String[] args){
                            //Bytes already read by the buffer.
                      int charsRead = BUFSIZE; 
                          //Takes name of file from main argument.
                         for(int i=0; i < args.length; i++)
                             fileName = fileName + args;
    //Name of file including directory.
              String fetchFile = LIBRARY + fileName;
              File file1 = new File(fetchFile);
              * Reads a string from the file to data (char array).
                   BufferedReader reader =
    new BufferedReader(new FileReader(file1), BUFSIZE);
                   BufferedWriter writer =
    new BufferedWriter(new FileWriter(fileName));
                   //Will continue as long as buffer is full.
                   while (charsRead == BUFSIZE){ 
                        charsRead = reader.read(data, 0, BUFSIZE);
                        if (charsRead != -1) {
                             totalRead = charsRead;
                             write(writer);
                             fileSize = fileSize + totalRead;
                   reader.close();
                   writer.close();
              System.out.println((fileSize) + " bytes read and saved as " + fileName);
         * Writes data to a new file.
         public static void write(BufferedWriter writer) {
                   for (int j = 0; j < totalRead; j++) {
                        writer.write(data[j]);
    I stripped away the directory selection and error handling to make it simpler.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

    Cadvan1123 wrote:
    I think the best choice is to use a ByteArrayOutputStreamWrong. You do not need a ByteArrayOutputStream
    and I think that it uses ASCII encodingPossible, but you can't just make that assumption. On windows for instance, there's a good likelihood it could use ANSI. And BTW, ASCII is for the most part dead, as it has been superseded by UTF-8.
    Check out t [jacobs.io.DataFetcher in TUS|http://tus.svn.sourceforge.net/viewvc/tus/tjacobs/] for a threadable and optimal/close-to-optimal solution for reading in binary files.
    Edited by: tjacobs01 on Mar 20, 2010 2:56 PM

  • JPGs and GIFs in Coverflow not showing

    For some reason the cover view in the Finder is no longer showing previews of JPGs and GIFs, but is only showing the generic icons for each.
    Any clues as to what's causing that and how to fix it?
    Cheers.

    Try deleting the Finder.plist preference:
    /Users/Kenny/Library/Preferences/com.apple.finder.plist
    Then relaunch the Finder.
    Thanks ... Ken

  • How to save a jpg and gif at same pixel size?

    This doesn't seem to be very convenient.. I need two file types of same image, identical dimensions..
    Thx

    I don't have AI 13 (CS3), but in AI 12 (CS2), I get the same pixel dimensions for both .jpg and .gif versions created via Save for Web (using your 350x200 example).
    To report oddball forum software behavior, post over at Forum Comments. Don't hold your breath.

  • Jpg and gif files not showing up on recipient's email

    When I attach photos on an email sent from whichever email address through my Mail Application (the one that comes with all Mac OS), sometimes people using AOL or other mail servers don't even see the files. Usually, I think all the problems are with jpg, pdf, and gif files and not .doc files or any text files. they seem to see the text files without any problems. So then Im forced to go to my gmail through safari and attach one by one. Honestly, I find the click and drag en masse of the files I want as attachments much easier, but I want to know how and what is the reason that some servers continuously cannot see my files. Sometimes they see the files as I attach them, meaning as photos on the actual email. And they get confused and don't know how to download them because they say that on the email application they use (gmail for example) there is nowhere where it says download attachments. What is going on and what can I do on my mail application to change this. its really frustrating because my work makes me email lots of photos and sometimes this problem is extremely cumbersome and annoying

    Some email readers have trouble with enclosures (particularly graphics) from within an email that is formatted as Rich Text. If you format your mail as Plain Text (see the Format menu) then I expect they will see the enclosures.

  • How do I copy .jpg and .wma files to my ipod?

    Now using itunes 7 I am unable to work out how to copy photos and short clips to my ipod. I tried dragging them to the ipod in the source list, also to the library, nothing. I mucked around with the video tabs but I dont understand all that sync stuff, I have bits and pieces all over my computer, not just in a particular folder. Just want to drag and deposit. But how?!?!??!?!?
    Thanks for your help.

    Whoa. Let's take a step back here and look at what we're saying, before we wear out the word "convert" like it's going out of style.
    If the wma file is a PROTECTED wma file, forget it. iTunes will NOT convert it. Most wma files purchased from legitimate music sites (i.e. Buymusic.com, and others) are protected. They will not convert in iTunes and they will not play on iPod. There are MP3 players on the market that will play them, but, hey, you bought an iPod. So when it comes to wma files, let's not throw around the word "convert" like it's so matter of fact. Now if you're talking about UNprotected wma files, different story.
    That being said, here's the work-around, assuming it's legal, which I cannot answer. Burn your wma file to CD as an audio file, like you're going to play it in a CD player. Then rip it back to your computer using whatever software you have that will do this. My suggestion would be to rip it as an mp3 file, this being a generic file type. Then you can import it into iTunes and put it on your iPod.
    But here's the thing. In many cases, protected wma files purchased from music sites will only burn to CD so many times, as established by the site. So if you've already burned the wma file to CD a few times, you may be out of burns. All you can do is try it and see.
    Am I wrong on any of this? Is all of this burning and ripping legal?

  • Load, crop and saving jpg and gif images with JFileChooser

    Hello!
    I wonder is there someone out there who can help me with a applic that load, (crop) and saving images using JFileChooser with a simple GUI as possible. I'm new to programming and i hope someone can show me.
    Tor

    import java.awt.*;
    import java.awt.event.*;
    import java.awt.image.*;
    import java.io.*;
    import javax.imageio.ImageIO;
    import javax.swing.*;
    import javax.swing.event.*;
    import javax.swing.filechooser.*;
    import javax.swing.filechooser.FileFilter;
    public class ChopShop extends JPanel {
        JFileChooser fileChooser;
        BufferedImage image;
        Rectangle clip = new Rectangle(50,50,150,150);
        boolean showClip = true;
        public ChopShop() {
            fileChooser = new JFileChooser(".");
            fileChooser.setFileFilter(new ImageFilter());
        public void setClip(int x, int y) {
            clip.setLocation(x, y);
            repaint();
        protected void paintComponent(Graphics g) {
            super.paintComponent(g);
            Graphics2D g2 = (Graphics2D)g;
            g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
                                RenderingHints.VALUE_ANTIALIAS_ON);
            if(image != null) {
                int x = (getWidth() - image.getWidth())/2;
                int y = (getHeight() - image.getHeight())/2;
                g2.drawImage(image, x, y, this);
            if(showClip) {
                g2.setPaint(Color.red);
                g2.draw(clip);
        public Dimension getPreferredSize() {
            int width = 400;
            int height = 400;
            int margin = 20;
            if(image != null) {
                width = image.getWidth() + 2*margin;
                height = image.getHeight() + 2*margin;
            return new Dimension(width, height);
        private void showOpenDialog() {
            if(fileChooser.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
                File file = fileChooser.getSelectedFile();
                try {
                    image = ImageIO.read(file);
                } catch(IOException e) {
                    System.out.println("Read error for " + file.getPath() +
                                       ": " + e.getMessage());
                    image = null;
                revalidate();
                repaint();
        private void showSaveDialog() {
            if(image == null || !showClip)
                return;
            if(fileChooser.showSaveDialog(this) == JFileChooser.APPROVE_OPTION) {
                File file = fileChooser.getSelectedFile();
                String ext = ((ImageFilter)fileChooser.getFileFilter()).getExtension(file);
                // Make sure we have an ImageWriter for this extension.
                if(!canWriteTo(ext)) {
                    System.out.println("Cannot write image to " + ext + " file.");
                    String[] formatNames = ImageIO.getWriterFormatNames();
                    System.out.println("Supported extensions are:");
                    for(int j = 0; j < formatNames.length; j++)
                        System.out.println(formatNames[j]);
                    return;
                // If file exists, warn user, confirm overwrite.
                if(file.exists()) {
                    String message = "<html>" + file.getPath() + " already exists" +
                                     "<br>Do you want to replace it?";
                    int n = JOptionPane.showConfirmDialog(this, message, "Confirm",
                                                          JOptionPane.YES_NO_OPTION);
                    if(n != JOptionPane.YES_OPTION)
                        return;
                // Get the clipped image, if available. This is a subImage
                // of image -> they share the same data. Handle with care.
                BufferedImage clipped = getClippedImage();
                if(clipped == null)
                    return;
                // Copy the clipped image for safety.
                BufferedImage cropped = copy(clipped);
                boolean success = false;
                // Write cropped to the user-selected file.
                try {
                    success = ImageIO.write(cropped, ext, file);
                } catch(IOException e) {
                    System.out.println("Write error for " + file.getPath() +
                                       ": " + e.getMessage());
                System.out.println("writing image to " + file.getPath() +
                                   " was" + (success ? "" : " not") + " successful");
        private boolean canWriteTo(String ext) {
            // Support for writing gif format is new in j2se 1.6
            String[] formatNames = ImageIO.getWriterFormatNames();
            //System.out.printf("writer formats = %s%n",
            //                   java.util.Arrays.toString(formatNames));
            for(int j = 0; j < formatNames.length; j++) {
                if(formatNames[j].equalsIgnoreCase(ext))
                    return true;
            return false;
        private BufferedImage getClippedImage() {
            int w = getWidth();
            int h = getHeight();
            int iw = image.getWidth();
            int ih = image.getHeight();
            // Find origin of centered image.
            int ix = (w - iw)/2;
            int iy = (h - ih)/2;
            // Find clip location relative to image origin.
            int x = clip.x - ix;
            int y = clip.y - iy;
            // clip must be within image bounds to continue.
            if(x < 0 || x + clip.width  > iw || y < 0 || y + clip.height > ih) {
                System.out.println("clip is outside image boundries");
                return null;
            BufferedImage subImage = null;
            try {
                subImage = image.getSubimage(x, y, clip.width, clip.height);
            } catch(RasterFormatException e) {
                System.out.println("RFE: " + e.getMessage());
            // Caution: subImage is not independent from image. Changes
            // to one will affect the other. Copying is recommended.
            return subImage;
        private BufferedImage copy(BufferedImage src) {
            int w = src.getWidth();
            int h = src.getHeight();
            BufferedImage dest = new BufferedImage(w, h, src.getType());
            Graphics2D g2 = dest.createGraphics();
            g2.drawImage(src, 0, 0, this);
            g2.dispose();
            return dest;
        private JPanel getControls() {
            JPanel panel = new JPanel(new GridBagLayout());
            GridBagConstraints gbc = new GridBagConstraints();
            gbc.weightx = 1.0;
            gbc.fill = GridBagConstraints.HORIZONTAL;
            gbc.gridwidth = GridBagConstraints.REMAINDER;
            panel.add(getCropPanel(), gbc);
            panel.add(getImagePanel(), gbc);
            return panel;
        private JPanel getCropPanel() {
            JToggleButton toggle = new JToggleButton("clip", showClip);
            toggle.addActionListener(new ActionListener() {
                public void actionPerformed(ActionEvent e) {
                    showClip = ((AbstractButton)e.getSource()).isSelected();
                    repaint();
            SpinnerNumberModel widthModel = new SpinnerNumberModel(150, 10, 400, 1);
            final JSpinner widthSpinner = new JSpinner(widthModel);
            SpinnerNumberModel heightModel = new SpinnerNumberModel(150, 10, 400, 1);
            final JSpinner heightSpinner = new JSpinner(heightModel);
            ChangeListener cl = new ChangeListener() {
                public void stateChanged(ChangeEvent e) {
                    JSpinner spinner = (JSpinner)e.getSource();
                    int value = ((Number)spinner.getValue()).intValue();
                    if(spinner == widthSpinner)
                        clip.width = value;
                    if(spinner == heightSpinner)
                        clip.height = value;
                    repaint();
            widthSpinner.addChangeListener(cl);
            heightSpinner.addChangeListener(cl);
            JPanel panel = new JPanel(new GridBagLayout());
            GridBagConstraints gbc = new GridBagConstraints();
            gbc.insets = new Insets(2,2,2,2);
            gbc.weightx = 1.0;
            panel.add(toggle, gbc);
            addComponents(new JLabel("width"),  widthSpinner,  panel, gbc);
            addComponents(new JLabel("height"), heightSpinner, panel, gbc);
            return panel;
        private void addComponents(Component c1, Component c2, Container c,
                                   GridBagConstraints gbc) {
            gbc.anchor = GridBagConstraints.EAST;
            c.add(c1, gbc);
            gbc.anchor = GridBagConstraints.WEST;
            c.add(c2, gbc);
        private JPanel getImagePanel() {
            final JButton open = new JButton("open");
            final JButton save = new JButton("save");
            ActionListener al = new ActionListener() {
                public void actionPerformed(ActionEvent e) {
                    JButton button = (JButton)e.getSource();
                    if(button == open)
                        showOpenDialog();
                    if(button == save)
                        showSaveDialog();
            open.addActionListener(al);
            save.addActionListener(al);
            JPanel panel = new JPanel();
            panel.add(open);
            panel.add(save);
            return panel;
        public static void main(String[] args) {
            ChopShop chopShop = new ChopShop();
            ClipMover mover = new ClipMover(chopShop);
            chopShop.addMouseListener(mover);
            chopShop.addMouseMotionListener(mover);
            JFrame f = new JFrame("click inside rectangle to drag");
            f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            f.getContentPane().add(new JScrollPane(chopShop));
            f.getContentPane().add(chopShop.getControls(), "Last");
            f.pack();
            f.setLocation(200,100);
            f.setVisible(true);
    class ImageFilter extends FileFilter {
        static String GIF = "gif";
        static String JPG = "jpg";
        static String PNG = "png";
        // bmp okay in j2se 1.5+
        public boolean accept(File file) {
            if(file.isDirectory())
                return true;
            String ext = getExtension(file).toLowerCase();
            if(ext.equals(GIF) || ext.equals(JPG) || ext.equals(PNG))
                return true;
            return false;
        public String getDescription() {
            return "gif, jpg, png images";
        public String getExtension(File file) {
            String s = file.getPath();
            int dot = s.lastIndexOf(".");
            return (dot != -1) ? s.substring(dot+1) : "";
    class ClipMover extends MouseInputAdapter {
        ChopShop component;
        Point offset = new Point();
        boolean dragging = false;
        public ClipMover(ChopShop cs) {
            component = cs;
        public void mousePressed(MouseEvent e) {
            Point p = e.getPoint();
            if(component.clip.contains(p)) {
                offset.x = p.x - component.clip.x;
                offset.y = p.y - component.clip.y;
                dragging = true;
        public void mouseReleased(MouseEvent e) {
            dragging = false;
        public void mouseDragged(MouseEvent e) {
            if(dragging) {
                int x = e.getX() - offset.x;
                int y = e.getY() - offset.y;
                component.setClip(x, y);
    }

  • How to find out image size (in pixels) of jpg and gif files

    this seems to work, though i doubt that it would very time:
                   Image img = Toolkit.getDefaultToolkit().getImage("car.jpg");
                   int w = img.getWidth(null);
                   int h = img.getHeight(null);
                   while(w <= 0 || h <= 0)
                      try{Thread.sleep(10);}catch(InterruptedException ix){}
                      w = img.getWidth(null);
                      h = img.getHeight(null);
                   JOptionPane.showMessageDialog
                      null,
                      filenames[i] + ": " + w + "x" + h,
                      "ImgSize",
                      JOptionPane.INFORMATION_MESSAGE
                   );please suggest a better solution.
    thanks

    >
    We've a requirement that we need to find out the size of a java object at run time, is there a direct java API to get the size of a composite object in memory?
    Here is my requirement: We are adding string objects (which is an xml string of considerable size) into a List. After reaching certain size limit (lets say 5MB) of the list i need to put this data into DB as a CLOB. So every time I add a string object to the list, I need to see if the total size of the list exceeds the limit and if yes, flush the results into DB.
    I am not sure if java has a direct API for this, if not what is the beast way to do it, it s critical requirement for us.
    It would be really great if someone could help us out.
    >
    Could you explain your actual requirement a little more fully.
    1. Is each individual string a separate XML string? Or is it just a fragment? Why would you just concatenate them together into a CLOB? That won't produce valid XML and it won't let you easily separate the pieces again later. So provide a simple example showing some strings and how you need to manipulate them.
    2. Are you using these xml strings in Java at all? Or are you just loading them into the database?
    For example if you are just loading them into the database you don't need to create a list. Just create a CLOB in Java and append each string to the CLOB. Before you append each one you can check to see if the new string will put you over your length limit. If it will then you write the CLOB to the database, empty the CLOB and start appending again to the new clob instance.
    If you explain what you are really trying to do we might be able to suggest some better ways to do it.

  • I used to be able to drag jpgs and gifs into the text block

    I used to be able to drag pics and animated gifs into my text block and now I cannot. Does anyone know why this is or how I can correct this? Version 3.5.1 Ichat
    Thanks!
      Mac OS X (10.4.7)  

    Do you have the View Mode set to Preview?
    Are you clicking the Point Control for the point you want to move before clicking on the Canvas?
    MtD

  • Importing a jpg or gif to appear in a list

    I'm fairly new at ActionScript. I'm using Flash 8
    Pro....Anyway, I have an XML file setup with a list of file names
    for jpg and gif that I want to appear in a List along with some
    text. I have the XML part working fine that imports the file names.
    Here's the crucial bit of code:
    var image:MovieClip =
    this.createEmptyMovieClip("thumb"+cnt+"_mc", cnt+1);
    loadMovie(thumb,image);
    select_list.iconFunction = "pictureIcon";
    select_list.addItem({label:itemdesc,
    icon:"thumb"+cnt+"_mc"});
    The cnt variable is 0 to the end of the array. thumb contains
    the file name ("myjpg.jpg").
    I'm having 2 problems: The image being loaded is actually
    appearing in the upper-left corner, where it shouldn't be
    appearing and the List isn't working. The List works Ok with
    just text.
    Any suggestions would be appreciated.

    Gregory,
    Have you ticked Anti-Aliasing? At least in older versions, it is hidden away in the Image Size part.

  • Can I open a PDF and save it as a JPG or GIF?

    I asked on the PageMaker forum about creating a jpg or gif of a book cover I created in PageMaker. The suggestion was to create a pdf of it (no problem), open it in PhotoShop, then save it in the format I need. I don't own PhotoShop, so downloaded the Album Starter Edition. For the book cover with photos on it, only the photos are imported; for the book cover with only text and solid-color boxes, nothing at all is imported. Does anyone know how to get the entire pdf into PhotoShop so it can be saved, intact, as a jpg or gif? Thanks!

    I think Downloader in PSE organizer has capabilty to extract images from PDF.
    Collin- Is there any other way in PSE to extract images from PDF. Pls tell us how hat can be done.

  • I just purchased Adobe Photoshop Elements 13 but my computer is not recognizing my CDRom and I cannot download the program. I tried copying the files on the program disc to my hard drive but get a message the installer will not work. I have the redemption

    I just purchased Adobe Photoshop Elements 13 but my PC is not recognizing my CDRom and I cannot download the program. I tried copying the files on the program disc to my hard drive but get a message the installer will not work. I have the redemption code and serial numbers. Can I download the program online somewhere? If I download a trial version for instance will it allow me to enter my serial number and use it for the full program?

    Downloads available:
    Suites and Programs:  CC 2014 | CC | CS6 | CS5.5 | CS5 | CS4 | CS3
    Acrobat:  XI, X | 9,8 | 9 standard
    Premiere Elements:  13 | 12 | 11, 10 | 9, 8, 7 win | 8 mac | 7 mac
    Photoshop Elements:  13 |12 | 11, 10 | 9,8,7 win | 8 mac | 7 mac
    Lightroom:  5.6| 5 | 4 | 3
    Captivate:  8 | 7 | 6 | 5
    Contribute:  CS5 | CS4, CS3
    Download and installation help for Adobe links
    Download and installation help for Prodesigntools links are listed on most linked pages.  They are critical; especially steps 1, 2 and 3.  If you click a link that does not have those steps listed, open a second window using the Lightroom 3 link to see those 'Important Instructions'.

  • Can I copy meta data from a jpg and past to a tiff. I have CS6 photoshop

    How can I copy metadata from a JPg files and paste onto tiffs.  I send JPGs to stock agent and when they select I then send Tiffs and want to avoid re typing meta data if possible.  Also some pictures have similar meta data information and can I copy that and paste into another picture?
    Please give me keystroke information if this is possible as I get confused easily.  Use photoshop for dummies language if you can.
    thanks a lot  Gail

    You can copy&paste individual fields, but not the entire data. It's a moot point, anyway. PS will retain metadata e.g. when a file is saved using Save As... to a format that supports metadata and JPG and TIFF both do. also one would simply use Bridge to edit metadata in mass with multiple images selected...#
    Mylenium

  • Copy control and program name for Sales Order to Delivery

    Hi,
    Please provide the copy control and program name to split a single delivery into multiple invoices depending on the sales order it belonged to and to split a single sales order into multiple deliveries depending on the shipping type.
    Thanks in advance.

    Hi there,
    In VTFL, at item level, there is a field called "Data VBRK/VBRP". Routine 001 & 007 are for invoice split. Those may be relevant for your case.
    In VOFM, select data transfer --> billing docs in the menu bar. It will give you the requirement numbers & their description.
    Select the required routine num & click on Source text (note pad icon) on the above. It will give you the prog / include names.
    For eg for 001 its FV60C001, for 007 its FV60C007.
    Regards,
    Sivanand

Maybe you are looking for