هذا الاستعلام يعمل جيداً على access 2007 أريد التعديل عليه ليعمل على sql server
SELECT T_SAL.MatriculeSalarie AS CP, T_SAL.Nom AS NOM, T_SAL.Prenom AS PRENOM, T_HST_SECU.NoSecu AS CNSS
FROM T_SAL INNER JOIN T_HST_SECU ON T_SAL.SA_CompteurNumero = T_HST_SECU.NumSalarie
WHERE (((T_HST_SECU.NoSecu) Like Format([T_SAL].[DateNaissance],"\1yymm") & "*") AND ((T_HST_SECU.InfoEnCours)=1) AND ((T_SAL.EtatPaie)=2 Or (T_SAL.EtatPaie)=3));
شكر مسبق
aedc كتب :هذا الاستعلام يعمل جيداً على access 2007 أريد التعديل عليه ليعمل على sql server
SELECT T_SAL.MatriculeSalarie AS CP, T_SAL.Nom AS NOM, T_SAL.Prenom AS PRENOM, T_HST_SECU.NoSecu AS CNSS
FROM T_SAL INNER JOIN T_HST_SECU ON T_SAL.SA_CompteurNumero = T_HST_SECU.NumSalarie
WHERE (((T_HST_SECU.NoSecu) Like Format([T_SAL].[DateNaissance],"\1yymm") & "*") AND ((T_HST_SECU.InfoEnCours)=1) AND ((T_SAL.EtatPaie)=2 Or (T_SAL.EtatPaie)=3));
شكر مسبق
لا ارى فيه مشكلة، سيعمل كما هو،
ممكن تقول ايش المشكلة الي واجهتك معه
السطر باللون الأحمر و عند التنفيد تضهر رسالة erreur de syntaxe
SQLL = "SELECT T_SAL.MatriculeSalarie AS CP, T_SAL.Nom AS NOM, T_SAL.Prenom AS PRENOM, T_HST_SECU.NoSecu AS CNSS FROM T_SAL INNER JOIN T_HST_SECU ON T_SAL.SA_CompteurNumero = T_HST_SECU.NumSalarie WHERE (((T_HST_SECU.NoSecu) Like Format([T_SAL].[DateNaissance],"\1yymm") & "*") AND ((T_HST_SECU.InfoEnCours)=1) AND ((T_SAL.EtatPaie)=2 Or (T_SAL.EtatPaie)=3))"
Adodc1.RecordSource = SQLL
Adodc1.CommandType = adCmdText
Adodc1.Refresh
جرب هذا
كود :
SQLL = "SELECT T_SAL.MatriculeSalarie AS CP, T_SAL.Nom AS NOM, T_SAL.Prenom AS PRENOM, T_HST_SECU.NoSecu AS CNSS FROM T_SAL INNER JOIN T_HST_SECU ON T_SAL.SA_CompteurNumero = T_HST_SECU.NumSalarie WHERE (((T_HST_SECU.NoSecu) Like Format([T_SAL].[DateNaissance],"\1yymm") & "*") AND ((T_HST_SECU.InfoEnCours)=1) AND ((T_SAL.EtatPaie)=2) Or (T_SAL.EtatPaie)=3))"
انت نسيت القوس بعد رقم 2 الي في الأخير
يتوقف عند yymm تضهر رسالة
attendu: fin d'instruction
ا
تعديل
المشكلة الاستعلام طويل عشان هيك فيه صعوبة بمتابعة الأقواس
كود :
SQLL = "SELECT T_SAL.MatriculeSalarie AS CP, T_SAL.Nom AS NOM, T_SAL.Prenom AS PRENOM, T_HST_SECU.NoSecu AS CNSS FROM T_SAL INNER JOIN T_HST_SECU ON T_SAL.SA_CompteurNumero = T_HST_SECU.NumSalarie WHERE ( T_HST_SECU.NoSecu Like Format(T_SAL.DateNaissance,"\1yymm") + "*" ) AND ( T_HST_SECU.InfoEnCours = 1 ) AND ( (T_SAL.EtatPaie = 2) Or (T_SAL.EtatPaie =3) );"
بس هل انت قاصد 1\ الموجودة قبل yymm