Ho scomodato, oh se l'ho scomodato, Google ! Ma forse non ho saputo cercare bene.
Per semplificare le cose ho utilizzato una tabella con due campi (ID e Nome) e chiave primaria ID. Stesso errore.
Non ho però capito due cose :
- fai riferimento ad un disconnessione
- fai riferimento ad un SELECT; io non utilizzo questa istruzione.
Qui sotto riporto il contenuto del file XML creato
<xml xmlns:s="
uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:dt="
uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:rs="
urn:schemas-microsoft-com:rowset" xmlns:z="
#RowsetSchema">
- <s:Schema id="
RowsetSchema">
- <s:ElementType name="
row" content="
eltOnly" rs:updatable="
true">
- <s:AttributeType name="
ID" rs:number="
1" rs:write="
true">
<s:datatype dt:type="
int" dt:maxLength="
4" rs

recision="
0" rs:fixedlength="
true" rs:maybenull="
false" />
</s:AttributeType>
- <s:AttributeType name="
Nome" rs:number="
2" rs:nullable="
true" rs:maydefer="
true" rs:write="
true" rs:writeunknown="
true">
<s:datatype dt:type="
string" dt:maxLength="
50" rs

recision="
0" />
</s:AttributeType>
<s:extends type="
rs:rowbase" />
</s:ElementType>
</s:Schema>
- <rs:data>
- <rs:insert>
<z:row ID="
2" Nome="
RECORD AGGIUNTO AUTOMATIC" />
</rs:insert>
</rs:data>
</xml>
Ricapitolando
codice:
Dim rsD As ADODB.Recordset
Set rsD = New ADODB.Recordset
If rsD.State = adStateOpen Then rsD.Close
Set rsD.ActiveConnection = Nothing
rsD.Fields.Append "ID", 3, 4, adFldKeyColumn
rsD.Fields.Append "Nome", 202, 50, 106
rsD.Open
rsD.AddNew
rsD("ID") = IDEff
rsD("Nome") = "RECORD AGGIUNTO AUTOMATIC"
rsD.Save stm, adPersistXML
stm.SaveToFile FileRemoto, adSaveCreateOverWrite ' debug
xml.Open "POST", WebHost & "UpdateMioTaccuino.asp", False
xml.send stm.ReadText
If xml.responseText <> "" Then
MsgBox Right(xml.responseText, Len(xml.responseText) - InStr(xml.responseText, vbCrLf) - 1), vbCritical, Left(xml.responseText, InStr(xml.responseText, vbCrLf) - 1)
End If
Purtroppo non so se l'errore avviene lato VB o lato ASP. Capire questa cosa sarebbe già un passo notevole.