Probleme conversion date

sarittasm Messages postés 9 Date d'inscription dimanche 24 mai 2009 Statut Membre Dernière intervention 27 février 2012 - 27 févr. 2012 à 12:54
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 - 3 mars 2012 à 15:01
Bonjour,

j'ai un pb de conversion date, j'ai deux bases de données l'une sur ERP et l'autre sur sqlserver, alors je dois importer les données de l'erp et les stocker dans BD sqlserver, l'importation ça marche mais le format date non.
dans la BDD erp j'ai un format date ex "févr 27 2012 12: 00 AM" et dans sqlserver j'ai le format dd/mm/yyyy hh:min:ss l'interface de communication entre les deux BDD est en vb
voici le code:

j'ai utilisé la fonction CONVERT mais les données importées gardent tjrs le format de la base erp (févr 27 2012 12: 00 AM)

la tabe sqlserver est prd_erp le champ date est parametro6

le nom de la table source est MFGHEAD et le champ STRDAT_0

*******code*****

Function DFC_btn_envoyer_Click(ByVal ParentForm As mapexApp.DF_frmBase, ByVal Sender As mapexApp.DFC_btnSystem) As Boolean


Dim SQLinsert As New SqlCommand
Dim sql As New DFC_SQL
Dim sqlreader As SqlDataAdapter
Try
cn.Open()
SQLinsert.Connection=cn
SQLinsert.CommandText="INSERT INTO dbo.prd_erp(Id_operacion,DH_generacion,Parametro1,Parametro6,) SELECT 301,GETDATE(),MFGHEAD.MFGNUM_0 AS code_OF,CONVERT(datetime,MFGHEAD.STRDAT_0,104) AS Date_début_OF) FROM " & dossier & ".MFGHEAD LEFT OUTER JOIN " & dossier & ".MFGITM ON MFGHEAD.MFGNUM_0 = MFGITM.MFGNUM_0 LEFT OUTER JOIN " & dossier & ".MFGOPE ON MFGHEAD.MFGNUM_0 = MFGOPE.MFGNUM_0 LEFT OUTER JOIN " & dossier & ".ITMMASTER ON MFGHEAD.ROUNUM_0 = ITMMASTER.ITMREF_0 LEFT OUTER JOIN " & dossier & ".ITMCATEG ON ITMMASTER.TCLCOD_0=ITMCATEG.TCLCOD_0 WHERE MFGHEAD.MFGNUM_0='" & txb_cod_of.Text & "' AND MFGOPE.ROODES_0='" & cmbox_ope.SelectedItem.ToString & "'"
SQLinsert.ExecuteNonQuery()


Msgbox("Opération bien transférée ",,"Transfert terminé")
cn.Close

Catch Ex As Exception
MessageBox.Show(Ex.Message)
cn.Close()
End Try

End Function



End Class
End Namespace




merci de m'aider

1 réponse

NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
3 mars 2012 à 15:01
Bonjour,

Je pense qu'il faut d'abord exploser la chaine (Split sur l'espace) :
févr 27 2012 12: 00 AM

Ensuite, il te faudra une structure où tu stockeras les données :
"Févr" -> Mois 2
"27" -> Jour 27
"2012" -> Année 2012
"12:" -> Heure 12
"00" -> Minute 0
AM/PM, ajouter ou non 12 heures (attention à 12+12)

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
Rejoignez-nous