-
12-06-2017, 09:12 AM
#1
Registered User
Create appointment: Method * of object * Failed / Runt time error
Hi, I have a problem that stops us from sending appointments to our technichians. I have a macro written in Excel 2016 that create appointments in Outlook (and a lot of other things) which works fine on my computer and others. Now one person has a new computer (also Excel 2016) where everything works except the red rows below.
With oFolder
Set olApt = oApp.CreateItem(olAppointmentItem)
olApt.MeetingStatus = olMeeting
With olApt
.Start = Cells(6, 3).Value + Cells(8, 3)
.End = Cells(6, 3) + DateAdd(«n», Cells(10, 3).Value, Cells(8, 3))
.Subject = SR + » » + Cells(12, 6) + » » + Cells(8, 6).Location = Cells(10, 6)
.Body = Cells(6, 6) + vbNewLine + vbNewLine + Cells(16, 3)
.BusyStatus = olFree
.ReminderMinutesBeforeStart = Cells(12, 3)
.ReminderSet = True‘ get the recipients
Dim RequiredAttendee, OptionalAttendee, ResourceAttendee As Outlook.Recipient
Set RequiredAttendee = .Recipients.Add(Cells(14, 3).Value)
RequiredAttendee.Type = olRequired
‘Display ‘Ta bort denna om bokningen ska skickas automatiskt
.Send
.Save
.Move oFolder
End WithWe get an error message:
«Run-time error ‘-2147417851 (80010105)’:
Method ‘Location’ of object ‘_AppointmentItem’ failedI have googled and I found a lot of matches but havn’t been able to solve it. Does anybody know what I can do or have any suggestions?
Thank you in advance,
Johan
-
12-06-2017, 09:18 AM
#2
Re: Create appointment: Method * of object * Failed / Runt time error
Hi,
What’s the actual value of Cells(10, 6) when the code is running? (tested via debug.print rather than by what you think it should be )
Don
Please remember to mark your thread ‘Solved’ when appropriate.
-
12-06-2017, 09:52 AM
#3
Registered User
Re: Create appointment: Method * of object * Failed / Runt time error
Thanks for you reply. I added the code Debug.Print Cells(10, 6) above .Location = Cells(10, 6). When I step through the immediate window says e.g. «Bollbrogatan 1 257 33 Helsingborg» which is the correct street and postal address.
-
12-06-2017, 10:03 AM
#4
Re: Create appointment: Method * of object * Failed / Runt time error
Are you testing that on the machine where the code fails?
-
12-06-2017, 10:06 AM
#5
Registered User
Re: Create appointment: Method * of object * Failed / Runt time error
Very strange. In one of my hundreds of googling I found someone who wrote that if they register the string as a variable and then add it to location (or the To-address in that example) it would work. And actually it did. I added before the «With»:
Location = Cells(10,6)
and then in the With:
.Location = Location
And it worked!
If anyone knows why that matters I would be pleased to now. For me it should be the same thing but obviously it’s not.
-
12-06-2017, 10:09 AM
#6
Re: Create appointment: Method * of object * Failed / Runt time error
That is indeed strange! Out of curiosity, does this also work
-
12-07-2017, 07:05 AM
#7
Registered User
Re: Create appointment: Method * of object * Failed / Runt time error
You’re a genius! Yes, that also worked. So Excel didn’t interpret my address in the cells as strings? The cells are all formatted as General. Your conversion did the trick.
Я пытаюсь создать запись из формы. Я использовал railscast 136 как наземную работу. Когда я пытаюсь представить, я получаю 500 ошибок для частичного отсутствия. Я создал коррелированный просмотр javascript контроллера, но он запрашивает представление с тем же именем, что и модель.
сообщение об ошибке
Представленные встречи /create.js.erb(3,8 мс) Завершено 500 внутренних Ошибка сервера в 12 мс
ActionView:: Template:: Error (Отсутствие частичных назначений/назначение с {: locale = > [: en],: formats = > [: js,: html],: handlers = > [: erb,: builder,: coffee]}. Поиск: * «/Пользователи/gjores/Sites/Rails/verkstad_test/app/views» ): 1: $(‘# встречи’). Append (‘<% = j render (@appointment)% > ‘); Приложение/просмотров/назначения/create.js.erb: 1: в
_app_views_appointments_create_js_erb___2325925946390315228_70273089113920'
создать
app/controllers/appointments_controller.rb:16:in
контроллер
def create
@appointment = Appointment.new(params[:appointment])
if @appointment.save
respond_to do |format|
format.html { redirect_to new_appointment_path, :notice => "Successfully created appointment." }
format.js
end
else
render :action => 'new'
end
end
<сильные > назначения /new.html.erb
<div id="appointments">
<%= render 'shared/appointment_part' %>
</div>
<% title "New Appointment" %>
<table>
<% @students.each do |s| %>
<%= form_for @appointment, :remote => true do |f|%>
<%= f.error_messages %>
<tr>
<td><%= s.name %></td>
<td><%= f.label :week %></td>
<td><%= f.number_field :week %></td>
<td><%= f.label :teacher_id %></td>
<td><%= f.collection_select(:teacher_id, Teacher.all, :id, :name) %></td>
<%= f.hidden_field :student_id, :value => s.id %>
<td><%= f.submit %></td>
</tr>
<% end %>
<% end -%>
</table>
<p><%= link_to "Back to List", appointments_path %></p>
<сильные > назначения /create.js.erb
$('#appointments').append('<%= j render(@appointment) %>');
Маршруты
appointments GET /appointments(.:format) appointments#index
POST /appointments(.:format) appointments#create
new_appointment GET /appointments/new(.:format) appointments#new
edit_appointment GET /appointments/:id/edit(.:format) appointments#edit
appointment GET /appointments/:id(.:format) appointments#show
PUT /appointments/:id(.:format) appointments#update
DELETE /appointments/:id(.:format) appointments#destroy
teachers GET /teachers(.:format) teachers#index
POST /teachers(.:format) teachers#create
new_teacher GET /teachers/new(.:format) teachers#new
edit_teacher GET /teachers/:id/edit(.:format) teachers#edit
teacher GET /teachers/:id(.:format) teachers#show
PUT /teachers/:id(.:format) teachers#update
DELETE /teachers/:id(.:format) teachers#destroy
notice_students POST /students/notice(.:format) students#notice
students GET /students(.:format) students#index
POST /students(.:format) students#create
new_student GET /students/new(.:format) students#new
edit_student GET /students/:id/edit(.:format) students#edit
student GET /students/:id(.:format) students#show
PUT /students/:id(.:format) students#update
DELETE /students/:id(.:format) students#destroy
I’m trying to create a record from a form. I’ve used railscast 136 as ground work. When I trying to submit I get a 500 error for missing partial. I’ve created the controller correlated javascript view but it is requesting a view with the same name as the model.
error message
Rendered appointments/create.js.erb (3.8ms) Completed 500 Internal
Server Error in 12msActionView::Template::Error (Missing partial appointments/appointment
with {:locale=>[:en], :formats=>[:js, :html], :handlers=>[:erb,
:builder, :coffee]}. Searched in: *
«/Users/gjores/Sites/Rails/verkstad_test/app/views» ):
1: $(‘#appointments’).append(‘<%= j render(@appointment) %>’); app/views/appointments/create.js.erb:1:in
_app_views_appointments_create_js_erb___2325925946390315228_70273089113920'
create’
app/controllers/appointments_controller.rb:16:in
Controller
def create
@appointment = Appointment.new(params[:appointment])
if @appointment.save
respond_to do |format|
format.html { redirect_to new_appointment_path, :notice => "Successfully created appointment." }
format.js
end
else
render :action => 'new'
end
end
appointments/new.html.erb
<div id="appointments">
<%= render 'shared/appointment_part' %>
</div>
<% title "New Appointment" %>
<table>
<% @students.each do |s| %>
<%= form_for @appointment, :remote => true do |f|%>
<%= f.error_messages %>
<tr>
<td><%= s.name %></td>
<td><%= f.label :week %></td>
<td><%= f.number_field :week %></td>
<td><%= f.label :teacher_id %></td>
<td><%= f.collection_select(:teacher_id, Teacher.all, :id, :name) %></td>
<%= f.hidden_field :student_id, :value => s.id %>
<td><%= f.submit %></td>
</tr>
<% end %>
<% end -%>
</table>
<p><%= link_to "Back to List", appointments_path %></p>
appointments/create.js.erb
$('#appointments').append('<%= j render(@appointment) %>');
Routes
appointments GET /appointments(.:format) appointments#index
POST /appointments(.:format) appointments#create
new_appointment GET /appointments/new(.:format) appointments#new
edit_appointment GET /appointments/:id/edit(.:format) appointments#edit
appointment GET /appointments/:id(.:format) appointments#show
PUT /appointments/:id(.:format) appointments#update
DELETE /appointments/:id(.:format) appointments#destroy
teachers GET /teachers(.:format) teachers#index
POST /teachers(.:format) teachers#create
new_teacher GET /teachers/new(.:format) teachers#new
edit_teacher GET /teachers/:id/edit(.:format) teachers#edit
teacher GET /teachers/:id(.:format) teachers#show
PUT /teachers/:id(.:format) teachers#update
DELETE /teachers/:id(.:format) teachers#destroy
notice_students POST /students/notice(.:format) students#notice
students GET /students(.:format) students#index
POST /students(.:format) students#create
new_student GET /students/new(.:format) students#new
edit_student GET /students/:id/edit(.:format) students#edit
student GET /students/:id(.:format) students#show
PUT /students/:id(.:format) students#update
DELETE /students/:id(.:format) students#destroy
Hi all,
I have a strange behavior on our Exchange Server. We have a program that invokes a CDOEX script code to create an appointment
on a user calendar inviting other users.
This was working for months until a few days ago.
The application has started giving us an error and then we isolate the problem, making an ASP script to reproduce the error.
So the error that is giving us is the following:
Sending appointment to http://OurExchangeServer/exchange/appmailbox@mycompany.com/Calendar
CDO.Appointment.1
error ‘80004005’
Unspecified error
/testcdo.asp, line 79
———————————————————
This is the line where it is giving the error:
call loAppointment.DataSource.SaveToContainer(«http://» & lcServer & «/exchange/» & lcorganizer
& «/Calendar»,,,,, lcuser , lcpass)
——————————————————————-
Can you please give me a clue on what can cause this? There was no changes in the server…
Our server is an Exchange Server 2003 Enterprise with SP2
Thank you very much in advance!
DB
——————————————————————
The ASP cdo Code that is behind is:
<% @ Language = VBScript %>
<% Response.Buffer = True %>
<% Response.Expires = -1 %>
<%
Dim lddatetime, lddateend, lcsubject, lclocation, lcbody
Dim loAppointment, lcUtcDateStart, lcUtcDateEnd, ldLocalDateStart, ldLocalDateEnd
dim loattendee, lcOrganizer, lcAttendee, loConfig
Dim lcserver, lcAccountname, lcpass, lcuser
lcOrganizer = «appmailbox@mycompany.com«
lcserver = «OurExchangeServer«
lcAccountname = «appmailboxuser«
lcpass = «******»
lcuser = «OurDomainappmailboxuser»
set loConfig = server.CREATEOBJECT(«CDO.Configuration»)
loConfig.Fields(«CalendarLocation») = «http://» & lcserver & «/Exchange/» +lcOrganizer
+ «/Calendar»
‘ loConfig.Fields(«http://schemas.microsoft.com/cdo/configuration/sendusing»)
= 2
loConfig.Fields(«http://schemas.microsoft.com/cdo/configuration/smtpserver»)
= lcserver
loConfig.Fields(«http://schemas.microsoft.com/cdo/configuration/smtpaccountname»)
= lcAccountname
‘ loConfig.Fields(«http://schemas.microsoft.com/cdo/configuration/smtpauthenticate»)
= 1
loConfig.Fields(«http://schemas.microsoft.com/cdo/configuration/sendusername»)
= lcuser
loConfig.Fields(«http://schemas.microsoft.com/cdo/configuration/sendpassword»)
= lcpass
loConfig.Fields(«http://schemas.microsoft.com/cdo/configuration/sendemailaddress»)
= lcOrganizer
loConfig.Fields(«http://schemas.microsoft.com/cdo/configuration/smtpusessl»)
= false
call loConfig.Fields.Update()
set loAppointment = server.CreateObject(«CDO.Appointment»)
set loAppointment.Configuration = loConfig
lcsubject = «test calendar subject»
lclocation = «room»
tcbody = «test calendar»
if 1=2 then
loAppointment.StartTime = cdate(«2010-08-31 13:00:00»)
loAppointment.EndTime
= cdate(«2010-08-31 14:00:00»)
loAppointment.Location
= «room 111»
loAppointment.Subject
= «test calendar subject»
loAppointment.AllDayEvent = false
loAppointment.textBody = «test»
lcAttendee = «attendee1@mycompany.com»
set loattendee = loAppointment.Attendees.Add
loattendee.isOrganizer = true
loattendee.Address = lcOrganizer
loattendee.Role = 0
‘ cdoRequiredParticipant
loattendee.Type = «Individual»
set loattendee = loAppointment.Attendees.Add
loattendee.isOrganizer = true
loattendee.Address = » attendee1@mycompany.com «
loattendee.Role = 0
‘ cdoRequiredParticipant
loattendee.Type = «Individual»
end if
response.write «Sending appointment to http://» & lcServer & «/exchange/» & lcorganizer & «/Calendar»
call loAppointment.DataSource.SaveToContainer(«http://» & lcServer & «/exchange/» & lcorganizer & «/Calendar»,,,,, lcuser , lcpass)
%>
Я создал форму создания записи на прием и форму бронирования записи на прием, когда бы я ни вошел в систему как врач или пользователь и попытался создать или забронировать запись на прием соответственно, он показывает мне ошибку после того, как я нажимаю копировать/вставить вид, чтобы узнать ошибку, которую я не получаю, пожалуйста, помогите мне. ниже приведена ошибка и код.
Request Method: GET
Request URL: http://127.0.0.1:8000/appointment/create-appointment/
Django Version: 3.2.7
Python Version: 3.9.6
Installed Applications:
['m1.apps.M1Config',
'authenticate_me.apps.LoginModuleConfig',
'appointment.apps.AppointmentConfig',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles']
Installed Middleware:
['django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware']
Traceback (most recent call last):
File "C:UsersAshrafAppDataLocalProgramsPythonPython39libsite-packagesdjangocorehandlersexception.py", line 47, in inner
response = get_response(request)
File "C:UsersAshrafAppDataLocalProgramsPythonPython39libsite-packagesdjangoutilsdeprecation.py", line 119, in __call__
response = self.process_response(request, response)
File "C:UsersAshrafAppDataLocalProgramsPythonPython39libsite-packagesdjangomiddlewareclickjacking.py", line 26, in process_response
if response.get('X-Frame-Options') is not None:
Exception Type: AttributeError at /appointment/create-appointment/
Exception Value: '__proxy__' object has no attribute 'get'
код:
class AppointmentCreateView(CreateView):
template_name = 'appointment/create-appointment.html'
form_class = CreateAppointmentForm
extra_context = {
'title': 'Post New Appointment'
}
success_url = reverse_lazy('appointment:home1')
@method_decorator(login_required(login_url=reverse_lazy('authenticate_me:login')))
def dispatch(self, request, *args, **kwargs):
if not self.request.user.is_authenticated:
return reverse_lazy('authenticate_me:login')
if self.request.user.is_authenticated and self.request.user.is_doctor:
return reverse_lazy('authenticate_me:login')
return super().dispatch(self.request, *args, **kwargs)
def form_valid(self, form):
form.instance.user = self.request.user
return super(AppointmentCreateView, self).form_valid(form)
def post(self, request, *args, **kwargs):
self.object = None
form = self.get_form()
if form.is_valid():
return self.form_valid(form)
else:
return self.form_invalid(form)
и для книжного назначения у меня был похожий код, только с другими формами и таблицей.
models.py:
class Appointment(models.Model):
department =(
('Dentistry',"Dentistry"),
('gynaecology',"gynaecology"),
('obstetrics',"obstetrics"),
('neurology',"neurology"),
('cardiology',"cardiology"),
('orthopaedics',"orthopaedics"),
(' eye-care'," eye-care"),
)
user = models.ForeignKey(User,on_delete=models.CASCADE)
full_name = models.CharField(max_length=100)
image = models.ImageField(null=True, blank=True)
location = models.CharField(max_length=100)
start_time = models.CharField(max_length=10)
end_time = models.CharField(max_length=10)
hospital_name = models.CharField(max_length=100)
department = models.CharField(choices=department, max_length=100)
qualification_name = models.CharField(max_length=100)
created_at = models.DateTimeField(default=timezone.now)
def __str__(self):
return self.full_name
class BookAppointment(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
appointment = models.ForeignKey(Appointment, on_delete=models.CASCADE)
full_name = models.CharField(max_length=100)
message = models.TextField()
phone_number = models.CharField(max_length=120)
date = models.DateTimeField(default=timezone.now)
def __str__(self):
return self.full_name
У меня была проблема в python manage.py migrate
модели в приложении appointment не мигрировали, поэтому я перенес свои модели в приложение authenticate, и оно создало db
Вернуться на верх
Set olAppItem = olApp.CreateItem(olAppointmentItem)
Assuming you’re late-binding the Outlook library, the constant olAppointmentItem
is not defined, so if you specify Option Explicit
at the top of the module the VBE will highlight if as undeclared.
I copied your code into ThisWorkbook
in an empty workbook, and ran Rubberduck code inspections (disclaimer: I manage that open-source project; it’s completely free, and it’s improving every day).
These results are particularly relevant to your problem:
Error: Option Explicit is not specified in 'ThisWorkbook' - (Book3) VBAProject.ThisWorkbook, line 1
Error: Variable 'olAppointmentItem' is used but not assigned - (Book3) VBAProject.ThisWorkbook, line 16
Error: Variable 'olFree' is used but not assigned - (Book3) VBAProject.ThisWorkbook, line 23
Error: Local variable 'olAppointmentItem' is not declared - (Book3) VBAProject.ThisWorkbook, line 16
Error: Local variable 'olFree' is not declared - (Book3) VBAProject.ThisWorkbook, line 23
The underlying value of olFree
in the Outlook library is 0
, so that’s not a big deal as far as run-time errors are concerned.
However olAppointmentItem
not being defined is pretty big: you think you’re working against an AppointmentItem
object, but because the underlying value of olAppointmentItem
in the Outlook library is 1
and you’re providing a 0
, the runtime type of olAppItem
is actually a MailItem
.
And because a MailItem
doesn’t have a Location
property, attempting to set it will raise that run-time error 438 you’re getting — «object doesn’t support this property or method».
Therefore, you should be creating the olAppItem
like this:
Set olAppItem = olApp.CreateItem(1)
Or, define the olAppointmentItem
constant:
Const olAppointmentItem As Long = 1
Set olAppItem = olApp.CreateItem(olAppointmentItem)
Or, reference the Outlook object model (Tools > References…), replace As Object
with the actual types you want to be using (olApp As Outlook.Application
, olAppItem As AppointmentItem
), and then the olAppointmentItem
and olFree
constants will be taken from the Outlook library.
I’ll skip the other inspection results because they’re not relevant to that specific question, but you’ll notice a number of dead variables there.
I’ve created custom connector using the Booking API. When trying to create an appointment, I get the following error:
{
«error»: {
«code»: «InvalidModel»,
«message»: «changes: Cannot create an abstract class.»,
«innerError»: {
«date»: «2022-03-24T04:03:32»,
«request-id»: «8bd7b2c5-e8bc-4077-affa-e7029261cce4»,
«client-request-id»: «8bd7b2c5-e8bc-4077-affa-e7029261cce4»
}
}
}
This error only occurs when I add an existing customer (customerid) to the appointment but if I let the customerid blank, the flow works. Unfortunately, it is useless since I need the appointment to include the customer.
Any help is appreciated…
VB Code:
Set myItem = myOlApp.CreateItem(olAppointmentItem)
myItem.MeetingStatus = olMeeting
myItem.Subject = «Strategy Meeting»
myItem.Location = «Conference Room B»
myItem.Start = #9/24/2002 1:30:00 PM#
myItem.Duration = 90
My java code:
ActiveXComponent axOutlook = new ActiveXComponent(«Outlook.Application»);
// 1 AppointmentItem
Dispatch appointmentItem = Dispatch.call(axOutlook, «CreateItem», 1).toDispatch();
Dispatch.call(appointmentItem, «Subject»).putString(«Test Add Appointment From Java»);
Dispatch.call(appointmentItem, «Location»).putString(«Office»);
Dispatch.call(appointmentItem, «Start»).putDate(new Date();
Dispatch.call(appointmentItem, «Duration»).putLong(60L);
Dispatch.call(appointmentItem, «Body»).putString(«Hello! Can you see me?»);
Dispatch.call(appointmentItem, «Importance»).putInt(2); //2 high。
Dispatch.call(appointmentItem, «Save»);
=====================================
Run above java code successfully, but it generate a blank appointment—no subject,no location,no body,and default duration and so on.
So, What’s wrong with my code? Thanks!
The super awesome workflow tool Nintex comes with many inbuilt actions, in-fact you can find solution to most of your problems here. You just need to configure them.
“Create Appointment” Action under User Interaction section is one of them.
I had this requirement to create an appointment/meeting using the workflow. I got this straight-forward action – Create appointment. The configuration goes like this
Ensure that the URL’s (“https://[Exchange Server]/ews/exchange.asmx”) [Exchange Server] is replaced by your organization’s exchange server’s URL.
And you’re done with the configuration. Publish your workflow and create appointments using it.
But what is it, I keep getting this error in my workflow – The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.
So, some research led to my below findings
This error is caused by the SSL certificate on the destination web service not being valid. Three possible reasons being:
• The certificate was generated by an untrusted source
• The certificate has expired
• The certificate name does not match the URL used to access the Web service
You can check the existing trust certificates in Central Administration > Security > Manage Trust
Now to solve this error, you need to install the root certificates into ‘SharePoint Root Authority’ as SharePoint out-of-the-box only trusts its own self signed certificate called ‘local’. To do this, run this SharePoint power shell command – which will add all the root certificates on the local machines into SharePoint:
foreach ($cert in (Get-ChildItem cert:LocalMachineRoot)) { if (!$cert.HasPrivateKey) { New-SPTrustedRootAuthority -Name $cert.Thumbprint -Certificate $cert } }
Now it is done!
You can check the new trust certificates that have been added now again in Central Administration > Security > Manage Trust
Yoohooo!!! Now the appointment gets created.
You can check your outlook calendar, it is blocked. Also, the recipients will receive the email.
Таблица – Общие сведения
Код операции: | CreateAppointment |
Наименование операции: | Создание записи пациента на прием к врачу |
Назначение операции: | Позволяет создать заявление записи на прием |
По входным параметрам РМИС должна создать запись на прием, если время свободно.
Таблица – Входные данные: CreateAppointment
№ | Код параметра | Описание параметра | Обязательность | Способ заполнения/Тип | Комментарий |
1 | Session_ID | Идентификатор сессии | + | Session_ID: string | |
2 | Slot_Id | Идентификатор слота | + | Slot_Id:guid | Заполняется, если данные были предоставлены в ответе метода GetScheduleInfo |
Таблица — Выходные данные: CreateAppointment
№ | Код параметра | Описание параметра | Обязательность | Способ заполнения/Тип | Комментарий |
1 | Session_ID | Идентификатор сессии | + | Session_ID: string | |
2 | Book_Id _Mis | Идентификатор записи на прием в МИС | + | Book_Id_Mis: string | |
3 | Status_Code | Код статуса записи | + | Status_Code: enum | 0 – ОК, 1 – Ошибка, 2-7 (описание приведено вТаблица ) |
4 | Comment | Состояние статуса записи | + | Comment:string | В случае если значение Status_Code = 2-7, поле заполняется обязательно. Соответствия описаны в Таблица |
5 | Slot_Id | Идентификатор слота | + | Slot_Id:guid | |
6 | VisitTime | Дата и время приема | + | VisitTime: Datetime |
Описание кодов ошибок
Коды ошибок, возникающие при вызове метода сервиса , приведены в таблице (Таблица ).
Таблица — Коды ошибок для метода CreateAppointment
Значение поля Code | Значение поля Comment | Описание события |
2 | Извините, запись невозможна. Время уже занято другим пациентом. Выберите другое время. | Отказ. Время занято |
3 | Извините, запись невозможна. Пациент уже записан к врачу <ФИО врача> в кабинет <название кабинета> на услугу <название услуги> в этот день: <дата записи в формате дд.мм.гггг чч:мм>. Полную информацию об этой записи Вы можете посмотреть в Личном кабинете. | Пациент уже записан к данному специалисту на указанную услугу в этот день |
4 | Извините, запись невозможна. Данная услуга посмертно не оказывается. | Услуга не оказывается посмертно |
5 | Извините, запись невозможна. Пациент уже записан на это время к другому специалисту. Выберите другое время. | Пациент уже записан на это время к другому специалисту |
6 | Извините, запись невозможна. Выбранное время доступно только для записи пациентов в возрасте {0}. Выберите другое время. | Выбранное время доступно для записи пациентов в определенном возрасте. Ограничение на возраст |
7 | Извините, запись невозможна. Время начала приема уже прошло. Выберите другое время. | Время начала приема уже прошло |
Метод CancelAppointment
Таблица – Общие сведения
Код операции: | CancelAppointment |
Наименование операции: | Отмена ранее созданной записи на прием к врачу |
Назначение операции: | Позволяет отменить ранее поданное заявление записи на прием |
По входным параметрам РМИС должна отменить ранее созданную запись на прием.
Таблица – Входные данные:CancelAppointment
№ | Код параметра | Описание параметра | Обязательность | Способ заполнения/Тип | Комментарий |
1 | Book_Id _Mis | Идентификатор записи на прием в РМИС | + | Book_Id _Mis: string |
Таблица – Выходные данные:CancelAppointment
№ | Код параметра | Описание параметра | Обязательность | Способ заполнения/Тип | Комментарий |
1 | Book_Id _Mis | Идентификатор записи на прием в МИС | + | Book_Id _Mis: string | |
2 | Status_Code | Код статуса отмены | + | Status_Code: enum | 0 – успешное завершение операции; 1 – внутренняя ошибка системы, 2 – отказ в проведении операции |
3 | Comment | Состояние статуса отмены | + | Comment:string | В случае если значение Status_Code = 2, то поле заполняется обязательно с указанием причины отказа |
WSDL
К данному документу приложены WSDL файлы с описанием сервиса и всех используемых в нем типов данных.
The representation of a GUID, generally the id of an element.
Идентификация пациентаИдентификатор сессииИнформация по анализуПолучение списка МО, доступных пользователю для записиИдентификатор сессииСписок МО, доступных пользователю для записиИдентификатор сессииСписок МОСписок МОИдентификатор МО\подразделенияНаименование МОАдрес МОКонтактный телефон МО (регистратура)ОшибкаИнформация об ошибкеОКпо запросу данных не найденовнутренняя ошибка системыистекло время ожидания сессииТекстовое описание ошибкиСписок МО, доступных пользователю для записиИдентификатор сессииСписок специальностей или услугПараметры специальности или услугиИдентификатор специальности или услугиНаименование специальности или услугиОшибкаИнформация об ошибкеОКпо запросу данных не найденовнутренняя ошибка системыистекло время ожидания сессииТекстовое описание ошибкиСписок доступных для пациента ресурсов выбранной ранее медицинской специальности или услугиИдентификатор сессииСписок ресурсовПараметры ресурсаИдентификатор ресурсаНаименование ресурсаОшибкаИнформация об ошибкеОКпо запросу данных не найденовнутренняя ошибка системыистекло время ожидания сессииТекстовое описание ошибкиРасписание прима и свободного времени для записи на прием выбранного ресурсаИдентификатор сессииРасписание ресурсаПараметры слотовИдентификатор слотаДата и Время приемаОшибкаИнформация об ошибкеОКпо запросу данных не найденовнутренняя ошибка системыистекло время ожидания сессииТекстовое описание ошибкиРезультат создания записи на прием к врачуИдентификатор сессииИдентификатор записи на прием в РМИСОКОшибкаОтказ. Время занятоПациент уже записан к данному специалисту на указанную услугу в этот деньУслуга не оказывается посмертноПациент уже записан на это время к другому специалистуВыбранное время доступно для записи пациентов в определенном возрасте. Ограничение на возраст.Время начала приема уже прошло.Состояние статуса записиИдентификатор слотаДата и Время приемаРезультат отмены записи на прием к врачуИдентификатор записи на прием в РМИСОКошибкаотказСостояние статуса отменыЗапрос на получение списка профилей услуг, оказываемых в выбранной МОИдентификатор сессииИдентификатор МОЗапрос на получение ресурсов по выбранному профилюИдентификатор сессииИдентификатор выбранной специальности или услугиЗапрос на получение графика работы выбранного ресурсаИдентификатор сессииИдентификатор ресурсаДата, с которой необходимо начать формировать расписаниеДата, по которую необходимо формировать расписаниеВремя, с которого необходимо формировать расписаниеВремя, по которое необходимо формировать расписаниеЗапрос на запись пользователя на приемИдентификатор сессииИдентификатор слотаЗапрос на отмену записи пользователя на приемИдентификатор записи на прием в РМИСЛичные данные пациентаНомер полиса ОМС пациентаСерия полиса ОМС пациентаСНИЛС пациентаИмя пациентаФамилия пациентаОтчество пациентаstubПол пациентаe-mail адрес заявителяТелефон заявителяРезультат идентификации пациентаИдентификатор сессииИдентификатор пациента в РМИСОшибкаИнформация об ошибкеОКпо запросу данных не найденовнутренняя ошибка системыистекло время ожидания сессиинайдено более одного пациента с таким даннымиТекстовое описание ошибки
-
12-06-2017, 09:12 AM
#1
Registered User
Create appointment: Method * of object * Failed / Runt time error
Hi, I have a problem that stops us from sending appointments to our technichians. I have a macro written in Excel 2016 that create appointments in Outlook (and a lot of other things) which works fine on my computer and others. Now one person has a new computer (also Excel 2016) where everything works except the red rows below.
With oFolder
Set olApt = oApp.CreateItem(olAppointmentItem)
olApt.MeetingStatus = olMeeting
With olApt
.Start = Cells(6, 3).Value + Cells(8, 3)
.End = Cells(6, 3) + DateAdd(«n», Cells(10, 3).Value, Cells(8, 3))
.Subject = SR + » » + Cells(12, 6) + » » + Cells(8, 6).Location = Cells(10, 6)
.Body = Cells(6, 6) + vbNewLine + vbNewLine + Cells(16, 3)
.BusyStatus = olFree
.ReminderMinutesBeforeStart = Cells(12, 3)
.ReminderSet = True‘ get the recipients
Dim RequiredAttendee, OptionalAttendee, ResourceAttendee As Outlook.Recipient
Set RequiredAttendee = .Recipients.Add(Cells(14, 3).Value)
RequiredAttendee.Type = olRequired
‘Display ‘Ta bort denna om bokningen ska skickas automatiskt
.Send
.Save
.Move oFolder
End WithWe get an error message:
«Run-time error ‘-2147417851 (80010105)’:
Method ‘Location’ of object ‘_AppointmentItem’ failedI have googled and I found a lot of matches but havn’t been able to solve it. Does anybody know what I can do or have any suggestions?
Thank you in advance,
Johan
-
12-06-2017, 09:18 AM
#2
Re: Create appointment: Method * of object * Failed / Runt time error
Hi,
What’s the actual value of Cells(10, 6) when the code is running? (tested via debug.print rather than by what you think it should be )
Don
Please remember to mark your thread ‘Solved’ when appropriate.
-
12-06-2017, 09:52 AM
#3
Registered User
Re: Create appointment: Method * of object * Failed / Runt time error
Thanks for you reply. I added the code Debug.Print Cells(10, 6) above .Location = Cells(10, 6). When I step through the immediate window says e.g. «Bollbrogatan 1 257 33 Helsingborg» which is the correct street and postal address.
-
12-06-2017, 10:03 AM
#4
Re: Create appointment: Method * of object * Failed / Runt time error
Are you testing that on the machine where the code fails?
-
12-06-2017, 10:06 AM
#5
Registered User
Re: Create appointment: Method * of object * Failed / Runt time error
Very strange. In one of my hundreds of googling I found someone who wrote that if they register the string as a variable and then add it to location (or the To-address in that example) it would work. And actually it did. I added before the «With»:
Location = Cells(10,6)
and then in the With:
.Location = Location
And it worked!
If anyone knows why that matters I would be pleased to now. For me it should be the same thing but obviously it’s not.
-
12-06-2017, 10:09 AM
#6
Re: Create appointment: Method * of object * Failed / Runt time error
That is indeed strange! Out of curiosity, does this also work
-
12-07-2017, 07:05 AM
#7
Registered User
Re: Create appointment: Method * of object * Failed / Runt time error
You’re a genius! Yes, that also worked. So Excel didn’t interpret my address in the cells as strings? The cells are all formatted as General. Your conversion did the trick.
Я пытаюсь создать запись из формы. Я использовал railscast 136 как наземную работу. Когда я пытаюсь представить, я получаю 500 ошибок для частичного отсутствия. Я создал коррелированный просмотр javascript контроллера, но он запрашивает представление с тем же именем, что и модель.
сообщение об ошибке
Представленные встречи /create.js.erb(3,8 мс) Завершено 500 внутренних Ошибка сервера в 12 мс
ActionView:: Template:: Error (Отсутствие частичных назначений/назначение с {: locale = > [: en],: formats = > [: js,: html],: handlers = > [: erb,: builder,: coffee]}. Поиск: * «/Пользователи/gjores/Sites/Rails/verkstad_test/app/views» ): 1: $(‘# встречи’). Append (‘<% = j render (@appointment)% > ‘); Приложение/просмотров/назначения/create.js.erb: 1: в
_app_views_appointments_create_js_erb___2325925946390315228_70273089113920'
создать
app/controllers/appointments_controller.rb:16:in
контроллер
def create
@appointment = Appointment.new(params[:appointment])
if @appointment.save
respond_to do |format|
format.html { redirect_to new_appointment_path, :notice => "Successfully created appointment." }
format.js
end
else
render :action => 'new'
end
end
<сильные > назначения /new.html.erb
<div id="appointments">
<%= render 'shared/appointment_part' %>
</div>
<% title "New Appointment" %>
<table>
<% @students.each do |s| %>
<%= form_for @appointment, :remote => true do |f|%>
<%= f.error_messages %>
<tr>
<td><%= s.name %></td>
<td><%= f.label :week %></td>
<td><%= f.number_field :week %></td>
<td><%= f.label :teacher_id %></td>
<td><%= f.collection_select(:teacher_id, Teacher.all, :id, :name) %></td>
<%= f.hidden_field :student_id, :value => s.id %>
<td><%= f.submit %></td>
</tr>
<% end %>
<% end -%>
</table>
<p><%= link_to "Back to List", appointments_path %></p>
<сильные > назначения /create.js.erb
$('#appointments').append('<%= j render(@appointment) %>');
Маршруты
appointments GET /appointments(.:format) appointments#index
POST /appointments(.:format) appointments#create
new_appointment GET /appointments/new(.:format) appointments#new
edit_appointment GET /appointments/:id/edit(.:format) appointments#edit
appointment GET /appointments/:id(.:format) appointments#show
PUT /appointments/:id(.:format) appointments#update
DELETE /appointments/:id(.:format) appointments#destroy
teachers GET /teachers(.:format) teachers#index
POST /teachers(.:format) teachers#create
new_teacher GET /teachers/new(.:format) teachers#new
edit_teacher GET /teachers/:id/edit(.:format) teachers#edit
teacher GET /teachers/:id(.:format) teachers#show
PUT /teachers/:id(.:format) teachers#update
DELETE /teachers/:id(.:format) teachers#destroy
notice_students POST /students/notice(.:format) students#notice
students GET /students(.:format) students#index
POST /students(.:format) students#create
new_student GET /students/new(.:format) students#new
edit_student GET /students/:id/edit(.:format) students#edit
student GET /students/:id(.:format) students#show
PUT /students/:id(.:format) students#update
DELETE /students/:id(.:format) students#destroy
I’ve created custom connector using the Booking API. When trying to create an appointment, I get the following error:
{
«error»: {
«code»: «InvalidModel»,
«message»: «changes: Cannot create an abstract class.»,
«innerError»: {
«date»: «2022-03-24T04:03:32»,
«request-id»: «8bd7b2c5-e8bc-4077-affa-e7029261cce4»,
«client-request-id»: «8bd7b2c5-e8bc-4077-affa-e7029261cce4»
}
}
}
This error only occurs when I add an existing customer (customerid) to the appointment but if I let the customerid blank, the flow works. Unfortunately, it is useless since I need the appointment to include the customer.
Any help is appreciated…