Hola estoy intentando hacer un insert pasandole los valores de esta forma que veréis en el codigo de abajo pero tengo un problema:
   
Código vb.net:
Ver original- Protected Sub guardarTablaZSAPFacturableSI(ByVal numhoja As String, ByVal mes As String, ByVal año As String) 
-         Dim mytrans As OracleTransaction 
-         Dim fechacreacion As Date 
-         Dim conn As New OracleConnection() 
-         conn.ConnectionString = ConfigurationManager.ConnectionStrings("conexionOracleDesa").ConnectionString.ToString 
-         Dim sql As String 
-   
-         sql = "insert into sapsr3.zgastos_gen (mandt,zig,prctr,kostl,aufnr,pspid,erdat,zperiod,zejercic,tratado,xblnr) " 
-         sql = sql + "values('111','@numhoja','@codigolinea','@ceco','@orden','@proyecto','@fechacreacion','@mes','@año','0','@nombreApellidos')" 
-   
-         Dim comm As New OracleCommand(sql, conn) 
-   
-         Try 
-             With comm 
-                 .CommandType = CommandType.Text 
-                 'pasarle siempre 
-                 .Parameters.Add("@mandt", 111) 
-                 .Parameters.Add("@numhoja", numhoja) 
-                 .Parameters.Add("@codigolinea", codigolinea) 
-                 .Parameters.Add("@ceco", ceco) 
-                 .Parameters.Add("@orden", orden) 
-                 If proyecto = "" Then 
-                 Else 
-                     .Parameters.Add("@proyecto", proyecto) 
-                 End If 
-                 .Parameters.Add("@fechacreacion", fechacreacion) 
-                 '.Parameters.Add("@tratado", 0) 
-                 .Parameters.Add("@nombreApellidos", nombre) 
-   
-                 If importeTotal = "0.00" Then 
-                     .Parameters.Add("@importeTotal", DBNull.Value) 
-                 Else 
-                     .Parameters.Add("@importeTotal", importeTotal) 
-                 End If 
-                 .Parameters.Add("@mes", mes) 
-                 .Parameters.Add("@año", año) 
-             End With 
-   
-             Using conn 
-                 conn.Open() 
-   
-                 mytrans = conn.BeginTransaction() 
-                 Try 
-                     With comm 
-                         .Transaction = mytrans 
-                         .ExecuteNonQuery() 
-                         .Dispose() 
-                     End With 
-                     mytrans.Commit() 
-                 Catch ex As OracleException 
-                     mytrans.Rollback() 
-                     'mensaje("Error en BD" & Chr(13) & Chr(13) & ex.Message) 
-                 End Try 
-             End Using 
-         Catch ex As Exception 
-   
-             'mensaje("Error en BD" & Chr(13) & Chr(13) & ex.Message) 
-         Finally 
-             conn.Dispose() 
-         End Try 
-     End Sub 
El problema es que se me guarda el la base de datos @mes, @año,.... en vez de guardarse el valor. 
¿Que es lo que estoy haciendo mal? 
