SQL 2012 insert data into a table from another table and custom columns
The obvious answer is that those columns aren't in Table1 either.  Otherwise I don't see an obvious reason why that would fail.  It looks like you're adding data to the table that could easily be captured by a default value.  See part B for an example of using SYSTEM_USER as a default value or just see the code shamelessly copied below:

CREATE TABLE Sales.Sales_Tracking
(
    Territory_id int IDENTITY(2000, 1) NOT NULL,
    Rep_id  int NOT NULL,
    Last_sale datetime NOT NULL DEFAULT GETDATE(), -- Your date info
    SRep_tracking_user varchar(30) NOT NULL DEFAULT SYSTEM_USER -- System user
);


By setting these as a default value on Table2 you might just be able to add those four columns to Table2 without having to bother with the insert.  Alternatively you can set the date and user columns to default to GETDATE() and SYSTEM_USER respectively on Table1.  That would eliminate the need to specify those values in your insert statement, and give you good defaults moving forward from the looks of things.